有没有办法限制我添加到我的functions.php文件中的以下代码,以便它只适用于单个wordpress类别?
<?php remove_filter('the_content', 'wpautop'); ?>
Run Code Online (Sandbox Code Playgroud)
我尝试过这个,但它似乎没有用:
<?php if (in_category('work')) { remove_filter('the_content', 'wpautop'); } ?>
Run Code Online (Sandbox Code Playgroud)
我还应该补充一点,我通过将代码直接放在特定的类别模板中解决了这个问题,但我更喜欢将过滤器保留在我的函数文件中.
谢谢!
小智 0
您的functions.php 不知道当前的请求,就像您的索引和类别页面一样。为了让这段代码在functions.php中工作,你必须获取原始服务器变量并解析它们以加载与当前url相关的wp_query功能:
$url = explode('?', 'http://'.$_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]);
$ID = url_to_postid($url[0]);
Run Code Online (Sandbox Code Playgroud)
获得该 ID 后,您可以执行查询循环并根据类别触发过滤器。