J'ai quelques types de messages personnalisés sur mon site Web. L'un d'eux est un curseur de page de garde. J'ajoute du texte, des images, des liens et dès que je publie, le CPT apparaît sous forme de diapositive et je suis un bon campeur. Le problème est que je dois prévisualiser la diapositive avant sa diffusion. Je peux prévisualiser cette publication spécifique du CPT via le bouton de prévisualisation de la publication, mais évidemment, je vois la diapositive proprement dite et non son apparence, dans ce curseur, cette galerie ou ces archives.
Je cherche une solution pour prévisualiser les brouillons dans une archive. Toute aide sera très appréciée.
La méthode get_posts
de WP_Query
permet d’afficher les posts lourds. Avant de faire quoi que ce soit, cependant, il existe un crochet appelé pre_get_posts
auquel vous pouvez vous connecter. La fonction accrochée recevra une référence (pointeur) à l'objet de requête en cours. Ainsi, vous pouvez modifier les vars de requête pour qu'ils soient comme vous le souhaitez.
Alors...
<?php
add_action( 'pre_get_posts', 'wpse33020_pre_get_posts' );
function wpse33020_pre_get_posts( $query_obj )
{
// get out of here if this is the admin area
if( is_admin() ) return;
// if this isn't an admin, bail
if( ! current_user_can( 'manage_options' ) ) return;
// if this isn't your slide post type, bail
if( ! isset( $query_obj->query_vars['post_type'] ) || 'slider' != $query_obj->query_vars['post_type'] ) return;
// change our query object to include any post status
$query_obj->query_vars['post_status'] = 'any';
}
Vous devrez probablement changer votre post_type
de slider
pour le nom de votre curseur CPT.
En tant que plugin: https://Gist.github.com/1343219