Tutorial: Lista de últimos artículos modificados sin plugins

Lopezito Seguir

Zeta
Diseñador
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
13 Dic 2011
Mensajes
1.515
Cómo obtener los últimos artículos actualizados

Buenos días.
En este tutorial les enseñare a hacer un simple listado de los últimos artículos actualizados(modificados) sin necesidad de agregar plugins, esto les puede ser útil a quienes tengan páginas al estilo Softonic.​

1- Ir al editor de themes y al archivo functions.php, y agregan el siguiente código:
PHP:
<?php
function ultimosactualizados(){

$cpost = 10; // Cantidad de posts a mostrar
$cletras = 30; // Cantidad de letras a mostrar en el extracto del post

?>
<!-- Ultimos actualizados por Lopezito -->
<section class="aposts">
<h3>&Uacute;ltimos actualizados.</h3>
<?php

query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC'));
while ( have_posts() ) : the_post();

?>

<article class="apost">
<a href="<?php the_permalink(); ?>" title="Enlace permanente hacia <?php the_title_attribute(); ?>"><h5><?php the_title(); ?></h5></a>
<section class="acont">
<a href="<?php the_permalink(); ?>" title="Enlace permanente hacia <?php the_title_attribute(); ?>"><?php the_post_thumbnail(); ?></a>
<?php echo substr(get_the_excerpt(),0,$cletras); ?>...
</main>
</article>

<?php

endwhile;
wp_reset_query();

?>
</section>
<!-- / Ultimos actualizados por Lopezito -->
<?php

}
?>
2- Luego en su archivo de estilos(style.css), agregan:

Insertar CODE, HTML o PHP:
.aposts{padding:5px;margin:5px 0}
.aposts h3{font-weight:100;padding:10px;color:#FFF;font-size:19px;text-shadow:1px 1px rgba(88, 88, 88, 0.33);display:inline-block;background:#74B2CF!important;letter-spacing:1px}
.apost{background:#fff!important;border-top:1px solid #eee!important}
.apost:nth-child(2n+2){background:#F4FBFF!important}
.apost a h5{text-decoration:none;font-size:15px;font-weight:100;text-shadow:1px 1px #fff;color:#444;margin-bottom:5px;padding:5px}
.acont{margin:5px;overflow:hidden;color:#444;font-style:italic}
.acont a img{float:left;width:48px!important;height:48px!important;border:none!important;margin:5px 15px;box-shadow:0 0 8px #FFF}

3- Para implementar esto donde queramos vamos a donde se nos ocurra ponerlo(ej: index.php) y colocamos:

PHP:
<?php ultimosactualizados(); ?>

Cualquier duda, consulten.

Un saludo.

PD: Agregaré un demo cuando tenga disponible mi hosting :/
 
Última edición:

SonSur18

Dseda
Verificación en dos pasos activada
Desde
21 May 2013
Mensajes
1.036
jajaj muy bueno! Justo era lo que estaba buscandooooo!! vamoss :encouragement::encouragement:
 

FabricioV

Ni
Verificación en dos pasos activada
Desde
29 Dic 2009
Mensajes
3.671
¿Y para mostrar los últimos artículos actualizados por Categoría/Tags?¿Es posible a partir de este código?
 

Lopezito

Zeta
Diseñador
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
13 Dic 2011
Mensajes
1.515
¿Y para mostrar los últimos artículos actualizados por Categoría/Tags?¿Es posible a partir de este código?

Sí en la línea:

PHP:
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC'));


PHP:
<?php
// Si queres agregarlo a category.php:

$cat_ID = get_query_var('cat');
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC', 'cat' => $cat_ID));

// Si queres agregarlo en tag.php

$tag_ID = get_query_var('tag');
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC', 'tag_id' => $tag_ID));

// Si no, podes agregar manualmente los datos

$cat_ID = array(1,2,3); // ID's de las categorías
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC', 'cat' => $cat_ID));

$tag_ID = array(1,2,3); // ID's de las tags
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC', 'tag_id' => $tag_ID));

?>
 
Última edición:

Matias Felici

VIP
Ni
Marketing
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
Suscripción a IA
Desde
11 Jul 2013
Mensajes
3.913
Genial! Muchas gracias por el tuto
 

Carlos Arreola

Admin
Sigma
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
¡Excelente comerciante!
Suscripción a IA
Desde
6 Abr 2009
Mensajes
12.388
Muchas gracias, buen aporte :)
 

cinewow

1
Iota
Diseñador
Verificación en dos pasos activada
Verificado por Whatsapp
Suscripción a IA
Desde
22 Dic 2012
Mensajes
2.160
oye capo, muchas gracias por compartir! mira tengo una duda hay forma de que en la home pueda mostrar los posts normalmente, pero si un post antiguo se actualiza, inemdiatamente pase al home de la web de nuevo, sin necesidad de modificar la fecha?
te agradeceria cualquier respuesta. saludos y gracias por compartir
Sí en la línea:

PHP:
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC'));


PHP:
<?php
// Si queres agregarlo a category.php:

$cat_ID = get_query_var('cat');
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC', 'cat' => $cat_ID));

// Si queres agregarlo en tag.php

$tag_ID = get_query_var('tag');
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC', 'tag_id' => $tag_ID));

// Si no, podes agregar manualmente los datos

$cat_ID = array(1,2,3); // ID's de las categorías
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC', 'cat' => $cat_ID));

$tag_ID = array(1,2,3); // ID's de las tags
query_posts(array('posts_per_page' => $cpost, 'orderby' => 'modified', 'order' => 'DESC', 'tag_id' => $tag_ID));

?>
 

Lopezito

Zeta
Diseñador
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
13 Dic 2011
Mensajes
1.515
oye capo, muchas gracias por compartir! mira tengo una duda hay forma de que en la home pueda mostrar los posts normalmente, pero si un post antiguo se actualiza, inemdiatamente pase al home de la web de nuevo, sin necesidad de modificar la fecha?
te agradeceria cualquier respuesta. saludos y gracias por compartir

Primero, perdona la tardanza.

Segundo, no comprendo bien lo que me preguntas, según he entendido lo que has dicho es lo que hace este código, mostrar un listado según la fecha de la última modificación en el post, por ende, el post antiguo que modificaste, pasaría a estar antes del último creado/modificado previamente al mismo.

Un saludo.
 

trademarkos

Gamma
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
Desde
22 Mar 2012
Mensajes
284
Edad
39
oye capo, muchas gracias por compartir! mira tengo una duda hay forma de que en la home pueda mostrar los posts normalmente, pero si un post antiguo se actualiza, inemdiatamente pase al home de la web de nuevo, sin necesidad de modificar la fecha?
te agradeceria cualquier respuesta. saludos y gracias por compartir

No entiendo si es lo que quieres, pero por si a alguno le va de ayuda:

Para mostrar los últimos posts deberás cambiar el 'orderby':

Insertar CODE, HTML o PHP:
query_posts(array('posts_per_page' => $cpost, 'orderby' => '[B][COLOR="#008000"]modified[/COLOR][/B]', 'order' => 'DESC'));
while ( have_posts() ) : the_post();

por esto:

Insertar CODE, HTML o PHP:
query_posts(array('posts_per_page' => $cpost, 'orderby' => '[B][COLOR="#008000"]date[/COLOR][/B]', 'order' => 'DESC'));
while ( have_posts() ) : the_post();

Lo que haces es decir que ordene la lista por fecha (date), en vez de por modificación (modified) del post.

Espero que sea de ayuda. Saludos.
 
Arriba