Campos personalizados avançados do WordPress Pergunta: the_field vs get_field

Um usuário perguntou ?

Estou aprendendo WP usando o ambiente Local by Flywheel e usando este plugin pela primeira vez, então dê uma olhada antes de arrancar os cabelos.

Observe que defino o formato de data do WP para o mesmo que o formato de data do plug-in ACF, ou seja, ‘d/m/y’.

código abaixo quase empregos. Se estou lendo isso certo, pois the_field tem um eco incorporado, ele deve imprimir o valor de ‘event_date’ como um argumento de string

$eventDate = new DateTime(the_field('event_date'));
echo $eventDate->format('M');

Quando digo algo assim, quis dizer que não erra, mas produz isso: a data do evento + o mês de publicação, não é isso que eu quero ou espero. A única maneira de obter a data do evento na forma de um mês é usar este código…

$eventDate = new DateTime(get_field('event_date', false, false));
echo $eventDate->format('M');

O código abaixo não. Novamente, se eu ler isso corretamente, obterei um valor de retorno contendo a data salva em ‘event_date’. Eu realmente não vejo qual é o problema aqui.

$eventDate = new DateTime(get_field('event_date'));
echo $eventDate->format('M');

OUTROS APLICATIVOS:

PRÓXIMOS EVENTOS ERRO FATAL: MELHOR EXCEÇÃO: DETALHES :: __ BUILD(): NÃO ANALISE TIME STRING (19/09/2019) PERMANENTE 0 (1): RECURSOS INDEPENDENTES EM /APP/PUBLIC/WP-CONTENT/THEMES / MYTHEM FRONT -PÁGINA.PHP: 34

Por documento: the_field(); Intuitiva e poderosa, esta função pode ser usada para gerar o valor de qualquer campo de qualquer lugar. Observe que esta função é a mesma que get_field() echo;

Além disso, quando usei isso no resto da minha página como teste, não imprimiu nada?
<h1><?php the_field('event_date'); ?></h1>

Este tópico foi modificado 1 ano, 12 meses atrás por. Este tópico foi modificado 1 ano, 12 meses atrás por. Este tópico foi modificado 1 ano, 12 meses atrás por.

(@elliotcondon)

1 ano, 11 meses atrás

Olá Gus.

Ao carregar um valor para usar dentro de outra função, você vai querer usar a função get_field(). Isso retorna o valor em vez de sua saída.

Não sei por que seu código falha, mas a sugestão será registrada no erro do PHP. Certifique-se de pesquisar esse erro online.

Será uma boa ideia verificar se o valor de retorno é um fio e não um resultado vazio. Algo assim faria:


$value = get_field('event_date');
if( $value ) {
    // Do something.
}

(@gusgf)

1 ano, 11 meses atrás

Obrigado pela ajuda, essa explicação resolve meu tipo de entendimento.

(@zakyntinos)

1 ano, 6 meses atrás

Para outros usuários, se você ainda tiver a mesma dúvida, minha solução foi alterar o padrão “Formato de retorno” na minha Data de Saída (CF), na seção Editar Grupo de Campos de (por exemplo). “18/07/2019” a “20190718”. Continue codificando! ?

Isto foi útil?

0 / 0

Deixe uma resposta 0

O seu endereço de email não será publicado. Campos obrigatórios são marcados *