Diferença entre as funções the_permalink () e get_permalink ()


9

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:


16

the_permalink faz eco do link permanente da postagem atual para o frontend.

get_permalinkno 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() ) );
}

3
Isso significa que todas as funções como the_ID () e get_ID () também têm as mesmas diferenças como esta. Desculpe, mas eu sou novo para wordpress é por isso que pedir
AliasgerSW

@AliasgerSW esse é o padrão, existem algumas exceções, mas geralmente é assim #
Nicolai

@AliasgerSW em caso de dúvida, veja o código. QueryPosts é um ótimo site para procurar o código fonte das funções do WordPress.
shea

@ AliasgerSW é feito por nossos próprios @Rarst
shea

@shea QueryPosts foi aposentado. : - (\
Eu sou a pessoa mais estúpida

3

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.


pode ser a maneira mais fácil de olhar para ele, mas não um muito completo
Nicolai

Com certeza, a resposta do Tom J Nowell ♦ é muito mais concisa. Muito melhor e bem explicado :-)
Matt Real

-1

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();

11
na verdade, ele não requer um ID fora do laço
Nicolai
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.