首页 > 解决方案 > 如何允许 WordPress 编辑器(角色)将代码放入 WYSIWSG 文本区域?

问题描述

在 WordPress 中,我有一个自定义字段,我需要一些编辑器(WordPress 角色)来放置一些 html+javascript 代码。当您不是管理员时,WordPress 似乎会清理代码。是否有我可以编辑的钩子或选项,以便让他们添加这些代码(嵌入,表单,...)?

我尝试将一些具有管理员角色的javascript代码,好的。我尝试了编辑角色,ko。

所以,我很确定问题来自那里。

标签: wordpressxcodeinputroles

解决方案


好的,经过进一步审查并查看 wordpress 核心功能,这就是答案。

在多站点中,编辑器没有“unfiltered_html”功能。所以你只需要拥有它:

<?php
function add_custom_capability_to_editors( $caps, $cap, $user_id ) {
if ( 'unfiltered_html' === $cap && user_can( $user_id, 'editor' ) ) {
    $caps = array( 'unfiltered_html' );
}
return $caps;
}
add_filter( 'map_meta_cap', 'add_custom_capability_to_editors', 1, 3 );

推荐阅读