在 genesis 框架 wordpress 的特定类别的条目类别之前更改文本

Change text before entry-categories for specific categories on genesis framwork wordpress

我正在尝试更改 "Filed Under:" 我们所有的服务类别和页面(门、地板、绘画和 Windows),每个类别的 ID 如下 4、5、6、7 和每个服务页面的ID如下28、30、32、34。

我从 Studiopress 网站上获得了这段代码,但它在全局范围内更改了条目类别之前的所有文本。我试图在下面对其进行修改,但它不起作用。

//* Customize the post meta function
add_filter( 'genesis_post_meta', 'sp_post_meta_filter' );
function sp_post_meta_filter($post_meta) {
    if ( !is_page() ) {
        $post_meta = '[post_categories before="Filed Under: "] [post_tags before="Tagged: "]';
        return $post_meta;
    }
}

我有 4 个页面(服务页面 ID 在上面)都使用博客模板并为每个类别拉 query_args 和 cat=ID 以展示该类别中的工作。

我还有一个投资组合页面 (ID=13) 来展示与上述类别相关的所有工作。

然后是公司更新和新闻的博客页面,不会展示任何职位(博客页面 ID=19)。我仍然希望此页面上的 posts 显示 "Filed Under:"。

在投资组合和服务页面上,我想将 "Filed Under:" 更改为 "Service:"。我希望此更改在工作的实际 post 和类别页面上仍然有效(我没有使用类别页面,但如果有人单击服务类型,它将把他们带到那里)。

我希望这更清楚...

这是我一直在玩和尝试但仍然无法正常工作的代码。我不确定我是否正确使用了 is_page 或者我是否需要使用其他东西。

//* Customize the post meta function
add_filter( 'genesis_post_meta', 'sp_post_meta_filter' );
function sp_post_meta_filter($post_meta) {
    if ( !is_page( array(13,28,30,32,34)) ) {
        if ( !is_category( array(4,5,6,7) ) ) {
            $post_meta = '[post_categories before="Service: "] [post_tags before="Tagged: "]';
        } else { 
            $post_meta = '[post_categories before="Filed Under: "] [post_tags before="Tagged: "]';
        } 
        return $post_meta;  
    }
}

这会将下面的内容更改为 'Service':

  • 类别 4、5、6、7 中的任何页面
  • 任何类别页面 4,5,6,7
  • 投资组合页面 (ID=13)

其他的都会说'Filed Under'

add_filter( 'genesis_post_meta', 'sp_post_meta_filter' );
function sp_post_meta_filter($post_meta) {
    if((is_page() && in_category(array(4,5,6,7))) || (!is_page() && is_category(array(4,5,6,7))) || (is_page() && get_the_ID() == 13)) {
        $post_meta = '[post_categories before="Service: "] [post_tags before="Tagged: "]';
    }
    else
    {
        $post_meta = '[post_categories before="Filed Under: "] [post_tags before="Tagged: "]';
    }
    return $post_meta;  
}

谢谢 Mongjong 让我走上了正确的道路,让我走到了这一步。我能够进一步调整您的解决方案来满足我的所有需求!这是我完美运行的最终代码! :-)

//* Customize the post meta function
add_filter( 'genesis_post_meta', 'sp_post_meta_filter' );
function sp_post_meta_filter($post_meta) {
    if((is_page() && in_category(array(4,5,6,7))) || (!is_page() && is_category(array(4,5,6,7))) || (is_single() && in_category(array(4,5,6,7))) || (!is_single() && in_category(array(4,5,6,7))) || (is_page() && get_the_ID() == 13)) {
        $post_meta = '[post_categories before="Service: "] [post_tags before="Tagged: "]';
    }
    else
    {
        $post_meta = '[post_categories before="Filed Under: "] [post_tags before="Tagged: "]';
    }
    return $post_meta;  
}