我有以下功能:
function remove_images( $content ) {
if( ( is_category() || is_archive() || is_home() ) && has_term( \'MyCat\', \'category\', $postID ) ) {
$postOutput = preg_replace("/\\< *[img][^\\>]*[.]*\\>/i","",$content,1);
return $postOutput;
}
}
add_filter( \'the_content\', \'remove_images\', 100 );
它的目的是删除w索引页(所有列表页)上的\\u content()中的第一个图像,仅用于MyCat类别中的帖子。相反,它所做的是从索引页所有帖子的\\u content()中删除第一个图像,然后在
all 的
single pages. 任何帮助都将不胜感激。非常感谢。
最合适的回答,由SO网友:Chip Bennett 整理而成
相反,它所做的是从索引页所有帖子的\\u content()中删除第一个图像。。。
这是因为你的回调告诉过滤器要这样做。对于指定上下文中的所有帖子(存档索引、类别索引、博客帖子索引),不返回true,仅针对这些索引中的第一篇帖子。
。。。并删除所有单个页面上的\\u content()。
这是因为,如果条件返回false,则不会返回任何内容。你需要return $content;
超出你的条件。