如果存在三个变量,我将尝试返回$ad\\U代码,但它不允许我尝试添加的第三个变量。我想排除一个类别。
我正在尝试使用(根据WordPress\'"conditional tags")
if ( is_single() && ! is_category( \'1293\' ) && ! is_admin() ) {
return prefix_insert_after_paragraph( $ad_code, 2, $content );
}
return $content;
代码(包括指定$ad\\U代码是什么的代码)起作用。就在我尝试添加时
&& ! is_category( \'1293\' )
它仍然显示在所有帖子上(不仅仅是1293)。我也尝试使用类别名称,但这也起到了同样的作用。
我尝试的第三个变量是停止$ad_code
从全部或无立柱上装载。
最合适的回答,由SO网友:Pieter Goosen 整理而成
您的条件,is_category()
这里是错的。is_category()
检查您是否实际在类别页面上。通过使用!
运算符与is_category()
和ID1293
, 条件的这一部分将始终返回true,除非您实际位于类别的类别页面上1293
.
如果需要从类别中排除某组帖子1293
, 您应该使用条件检查,in_category()
或has_category()
(本质上,两者完全相同)。因此,您的条件语句应该如下所示:
if ( is_single() // Make sure we are on a single page
&& ! in_category( \'1293\' ) // Make sure the post does not belong to category 1293
&& ! is_admin() // Make sure this is not an admin page
) {
return prefix_insert_after_paragraph( $ad_code, 2, $content );
}