Mostrar todos los post de la categoría

  • Autor Autor rafadizeosp
  • Fecha de inicio Fecha de inicio
Estado

🔒 Este tema está cerrado para nuevas respuestas.

⏰ Solo el creador del tema puede solicitar la reapertura de sus propios temas, pero únicamente dentro de los 60 días previos a la última actualización.

rafadizeosp

rafadizeosp

Mi
Verificación en dos pasos activada
Verificado por Binance
Buenas, estoy tratando de mostrar todos los post en formato de lista de la "current category" es decir, la categoría donde ejecuto el loop (category.php).

El código que tengo es el siguiente

Insertar CODE, HTML o PHP:
		<ul id="simple">
		<?php
		global $post;
		$category = get_the_category($post->ID);
		$category = $category[0]->cat_ID;
		$myposts = get_posts(array('numberposts' => -1, 'offset' => 0, 'category__in' => array($category), 'post__not_in' => array($post->ID),'post_status'=>'publish'));
		foreach($myposts as $post) :
		setup_postdata($post);
		?>
			<li>
			<a href="<?php the_permalink(); ?>">
			<?php the_title(); ?></a>
			</li>
		<?php endforeach; ?>
		<?php wp_reset_query(); ?>
		</ul>

El resultado es el esperado ya que me muestra la lista ordenada de post, el problema está en que no muestra el último post en la lista. Es decir si en una categoría tengo asociados 10 post, me muestra los 9 más antiguos y el último no lo muestra.

Probé modificando con el offset pero al parecer esta discontinuado ya no hace cambio alguno.

Espero la ayuda de algun programador o algun experto en wp.
 
Puede que [MENTION=9679]cicklow[/MENTION] sepa
 
en las opciones de wp, que cantidad tienes que muestre?...
 
en las opciones de wp, que cantidad tienes que muestre?...
20 posts pero ese no es el problema ya que una de las categorias tiene 79 post asociados pero muestra 78.

Enviado desde mi HUAWEI Y600-U151 mediante Tapatalk
 
Quita el offset

Enviado desde mi XT1058 mediante Tapatalk
 
Quita el offset

Enviado desde mi XT1058 mediante Tapatalk
Ya lo hice y no pasa nada. Eñ offset es irrelevante ya que son importar el valor que ponga muestra la misma cantidad de posts

Enviado desde mi HUAWEI Y600-U151 mediante Tapatalk
 
A ver si esto te sirve:
PHP:
// if everything is in place and ready, let's start the loop 
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

// to display 'n' number of posts, we need to execute the loop 'n' number of times
// so we define a numerical variable called '$count' and set its value to zero
// with each iteration of the loop, the value of '$count' will increase by one
// after the value of '$count' reaches the specified number, the loop will stop
// *USER: change the 'n' to the number of posts that you would like to display

<?php static $count = 0;
if ($count == "n") { break; }
else { ?>

// for CSS styling and layout purposes, we wrap the post content in a div
// we then display the entire post content via the 'the_content()' function
// *USER: change to '<?php the_excerpt(); ?>' to display post excerpts instead
<div class="post">
   <?php the_title(); ?>
   <?php the_content(); ?>
 </div>

// here, we continue with the limiting of the number of displayed posts
// each iteration of the loop increases the value of '$count' by one
// the final two lines complete the loop and close the if statement

<?php $count++; } ?>
<?php endwhile; ?>
<?php endif; ?>

Fuente: http://www.wpbeginner.com/wp-themes/how-to-display-any-number-of-posts-in-a-wordpress-loop/
Recursos: https://codex.wordpress.org/The_Loop
 
Última edición:
No se nada de programacion, pero como que intentaria cambiar este valor por 0, 1 o directamente lo quitaria...

Insertar CODE, HTML o PHP:
'numberposts' => -1
 
No se nada de programacion, pero como que intentaria cambiar este valor por 0, 1 o directamente lo quitaria...

Insertar CODE, HTML o PHP:
'numberposts' => -1

-1 es para que muestre todo...

- - - Actualizado - - -

esta raro, intenta usando WP_Query =/
 
Tambien encontre este que me parece mas adecuado a lo que estas buscando:

perishablepress dijo:
To use the loop without limiting the number of posts that are displayed, remove (or comment out) each of the following lines:
PHP:
<?php static $count = 0;
if ($count == "n") { break; }
else { ?>
[ ... ]
<?php $count++; } ?>
The loop will then return the default number of posts, as specified via the WP Admin Options/Reading panel.

Fuente: https://perishablepress.com/super-loop-exclude-specific-categories-and-display-any-number-of-posts/
Si no te sirve tampoco, puedes hacer esta busqueda en Google por "Super Loop": https://www.google.com.mx/search?q=...69i57j69i64.4415j0j1&sourceid=chrome&ie=UTF-8
 
Última edición:
Tambien encontre este que me parece mas adecuado a lo que estas buscando:



Fuente: https://perishablepress.com/super-loop-exclude-specific-categories-and-display-any-number-of-posts/
Si no te sirve tampoco, puedes hacer esta busqueda en Google por "Super Loop": https://www.google.com.mx/search?q=...69i57j69i64.4415j0j1&sourceid=chrome&ie=UTF-8

Al final de ese código dice que mostrará el número de post seteado en las opciones y lo que yo necesitaría es que me muestre todos los post y no los últimos 10 o 20.

Gracias de todos modos por intentar colaborar.
 
[MENTION=17745]rafadizeosp[/MENTION] y category__in es igual a cat?
 
[MENTION=17745]rafadizeosp[/MENTION] y category__in es igual a cat?

Segun el codex se utiliza category_in.

Ya descubrí el problema, estaba en este atributo del array
Insertar CODE, HTML o PHP:
'post__not_in' => array($post->ID),

Lo quité y funcionó.

Muchas gracias a todos por ayudar.
 
Estado

🔒 Este tema está cerrado para nuevas respuestas.

⏰ Solo el creador del tema puede solicitar la reapertura de sus propios temas, pero únicamente dentro de los 60 días previos a la última actualización.

Atrás
Arriba