web-dev-qa-db-fra.com

Affichage de tous les formats de publication vidéo sur la page

Je crée une page d'archive vidéo pour tous les posts_format avec video.

Actuellement, j'ai:

<?php $format = has_post_format('video', $post_id); ?>      

<?php

if($layout != "fullwidth") {
    echo '<div class="page_inner">';
}

if (have_posts()) : while (have_posts()) : the_post();

    vntd_blog_post_content();

endwhile;

Cela ne fonctionne pas, mais je ne pense pas que je suis loin.

Qu'est-ce que je fais mal?

2
Travis Patron

Je ne sais pas vraiment si vous avez besoin d'une page dédiée ou d'une vraie page d'archive, mais voici les deux options.

Si vous avez besoin d'une page dédiée pour afficher les formats de publication vidéo, vous pouvez utiliser une requête personnalisée avec un tax_query car post_format est simplement une autre taxonomie intégrée, avec post-format-video étant un terme désignant la taxonomie post_format. Votre requête sur votre modèle de page devrait ressembler à ceci

$args = array(
    'tax_query' => array(
        array(
            'taxonomy' => 'post_format',
            'field' => 'slug',
            'terms' => 'post-format-video'
        )
    )
);
$q = new WP_Query( $args );

if ( $q->have_posts() ) {
    while ( $q->have_posts() ) {
        $q->the_post() );

        // Your loop

    }
    wp_reset_postdata();
}

Si vous devez créer une page d'archivage spécifique pour le format de publication vidéo uniquement, vous pouvez créer un modèle de taxonomie spécial à cet effet en copiant simplement votre modèle index.php et en le renommant en taxonomy-post_format-post-format-video.php. Chaque fois que vous visiterez cette page de taxonomie sous example.com/type/video ou que vous cliquerez sur un lien post-format-video, ce modèle sera exclusivement utilisé pour afficher les publications au format vidéo.

Référence: Hiérarchie des modèles

MODIFIER

Votre commentaire

news.diginomics.com/type/video Comment nommer mon fichier php pour profiter de cette hiérarchie d'URL?

Comme je l'ai dit, vous avez besoin d'un modèle de taxonomie car post_format est l'une des 4 taxonomies intégrées. Pour un modèle spécifique au format de publication vidéo, copiez votre index.php et renommez-le

taxonomy-post_format-post-format-video.php

Ce modèle sera utilisé chaque fois que vous visiterez news.diginomics.com/type/video

Par souci d’intérêt, veuillez consulter cette réponse j’ai fait sur les taxonomies

1
Pieter Goosen