当前浏览:首页 / WordPress函数 / wpautop()

wpautop( string $text, bool $br = true ): string

用段落元素替换双换行符

noop

  • _n_noop() 在POT文件中注册多个字符串,但不翻译它们
  • _nx_noop() 在POT文件中使用gettext上下文注册多个字符串,但不翻译它们
  • translate_nooped_plural() 翻译并检索已在_n_noop()或_nx_noop()注册的字符串的单数或复数形式

postmore...


描述

一组正则表达式替换符用于标识用换行符格式化的文本,并用HTML段落标签替换双换行符。转换后剩余的换行符将变为<br />标签,除非$br设置为“0”或“false”。


参数

$textstring必填
必须格式化的文本。
$brbool可选
如果设置,将会转换替换段落后所有剩余的换行符。<script><style><svg>标签内的换行符不受影响。

默认:true


返回

string 已转换为正确段落标签的文本。


更多信息

禁用过滤器

一些人选择在其主题的functions.php中禁用wpautop过滤器:


remove_filter( 'the_content', 'wpautop' );
remove_filter( 'the_excerpt', 'wpautop' );

还有一个插件可供启用/禁用过滤器逐篇文章的使用。



源码

查看源码 官方文档


更新日志

版本描述
0.71开始引入

使用示例

  • 示例1

    如果在wpautop添加不需要的段落时遇到问题,可以通过将以下内容添加到子主题的functions.php文件中,在页面内容中禁用wpautop:

    // Stop WP adding extra <p> </p> to your pages' content
    remove_filter( 'the_content', 'wpautop' );
  • 示例2

    基本用法

    <?php
    $some_long_text = // Start Text
    Some long text
    that has many lines
    
    and paragraphs in it.
    // end text
    
    echo wpautop( $some_long_text );
    ?>

    这应该与段落周围带有标签的字符串相呼应,如下所示:

    <p>Some long text<br/>
    that has many lines</p>
    <p>and paragraphs in it.</p>
  • 示例3

    使用时发出警告。这将在处理长文章时给PHP增加极大的工作量。