Em WordPress Eu estou usando ambos the_permalink()
e get_permalink()
funções, mas não posso obter qualquer diferença na saída de ambas as funções. Qual é a diferença entre as duas funções?
Em WordPress Eu estou usando ambos the_permalink()
e get_permalink()
funções, mas não posso obter qualquer diferença na saída de ambas as funções. Qual é a diferença entre as duas funções?
Respostas:
the_permalink
faz eco do link permanente da postagem atual para o frontend.
get_permalink
no entanto, retorna-o como uma variável, mas não faz eco. Você também pode passar um ID da postagem para o link permanente de outra postagem.
the_permalink
é equivalente a:
echo get_permalink();
O que é muito próximo do que realmente faz. Esta é a implementação de the_permalink
:
function the_permalink() {
echo esc_url( apply_filters( 'the_permalink', get_permalink() ) );
}
Se você olhar o Codex do WordPress , verá que ele get_permalink()
existe para uso fora do loop. the_permalink()
é para uso dentro do loop. Essa é a maneira mais fácil de ver.
the_permalink()
é usado em loops de posts, como the_title()
. Leia mais sobre loops no The Loop .
get_permalink()
pode ser usado em loops ou fora dos loops. Nos loops, a função retorna (não faz eco) o link permanente de postagem atual. Mas loops externos, requer um ID da postagem.
Por exemplo:
echo get_permalink( 1 );
Isso exibirá o link permanente da página atual:
echo get_permalink();