如果您熟悉 WordPress 中帖子和页面的格式,您可能已经注意到 WordPress 使用自动插入的 <p> 标签分隔段落。但是,这有时会导致问题。好消息是……可以通过插入简单的代码片段来禁用这种自动格式化。
Wpautop 是自动用 <p> 和 </p> 括起来双换行符的函数的名称。WordPress 在所有帖子类型(帖子、页面和自定义帖子类型)中使用此功能 – 用于内容和短代码生成的文本。因此,在 WYSIWYG 编辑器中使用简码驱动的网格系统等一些编辑工作可能会有很大的问题。
禁用自动 P-tag
可以通过几个简单的步骤禁用 wpautop 过滤器。需要在您的主题的functions.php 中插入以下几行(首选子主题)。正确插入后,WordPress 不会自动将 p-tag 插入帖子和摘录。
remove_filter ('the_content', 'wpautop');
remove_filter ('the_excerpt', 'wpautop');
在自定义帖子类型中禁用 Wpautop
使用以下代码段禁用自定义帖子类型中的自动 p-tag:
add_filter('the_content', 'disable_wpautop_cpt', 0);
功能 disable_wpautop_cpt( $content ) {
'custom_post_slug' === get_post_type() && remove_filter('the_content', 'wpautop' );
返回$内容;
}
禁用 Wpautop 并列出异常
这是代码片段的增强版本,允许您列出异常(如果有):
/**
* 根据条件允许或删除 wpautop
*/
功能条件_wpautop($内容){
// true = wpautop 为 ON,除非遇到任何异常
// false = wpautop 关闭,除非遇到任何异常
$wpautop_on_by_default = true;
// 在此处列出异常(每个异常应返回 true 或 false)
$异常 = 数组(
is_page_template('page-example-template.php'),
is_page('示例页面'),
);
// 检查是否遇到任何异常 // 返回 true 或 false
$exception_is_met = in_array(true, $exceptions);
// 返回内容
如果($wpautop_on_by_default==$exception_is_met){
remove_filter('the_content','wpautop');
返回$内容;
} 别的 {
返回$内容;
}
}
add_filter('the_content', 'conditional_wpautop', 9);
删除 WordPress 已添加的空段落
将其复制粘贴到您的 functions.php
文件中(来源 – GitHub):
/**
* 删除由 wpautop() 创建的空段落
* @作者瑞恩汉密尔顿
* @link https://gist.github.com/Fantikerz/5557617
*/
函数 remove_empty_p( $content ) {
$content = force_balance_tags($content);
$content = preg_replace( '#<p>\s*+(<br\s*/*>)?\s*</p>#i', '', $content );
$content = preg_replace( '~\s?<p>(\s| )+</p>\s?~', '', $content );
返回$内容;
}
add_filter('the_content', 'remove_empty_p', 20, 1);
使用插件禁用自动段落标签
以下是一些可用于禁用 p 标签的插件:
声明:
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 下载资源请24小时内删除 运营请支持正版 请合法合规运营
2.不建议充值下载-请大家每天签到或发布资源获取下载,请大家一点要摆正自己的思想关 坚决杜绝 知法犯法
3.如果贵公司发现本站有侵权行为,请来联系我们给予指正,本站将即刻删除链接.分享目的仅供大家学习和交流,请不要用于商业用途!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务 请大家谅解!