禁止 WordPress 自动添加分段标签

时间:2019-08-29   阅读:440

WordPress 有个自动分段机制,只要你在可视化下敲击一次回车(文本模式敲击两次回车),就会在前台html自动添加分段标签<p>,其实这个功能也是很方便的,但是有些朋友就是不习惯,或者在某些情况下干扰了自己的文章内容格式。

这个自动分段机制,使用的是 wpautop() 函数,只会对文章内容和摘要生效,如果你希望禁用它,可以将下面的代码添加到主题的 functions.php 文件即可:

1
2
remove_filter( 'the_content', 'wpautop' ); //正文remove_filter( 'the_excerpt', 'wpautop' ); //摘要

remove_filter( 'the_content', 'wpautop' ); //正文 remove_filter( 'the_excerpt', 'wpautop' ); //摘要

但是这样一来,就会使所有文章类型的文章都失去自动分段功能,要解决这个问题,我们可以在主题的 functions.php 添加下面的代码:

1
2
3
function needRemoveP() {
	remove_filter('the_content', 'wpautop'); }

function needRemoveP() { remove_filter('the_content', 'wpautop'); }

然后在你想去掉功能的地方,比如想让文章去掉这个默认的功能,则在single.php里添加:

1
<?php add_action ('loop_start', 'needRemoveP'); ?>

<?php add_action ('loop_start', 'needRemoveP'); ?>

倡萌补充:

其实我们还有更加方便的方法,不需要修改 single.php 文件,而是通过条件标签来判断,在主题 functions.php 使用下面的代码:

1
2
3
4
5
6
function needRemoveP() {if ( get_post_type() == 'post'){ // 如果文章类型为 post
		remove_filter('the_content', 'wpautop'); 
	}}add_action ('loop_start', 'needRemoveP');

function needRemoveP() { if ( get_post_type() == 'post'){ // 如果文章类型为 post remove_filter('the_content', 'wpautop'); } } add_action ('loop_start', 'needRemoveP');

以上代码的第 2 行就限定了文章类型为 post 的文章才会取消自动分段,你可以根据自己的需要修改文章类型。


上一篇:WordPress 快速替换文章/评论的某些文字内容

下一篇:给WordPress里包含下载资源的文章,加一个下载标识

网友评论