WordPress将span标记包装成p标记

时间:2017-04-20 作者:CROSP

我正在努力摆脱这种不受欢迎的行为。TinyMCE在提交帖子后将我的<span> 标记到<p> 标签。

下面是一个示例

<div class="conten__title-wrapper">
   <h5 class="conten__title">Wordpress</h5>
   <span class="content__icon fa fa-wordpress"></span>
</div>
我得到了以下输出。

<div class="conten__title-wrapper">
   <h5 class="conten__title">Wordpress</h5>
   <p>
      <span class="content__icon fa fa-wordpress"></span>
   </p>
</div>
我试着用钩子解决这个问题tiny_mce_before_init, 就像那样。

   public function set_admin_hooks()
    {
        add_filter(\'tiny_mce_before_init\', array($this, \'change_mce_options\'),1);
    }

    public function change_mce_options($init)
    {
        $init["forced_root_block"] = "h4";
        $init["force_br_newlines"] = true;
        $init["force_p_newlines"] = false;
        $init[\'valid_children\'] = "+a[div|p|ul|ol|li|h1|span|h2|h3|h4|h5|h5|h6]";
        $init["convert_newlines_to_brs"] = true;
        return $init;
    }
虽然调用了hook函数,但它仍然不会影响这种奇怪的行为。

我还可以在页面底部的输出中看到这些选项(内联Javascript)

<script type="text/javascript">
        tinyMCEPreInit = {
......
我在Text Mode. 我正在使用纯HTML创建我的所有帖子。

我还能试着摆脱这个“很棒的功能”吗?

1 个回复
最合适的回答,由SO网友:CROSP 整理而成

我已经调查了这个问题,并认识到这不是TinyMCE故障,而是由挂钩函数引起的wpautop 相反标签在post显示之前被包装。因此,为了解决这个问题,只需像这样删除挂钩函数。

   remove_filter( \'the_content\', \'wpautop\' );
例如,可以在functions.php 文件

相关推荐

错误日志中有未定义的DB_USER wp-admin/setup-config.php

我有一个正在运行的WordPress网站一段时间了。最近,我注意到某人或某事正在请求www.example.com/wp-admin/setup-config.php?step=0. 导致我的错误日志中出现这些条目的原因是什么?PHP Warning: Use of undefined constant DB_USER - assumed \'DB_USER\' (this will throw an Error in a future version of PHP) in /var/www/html/