隐藏 WP 编辑器中的可视化编辑功能

WP 的编辑器提供有两种模式来编辑,一种是可视化模式,另一种是 HTML 模式。我比较习惯使用 HTML 模式来编写文章。

这有一个问题,在编写文字的时候,有时会点了一下可视化,编辑器就切换到了可视化模式,但再切换会 HTML 模式时,之前调整好的一下格式不见了。这有一种在作死的感觉。其实这也不算是什么问题,只要管住自己,不要去点那个可视化按钮不久可以了吗。的确如此。

但,既然这个可视化按钮对我来说是多余的,那可以把它屏蔽掉啊!
这是个好想法,那就把它屏蔽掉吧。

具体步骤如下:

  1. 找到生成该按钮的代码
  2. 把它注释掉

第一步是查找它的实现代码
这个好办,直接顺藤摸瓜就可以

发表文章的页面是由 post-new.php 这个文件生成的,那就从它入手。但是检查完整个 post-new.php 文件,都不见有与实现编辑器有关的代码,但它最后包含有一个文件进来,甚是可疑,文件名为 wp-admin/edit-form-advanced.php,跟进去看下。打开文件 edit-form-advanced.php,将其代码与发表文章页面的源代码对比,可以确定,编辑器是从这个文件实现的。我仔细找,依然没有找到具体的代码,但发现了一个神秘函数,wp_editor()。看到这货,心想,就是他了。但接下来怎么办,不知到 wp_editor() 是从哪里来的?淡定。难道忘记了临毕业时导师的谆谆教导了吗?有困难,找度娘。

果然,找到了 wp-edirot() 的实现代码:

  1. function wp_editor( $content$editor_id$settings = array() ) {  
  2.         if ( ! class_exists( '_WP_Editors' ) )  
  3.                 require( ABSPATH . WPINC . '/class-wp-editor.php' );  
  4.   
  5.         _WP_Editors::editor($content$editor_id$settings);  
  6. }  

哈,原来这个编辑器是由一个叫做 _WP_Editors 的类来实现的。这下好了,去看下这个类的实现代码。不难看出,这个类是由文件 class-wp-editor.php 实现的。走。
找到文件 class-wp-editor.php,打开它。一会儿就找到实现那个可视化按钮的代码了,好激动。

  1. $buttons .= '<a id="' . $editor_id . '-html" class="wp-switch-editor switch-html" onclick="switchEditors.switchto(this);">' . _x( 'Text', 'Name for the Text editor tab (formerly HTML)' ) . "</a>n";  
  2. $buttons .= '<a id="' . $editor_id . '-tmce" class="wp-switch-editor switch-tmce" onclick="switchEditors.switchto(this);">' . __('Visual') . "</a>n";  

到此为止,成功找到生成该按钮的代码。

第二步就简单了,直接屏蔽它,保存。
顺利完成任务!

(完)

本文作者: chenishr

本文标题:《隐藏 WP 编辑器中的可视化编辑功能》

本文地址: https://blog.chenishr.com/?p=81

©版权所有,除非注明, 永在路上文章均为原创,转载请以链接形式注明出处和作者细信息。

发表评论

电子邮件地址不会被公开。 必填项已用*标注