动态获取类别档案模板名称

时间:2016-01-15 作者:serraosays

我正在制作一个适用于所有类别的类别存档模板。我需要动态设置\'category\' 的参数WP_Query 使其工作。

如何动态获取当前类别页面名称的字符串以输入WP\\U查询?我见过的所有方法都假定我知道IDslug. 由于这是一个归档页面,大多数WP函数都不会返回归档页面标题,而是返回帖子标题。

我看到的最佳选择是:$current_category = single_cat_title("", false);

但它仍然在我的category.php 佩奇-也许我做错了什么?

2 个回复
SO网友:serraosays

这是我找到的唯一选择:

$current_category = single_cat_title("", false);

SO网友:Milo

要回答您的问题,get_queried_objectget_queried_object_id 将为您提供有关大多数类型页面所需的所有信息。

但是,如果要在模板中创建新查询以更改某些查询参数,则应使用pre_get_posts 在运行主查询之前更改它。然后可以在模板中运行常规循环。

例如,更改posts_per_page 在类别存档上:

function wpd_category_query( $query ) {
    if ( $query->is_category() && $query->is_main_query() ) {
        $query->set( \'posts_per_page\', 15 );
    }
}
add_action( \'pre_get_posts\',\'wpd_category_query\' );