在一个特定页面上禁用可视化编辑器

时间:2012-07-14 作者:Starfs

我想从一个特定页面中删除可视化编辑器,因为如果我在可视化模式下编辑这一页面,它会破坏代码。我想确保客户端在特定页面上没有此选项。但是,我不想删除html编辑器。

这行代码删除了可视化编辑器和html编辑器:remove\\u post\\u type\\u support(“page”,“editor”);

详细了解remove\\u post\\u type\\u支持:http://codex.wordpress.org/Function_Reference/remove_post_type_support

但我只想禁用可视化编辑器。

初始测试,在功能中。php对于这个主题,我有:

function remove_editor_init() {

 if ( is_admin() ) {
    if (is_page(2548)) { 


    remove_post_type_support(\'page\', \'editor\');
    }
 }
}
add_action(\'init\', \'remove_editor_init\');
但是,条件语句is\\u admin()和is\\u page()似乎不能一起工作。

有什么建议吗?

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

在代码中,调用操作admin_init 制造is_admin() 不需要的如果没有错的话,is_page() 用于前端。。。

但解决方案如下(基于this Answer):

add_filter( \'user_can_richedit\', \'wpse_58501_page_can_richedit\' );

function wpse_58501_page_can_richedit( $can ) 
{
    global $post;

    if ( 28 == $post->ID )
        return false;

    return $can;
}

SO网友:Kyzer

我就是这样解决的:

add_filter( \'admin_footer\', \'removes_editor_visual_tab\', 99 );

function removes_editor_visual_tab()
{
    $post_id = $_GET[\'post\'];
    if($post_id == 1434){
    ?>
        <style type="text/css">
        a#content-tmce, a#content-tmce:hover {
            display:none;
        }
        </style>
        <script type="text/javascript">
        jQuery(document).ready(function() {
            document.getElementById("content-tmce").onclick = \'none\';
        });
        </script>
    <?php
    }
}
您可以选择要反映此内容的页面ID

结束

相关推荐

Pages_Links()将空href添加到第一页和上一个链接

这真的很奇怪。试图解决this problem 最后,我几乎完美地使用了paginate\\u links()而不是自定义分页函数:$myquery = new WP_Query($args); $paged = get_query_var(\'page\'); ($paged == 0 ? $paged = 1 : $paged = $paged); $pagination = paginate_links(array( \'