Es que es así como funciona WordPress, como tú pides, eso lo hará un plugin o el tema. Prueba a activar un tema por defecto de WordPress, como Twenty Nineteen.
Vamos, que si tú accedes a una url del tipo:
misitio.com/category/articulos1/
Y pulsas en la paginación para ir a la página 2 la url será esta:
misitio.com/category/articulos1/page/2/
Y te muestra solo artículos de esa categoría, otros, los más antiguos que los de la primera página.
WordPress funciona siempre así, sin salirse de la categoría.
Iniciador del debate
bertor
(@bertor)
Hola @fernandot, tienes que disculpar pero no entiendo exactamente lo que quieres decir. Tengo que usar un plugin o theme especial, o es el comportamiento por defecto? me explico
Si dentro de categoría A tengo los artículos: A1, A2 y A3
Y en la categoría B, tengo los artículos: B1, B2 y B3
La paginación, dependiendo de cuál sea el último, los mostrará seguidos. No me refiero a la categoría en si, que ahí si que salen los que tienen que salir. Lo acabo de probar con el Twenty Sixteen
-
Esta respuesta fue modificada hace 5 años, 10 meses por
bertor.
Pues igual soy yo el que no te he entendido a ti. ¿Podrías poner un ejemplo? porque no has puesto ni tu web para poder ver lo que cuentas
¿Por casualidad te refieres a la navegación hacía siguiente artículo o anterior?
Eso no es paginación.
Iniciador del debate
bertor
(@bertor)
Hola @fernandot, efectivamente es lo que apunta @lgrusin, me refiero a ese comportamiento. Pensaba que eso también era la paginación…
Dentro de la categoría X, si nos ponemos a pasar de artículos (siguiente/anterior), nos saldrán también los de categoría Y,Z… me parece curioso que este comportamiento sea así por defecto en WordPress.
Ah, es que eso es navegación por fecha nada más, no tiene en cuenta ningún otro argumento.
Entonces lo que tienes que hacer es modificar las funciones de navegación get_the_post_navigation
, o previous_post_link
y next_post_link
con el argumento in_same_term
, como se explica en la referencia que te he enlazado de cada caso.
Crea un tema hijo, copia el(los) archivo(s) que contenga(n) en tu tema las funciones de navegación (seguramente single.php, pero puede ser otro depende del tema) y añade el argumento a la función que use de las de arriba.
Iniciador del debate
bertor
(@bertor)
Hola @fernandot, disculpa la demora, ya han pasado unos meses. He visto en tu blog un artículo hablando sobre este tema pero no lo he logrado solucionar. El autor del theme me dice que las funciones están en el content.php
He llegado hasta aquí (faltaría poner la función con el get_next_post):
// Single pagination
$next_post = get_next_post();
$prev_post = get_previous_post();
<?php if ( $prev_post ) : ?>
<a class="previous-post" href="<?php echo esc_url( get_permalink( $prev_post->ID ) ); ?>">
<span class="arrow">
<img aria-hidden="true" src="<?php echo get_template_directory_uri(); ?>/assets/images/icons/arrow-left.svg" />
<span class="screen-reader-text"><?php _e( 'Previous post:', 'koji' ); ?> </span>
</span>
<span class="title"><?php echo wp_kses_post( get_the_title( $prev_post->ID ) ); ?></span>
</a>
<?php endif; ?>
Y ya se me escapa de mis conocimientos… poder aplicar los argumentos, no entiendo como funcionan aquí.
Yo creo que eso que pides ya lo tienes. Entra en una categoría y dale a Siguiente página o Página anterior, te saldrán únicamente los artículos de esa categoría.
Iniciador del debate
bertor
(@bertor)
Hola @lgrusin, si entramos en este enlace donde hay dos artículos, en cualquiera de ellos, podemos acceder a otras categorías.
Ya, pero eso es diferente a lo que preguntabas. Eso es el widget que has añadido a la barra lateral.
1 – Para que funcione la paginación, en el menú Apariencia – Paginación, debes marcar la última opción ‘Enlaces a la página anterior y siguiente’
2 – Las categorías se muestran en la barra lateral, ya sea mediante el widget de categorías o si las has añadido al menú.
Si no quieres ver las categorías en la barra lateral cuando estés navegando por las categorías habría que modificar algunas cosas del tema creando un tema hijo.
Iniciador del debate
bertor
(@bertor)
No, no me refiero al menú. Me refiero a que dentro de esta categoría, solo tenemos dos artículos, pero si entro dentro de uno, puedo seguir navegando por artículos de otras categorías.
Es decir, dentro de de las 17 categorías que están en el menú dentro de «Tódalas parroquias», solo pueda navegar por cada categoría, ya que para eso he creado una superior que las agrupa todas y así no mezclar la navegación cuando entras en una.
Entiendo, pues tal como dice @fernandot en el código que has puesto del archivo content.php sustituye:
// Single pagination
$next_post = get_next_post();
$prev_post = get_previous_post();
por
// Single pagination
$next_post = get_next_post('true');
$prev_post = get_previous_post('true');
Ten en cuenta que tienes artículos con varias categorías, al algún momento se puede salir de la categoría inicial si solo navegas desde los artículos.
Deberías hacer un tema hijo porque perderás estos cambios cuando actualices el tema.