Wordpress菜单,显示特定类别中的所有帖子

时间:2015-12-12 13:14:09

标签: php html css wordpress

我正在创建一个小部件菜单(类似于w3schools的侧边栏),它应该显示特定类别中列出的所有帖子。
 例如,一旦用户点击导航栏中的“HTML”,它就会从主页上看到它带到了关于课程介绍的页面,并且我已经放置了侧边栏自定义菜单(通过使用拖放),其中还有其他帖子相同类别的名称为“HTML”。

我希望能够发布帖子并在“HTML”类别下标记,在菜单选项中我选择菜单仅在具有“HTML”类别的帖子上显示菜单,然后在我发布帖子后在“HTML”类别下,菜单应自动将另一个帖子添加到列表中。简单地说,一个动态菜单显示特定类别下的所有帖子。

到目前为止,我遇到过这段代码,但是将它放在菜单编辑器中却不起作用:

$catPost = get_posts(get_cat_ID("NameOfTheCategory"));

foreach ($catPost as $post) : setup_postdata($post); ?>
        <div>
             <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2> 
              <p><?php the_content(); ?></p>
        </div> <?php  endforeach;?>

我是WordPress的新手,我尝试过在各处搜索并尝试了很多插件,但我找不到任何东西。

1 个答案:

答案 0 :(得分:0)

您可以使用获取类别获取所有类别或特定类别,然后在每个类别上运行WP_Query。

    //menu loop
function menu_loop() {

global $post;

$args= array(...);
$categories = get_categories( $args);
foreach ($categories as $category ) {

$args = array (...);

// The Query
$query = new WP_Query( $args );

    // The Loop
    if ( $query->have_posts() ) {
        while ( $query->have_posts() ) { $query->the_post();

        }
    }
   // Restore original Post Data
    wp_reset_postdata();
}
}