web-dev-qa-db-fra.com

Masquer les messages protégés par mot de passe

Si je crée un message et que je configure la visibilité sur "mot de passe protégé", il apparaît toujours sur la page d'accueil et dans les flux. Est-il possible de cacher complètement les messages de la vue générale, tout en permettant un accès rapide à certaines personnes sans créer de compte pour elles?

(Ceci est dans WP 3.0.4)

3
detly

Les balises de modèle the_content() et the_excerpt() tiennent déjà compte des publications protégées par mot de passe, via la condition post_password_required() . Si vous devez générer du contenu, des commentaires, etc. en dehors de the_content()/the_excerpt(), appelez directement la condition post_password_required().

Par exemple, si vous ne souhaitez pas que le modèle de commentaires soit généré si la publication est protégée par mot de passe. vous pouvez faire ce qui suit:

if ( ! post_password_required() && ( is_single() || ( is_page() && comments_open() ) ) ) {          
    comments_template( '', true );
}

Ou, si vous ne voulez pas afficher le message du tout s'il est protégé par un mot de passe, vous pouvez faire quelque chose comme ceci, à l'intérieur de la boucle:

if ( post_password_required() ) {
    return;
} else {
    // Normal Loop Post output goes here
}
6
Chip Bennett

Ma solution très simple est de mettre quelque chose comme ceci dans votre boucle:

<?php if( post_password_required() ) continue; ?>

Cela suffit de sauter l'entrée protégée par mot de passe.

0
Javier