é possível obter o next_post_link


9

Encontrei um problema ao usar a função next_post_link (). Parece que esta função ecoa automaticamente, por motivos de posição, preciso que apenas retorne o link. Existe alguma função ou solução disponível que eu possa usar para alcançar esse resultado?

Respostas:



2

Se você der uma olhada na fonte, next_post_linké apenas um invólucro adjacent_post_link.

Infelizmente, essa função não assume nenhuma forma de parâmetro 'echo'; portanto, você precisará replicar o código em sua própria função e retornar o valor ou capturá-lo em um buffer de saída;

ob_start();
next_post_link();
$next_post_link = ob_get_clean();

1

Na verdade, sim: basta usar get_next_posts_link(), usando os mesmos argumentos.

A next_posts_lin()função simplesmente ecoa o valor retornado de get_next_posts_link().

EDITAR

Erm, deixa pra lá. Eu li mal o nome da função.

Você poderia usar get_next_post(), que retorna um objeto de postagem; você pode obter o link permanente do parâmetro do objeto de ID retornado:

$nextpost = `get_next_post( $args )`;
$nextpostid = $nextpost->ID;
$nextpostlink = get_permalink( $nextpostid );
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.