web-dev-qa-db-fra.com

functions.php balise conditionnelle uniquement pour le type de publication personnalisé

J'utilise le diaporama gpp, qui écrase l'affichage par défaut de la galerie wordpress. Je souhaite uniquement l'utiliser sur mon type de message personnalisé, "listings" - comment pourrais-je le référencer pour ne remplacer que la galerie par défaut de wordpress sur la page "listings"?

J'ai ce code dans mon functions.php, et je n'arrive pas à obtenir la référence correcte pour le type de message personnalisé:

add_action('wp_head','add_gpp_gallery');
function add_gpp_gallery() {
    if( ( is_single() || is_page() ) && ( !is_page_template('page-blog.php') ) ){
        remove_shortcode('gallery', 'gallery_shortcode');
        add_shortcode('gallery', 'gpp_gallery_shortcode');
    }
}

ci-dessus est le code que le plugin utilise, et je l'ai ajouté à mon functions.php et essayé cette modification:

if (is_single() && is_post_type('post_type'){

et cela retourne une erreur.

pensées et merci

3
Jason

Essayez d’utiliser get_post_type() à la place:

if ( is_single() && 'post_type' == get_post_type() ) {
    // Do something
}

La condition is_post_type() est obsolète. Mais même quand elle existait, elle renvoyait la valeur true si la publication actuelle est un type de publication personnalisé enregistré . Il a été remplacé par post_type_exists() .

( Plus d'informations sur les balises conditionnelles Post Type .)

3
Chip Bennett

Vous semblez manquer une parenthèse. Essayer:

if (is_single() && is_post_type('post_type')) {
0
Isendra