当切换到编辑器中的可视选项卡并返回时,允许在tinpress编辑器中使用html 5标签进行wordpress

时间:2013-06-01 23:43:15

标签: html html5 wordpress tinymce wysiwyg

我只是想在wp admin post编辑器中保留我的<u>标签和<b>标签。  但是,当从视觉视图到文本/ html视图来回切换时,它们将被更改为<span style="text-decoration: underline;"></span>这很烦人,而且在我的情况下跨度会有问题。

最好的方法是什么,我尝试了一些没有帮助的插件,添加和扩展有效元素......但是还没有成功!

如果你们中的一些天才能指出我正确的方向,那将是非常有帮助的。

我也有一个不同的问题;

是否有一种简单的方法可以将样式按钮添加到文本编辑器中,该按钮将在ltr和rtl的编辑器的文本视图中更改窗体的方向, 我通过更改开发人员工具或firebug中的css轻松完成了这项工作!但我要求内置的东西!

3 个答案:

答案 0 :(得分:1)

您只需禁用inline_styles选项(默认情况下会在Wordpress附带的TinyMCE版本中启用):

add_filter('tiny_mce_before_init', function ( $options )
{
    $options['inline_styles'] = false;

    return $options;
});

虽然这有效,但我强烈反对。 This use of the u element has been deprecated in HTML5,在此上下文中被视为非语义。

如果您能解释为什么要这样做,也许我们可以提出更好的解决方案。

P.S。over at the TinyMCE forums进行了很好的讨论。

答案 1 :(得分:0)

您可以使用以下

简单地初始化您的编辑器
    // Override internal formats  
    formats: {
        bold : {inline : 'b' },  
        italic : {inline : 'i' },
        underline : {inline : 'u'}
    },
然后,Tinymce会将粗体,斜体下划线视为b,u和i-tag。

答案 2 :(得分:0)

我对这一切相对较新,我无法弄清楚如何做到这一点,这是代码。从核心类-wp-editor.php文件中拉出来。这是:

function my_tiny_mce_tweaks( $first_init ) {
  $first_init['formats'] = '{' .
      'alignleft: [' .
          '{selector: "p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li", styles: {textAlign:"left"}},' .
          '{selector: "img,table,dl.wp-caption", classes: "alignleft"}' .
      '],' .
      'aligncenter: [' .
          '{selector: "p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li", styles: {textAlign:"center"}},' .
          '{selector: "img,table,dl.wp-caption", classes: "aligncenter"}' .
      '],' .
      'alignright: [' .
          '{selector: "p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li", styles: {textAlign:"right"}},' .
          '{selector: "img,table,dl.wp-caption", classes: "alignright"}' .
      '],' .
      'strikethrough: {inline: "del"},' .
      'underline: {inline: "u"}' .
  '}';

  return $first_init;
}
add_filter('tiny_mce_before_init', 'my_tiny_mce_tweaks');

请注意:它只会更改下划线按钮的行为,如果您想要粗体,斜体作为bi标签,请将@ Thariama的评论添加到代码中。