在我们使用的主题中,Mesmerize-Pro,对于所有帖子,它在两个地方显示帖子标题:
示例:(已删除链接)
我很乐意改变最顶级的英雄角色而不是显示帖子类别。
我可以通过functions.php
将帖子标题更改为类别,但这样做的意义不大。
感谢您的帮助。
-e
详细说明:
.inner-header-description h1.hero-title (Top Title, want to be the Category)
.post-item .post-content-single body #page h1 (Post Title, as is)
答案 0 :(得分:0)
看看这个主题,它确定英雄头衔似乎有点过于复杂。如果主题中没有覆盖选项(我没有安装它来检查),那么您可以看到一个mesmerize_header_title
过滤器,它显然是如何改变的WooCommerce页面上的标题本身就是主题。
有一点需要注意的是,帖子上可能有很多类别,因此通常您只想显示第一个类别。我们可以使用get_the_category()
返回WP_Term
个对象的数组,并将第一个应用于标题标题过滤器:
add_filter('mesmerize_header_title', function($title){
if( is_single() ){
$categories = get_the_category();
$title = $categories[0]->name;
}
return $title;
});
你应该能够将它放在functions.php
文件中并且好好去。
我将此代码基于包含以下内容的/inc/woocommerce/woocommerce.php
文件:
add_filter('mesmerize_header_title', function ($title) {
if (mesmerize_is_page_template()) {
if (is_archive() && mesmerize_get_current_template() === "woocommerce.php") {
$title = woocommerce_page_title(false);
}
}
return $title;
});