18

ページ テンプレートでこれを使用して、カテゴリ別に投稿を取得しています。

<?php 
        if (is_page(19)){
            ?>
            <ul>
            <?php
                global $post;
                $args = array( 'category' => 'Testimonial' );
                $myposts = get_posts( $args );
                foreach( $myposts as $post ) :  setup_postdata($post); ?>
                    <li class="testimonial"><?php the_content(); ?></li><br/>
                <?php endforeach; ?>
            </ul>
        <?php } ?>

代わりにすべての投稿を取得しています。証言とラベル付けされたものだけではありません。私が間違っていることは何か分かりますか?

4

5 に答える 5

26

'category_name'=>'this cat' も機能しますが、WP ドキュメントには記載されていません

于 2013-09-30T10:23:19.680 に答える
16

ここをチェックしてください:https ://developer.wordpress.org/reference/functions/get_posts/

注: カテゴリ パラメータは、カテゴリ名ではなく、カテゴリの ID である必要があります。

于 2012-08-10T21:11:31.577 に答える
1

パラメータで「category_name」を使用できます。 http://codex.wordpress.org/Template_Tags/get_posts

注: category_name パラメータは文字列である必要があります。この場合はカテゴリ名です。

于 2014-11-19T11:30:18.590 に答える
1
add_shortcode( 'seriesposts', 'series_posts' );

function series_posts( $atts )
{ ob_start();

$myseriesoption = get_option( '_myseries', null );

$type = $myseriesoption;
$args=array(  'post_type' => $type,  'post_status' => 'publish',  'posts_per_page' => 5,  'caller_get_posts'=> 1);
$my_query = null;
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
echo '<ul>'; 
while ($my_query->have_posts()) : $my_query->the_post();
echo '<li><a href="';
echo the_permalink();
echo '">';
echo the_title();
echo '</a></li>'; 
endwhile;
echo '</ul>'; 
}
wp_reset_query();




return ob_get_clean(); }

//これにより、サイトで使用されるショートコード関数が生成されます [seriesposts]

于 2015-10-14T17:38:27.113 に答える