Próximo / anterior Links na mesma categoria

4

Eu tenho derramado sobre esse problema que parece realmente pequeno, mas não consigo resolvê-lo. Eu estou tentando fazer links próximos / anteriores que só apontam para a categoria em que o post está. Isto é para um tipo de post personalizado chamado portfólio. Este é o código que tenho atualmente na página do portfólio de conteúdo:

<?php next_post_link( '<div class="nav-previous">%link</div>', '<span class="meta-nav">' . _x( '←', 'Next post link', 'morphology' ) . '</span> %title'); ?>
<?php previous_post_link( '<div class="nav-next">%link</div>', '%title <span class="meta-nav">' . _x( '→', 'Previous post link', 'morphology' ) . '</span>'); ?>

Eu já vi algumas variações dos itens a seguir, mas não consigo editá-lo para que ele coopere:

<?php next_post_link( '%link', 'Next post in category', TRUE ); ?>

Algum conselho sobre como fazer isso funcionar ou o que estou fazendo errado?

Atualização: Eu ainda não consegui uma boa solução para isso, e nada que eu tentei dos outros hits do Google parece estar funcionando. Assim que eu disser que in_same_term = true, o link desaparece completamente. Com base na resposta abaixo, este é o código que estou usando:

<?php next_post_link( 
'<div class="nav-previous">%link</div>', 
'<span class="meta-nav">' . _x( '←', 'Next post link', 'morphology' ) . '</span> %title', true, array(), 'portfolio'); ?>
    
por Echo Martin 29.07.2018 / 05:24

1 resposta

3

previous_post_link leva 5 params, mas você usa apenas 2 deles.

Vamos dar uma olhada em outros 3:

  
  • in_same_term (booleano) (opcional) Indica se o post anterior deve   estar dentro do mesmo termo de taxonomia da postagem atual. Se definido para   'true', apenas as mensagens do termo de taxonomia atual serão exibidas.   Se a postagem estiver no pai e na subcategoria ou em mais de um   prazo, o link post anterior levará ao post anterior em qualquer um dos   esses termos. verdadeiro falso Padrão: falso
  •   
  • excluded_terms (string / array)   (opcional) Array ou uma lista separada por vírgula de IDs de termos numéricos de   qual o próximo post não deve ser listado. Por exemplo, matriz (1, 5) ou   '1,5'. Este argumento costumava aceitar uma lista de IDs separados por 'e',   isso foi preterido no WordPress 3.3 Padrão: Nenhum
  •   
  • taxonomia (string)   (Opcional) Taxonomia, se $ in_same_term for verdadeiro. Adicionado no WordPress 3.8.   Padrão: 'category'
  •   

Então, se você quiser navegar por postagens da mesma categoria, o terceiro parâmetro deve ser definido como verdadeiro.

<?php
    previous_post_link(
        '<div class="nav-next">%link</div>',
        '%title <span class="meta-nav">' . _x( '→', 'Previous post link', 'morphology' ) . '</span>',
         true
    );
?>

E se o seu portfólio usa taxonomia personalizada, você deve apontar isso no último parâmetro:

<?php
    previous_post_link(
        '<div class="nav-next">%link</div>',
        '%title <span class="meta-nav">' . _x( '→', 'Previous post link', 'morphology' ) . '</span>',
         true,
         array(),
         'my_custom_taxonomy'
    );
?>

Funciona da mesma forma com next_post_link .

    
por Krzysiek Dróżdż 29.07.2018 / 08:37