Obține tipul custom de postare după etichetă

7 sept. 2011, 17:03:31
Vizualizări: 27.1K
Voturi: 5

Este posibil să preluați postări pentru un tip de postare personalizată după etichetă. Am încercat cu următorul cod, însă acesta mă blochează într-o buclă infinită.

<aside class="supporting_images">
    <?php /*<?php if($post->ID == 241) : echo apply_filters('the_content', '[slideshow=3]'); endif;  ?>
    <?php the_post_thumbnail(); ?>*/?>

    <?php if($post->ID == 241) : ?>
        <?php
            $query = new WP_Query();
            $query->query('tag=branding');
        ?>
        <?php while ($query->have_posts()) : ?>
            salut
        <?php endwhile; ?>
    <?php endif;?>

0
Toate răspunsurile la întrebare 3
0

Va trebui să configurați postarea pentru interogare modificând următoarea linie pentru a elimina bucla infinită.

<?php while ($query->have_posts()) : $query->the_post(); ?>

Dacă căutați un tip personalizat de postare (custom post type), va trebui să-l specificați în argumentele interogării:

<?php $query = new WP_Query( array( "post-type" => "yourposttype", "tag" => "branding" ) ); ?>

Puteți vedea majoritatea (dacă nu toate) parametrii de interogare în codex. http://codex.wordpress.org/Class_Reference/WP_Query#Parameters

7 sept. 2011 18:25:56
0

Folosește tag_slug__in nu tag (#REF)

Exemplu :

$query = new WP_Query(array(
   'post_status' => 'publish',
   'post_type' => 'your-posttype', // sau 'any'
   'tag_slug__in' => 'your-tag',
   'posts_per_page' => -1
));

Pasul : Filtrează după Tipul de postare apoi filtrează după Etichetă

Alte răspunsuri "Filtrează după Tipul de postare și filtrează după Etichetă"

23 sept. 2015 14:17:08
0

Pentru a evita bucla infinită, trebuie să iterați prin postările rezultate:

<?php
$query = new WP_Query(
    array( "post_type" => "yourposttype", // nu "post-type" !
           "tag" => "branding"
    ) );
while ($query->have_posts()) : $query->the_post(); ?>
    Hello
<?php endwhile; ?>
8 nov. 2011 11:44:35