WordPress&x2B&;害羞的

WordPress&x2B&;害羞的,wordpress,html-entities,Wordpress,Html Entities,在我的一个项目中,使用­ 不幸的是,如果我在文本编辑器的“文本”视图中输入html实体,WordPress会删除它。我怎样才能做到WordPress不删除它呢?默认情况下,大多数HTML都会在TinyMCE编辑器中从副本中删除。通过将其添加到活动主题的functions.php文件中,可以防止出现这种情况 function override_mce_options($initArray) { $opts = 'shy'; $initArray['valid_elements

在我的一个项目中,使用
­


不幸的是,如果我在文本编辑器的“文本”视图中输入html实体,WordPress会删除它。我怎样才能做到WordPress不删除它呢?

默认情况下,大多数HTML都会在TinyMCE编辑器中从副本中删除。通过将其添加到活动主题的functions.php文件中,可以防止出现这种情况

function override_mce_options($initArray) {
    $opts = 'shy';
    $initArray['valid_elements'] = $opts;
    $initArray['extended_valid_elements'] = $opts;
    return $initArray;
}
add_filter('tiny_mce_before_init', 'override_mce_options');
我修改了我的答案,根据我的发现和建议,将过滤器从捕获所有html改为只捕获害羞实体。看看这是否有效

如果没有,请尝试以下方法:

function override_mce_options($initArray) {
    $initArray['entities'] = 'shy'; 
}
add_filter('tiny_mce_before_init', 'override_mce_options');

我的软连字符似乎在工作,尽管它们在文本编辑器中是不可见的。这似乎是故意的行为:

谢谢!我必须指定什么才能只允许­;?我不想允许所有的标签。这需要更多的研究。但这里有一个很好的线索给你。我做了一些调查。。。您的解决方案似乎只针对标签。但是&害羞;没有标签。所以我被卡住了很遗憾听到你被卡住了。让我澄清一下。是的,我的评论中引用的链接指的是HTML标记的过滤。我在这里的解决方案将过滤器排除在编辑器(包括实体)中处理所有HTML的范围之外。因此,本文的参考是为了证明,有一些方法可以使用过滤器针对特定的HTML元素。但我还没有找到一个过滤器,可以让您指定要排除的HTML实体。如果你找到这样的东西,我很想看看。嗯。。。不,我没有让你的解决方案发挥作用。如果从文本视图更改为wysiwyg视图,害羞总是会消失。但我发现了一个不同的简单解决方案:添加_shortcode('shy','my_shy_shortcode');函数my_shy_shortcode($atts){return'­;';}:)