Chaque fois que je publie un nouveau message, je souhaite afficher une icône comme un badge (NOUVEAU) et, après un certain temps, il disparaîtra.
Disons que je publie un nouveau post et que je veux afficher qu'il s'agit d'un nouveau post. Je souhaite donc insérer une icône représentant, par exemple, une étoile dans chaque nouvelle publication de la vue Liste des blogs dans les métadonnées des publications. Aussi je veux être enlevé après un temps spécifique passera. Disons en un jour ou 24 heures que l’icône devrait être supprimée automatiquement.
Comment puis-je faire ceci?
Filtrer le contenu de post_class()
:
add_filter( 'post_class', function( $classes ) {
if ( is_singular() )
return $classes;
// now minus last mod time in seconds
$diff = time() - mysql2date( 'U', $post->post_date );
if ( DAY_IN_SECONDS <= $diff )
$classes[] = 'new-post';
return $classes;
});
Maintenant, dans votre boucle, utilisez post_class()
et vous obtenez une classe supplémentaire que vous pouvez utiliser dans votre feuille de style:
.new-post {
padding-left: 20px;
background-image: url(new.png) left top no-repeat;
}