我有一个带有函数的子主题。php,我在标题中运行脚本,但现在我想调整它,使其仅在一个类别下列出的帖子上运行,而避免在主页或其他类别上运行。这是我修改的现有代码,但它正在整个网站上启动脚本。
add_action(\'wp_head\', \'mailchimp_wp_head\');
function mailchimp_wp_head() {
?>
<?php if ( is_category( 93 ) ) :?>
<script id="mcjs">!function(c,h,i,m,p){m=c.createElement(h),p=c.getElementsByTagName(h)[0],m.async=1,m.src=i,p.parentNode.insertBefore(m,p)}(document,"script","https://chimpstatic.com/mcjs-connected/js/users/hidden.js");</script>
<?php endif; ?>
<?php
}
谢谢!
最合适的回答,由SO网友:Sally CJ 整理而成
仅在上运行posts 列在一个类别下
我强调了这一点;“发布”;因为如果是这样,那么conditional tag 您应该使用isin_category()
而不是is_category()
用于类别存档页(例如。example.com/category/foo
) — 例如,is_category( 93 )
检查当前存档页是否用于类别(ID为)93,而in_category( 93 )
检查当前职位是否属于93类。
因此,请尝试:
<?php if ( is_single() && in_category( 93 ) ) :?>
<script id="mcjs">!function(c,h,i,m,p){m=c.createElement(h),p=c.getElementsByTagName(h)[0],m.async=1,m.src=i,p.parentNode.insertBefore(m,p)}(document,"script","https://chimpstatic.com/mcjs-connected/js/users/hidden.js");</script>
<?php endif; ?>