服务器与VPS
促销优惠信息

wordpress编辑器添加按钮,自定义快捷功能选项教程

查看目录
文章目录隐藏
  1. 文本状态添加编辑器按钮:
  2. 可视化状态添加编辑器按钮:
  3. 添加带有文本功能的自定义按钮

wordpress作为全世界最受欢迎的建站程序,国内也有很多站长在使用wordpress建站。虽然wp的功能很强大,但是用的时间久了,还是难免有一些没法尽善尽美。比如,我们在使用编辑器输出文章时,就会感觉如果编辑器有一些按钮,可以快捷添加一些功能就好了。今天就和大家分享一下如何wordpress编辑器添加按钮,自定义快捷功能选项。

给wordpress编辑器添加按钮有两种,一种是可视化状态下添加按钮,一种是文本状态下添加按钮。

文本状态添加编辑器按钮:

functions文件内填写如下代码,就可以给编辑器添加相应的文本按钮,可根据自己的需求增加或者减少。

// 编辑器添加文本按钮 chukuangren.com
function appthemes_add_quicktags() {
?> 
<script type="text/javascript"> 
QTags.addButton( '大标题', '大标题', '<h2 style="font-family:&quot;color:#55595C;font-size:1rem;background-color:#45B6F7;">', '</h2>' );
QTags.addButton( '小标题', '小标题', '<h4 style="font-family:&quot;color:#55595C;font-size:1rem;background-color:#45B6F7;">', '</h4>' );
QTags.addButton( '按钮', '按钮', '<a class="btn btn-default" href="填写网址">', '</a>' );
QTags.addButton( '说明框', '说明框', '<div class="article-desc">', '</div>' );
QTags.addButton( '标记框', '标记框', '<div class="commentform-text">', '</div>' );
QTags.addButton( '加粗', '加粗', '<strong>', '</strong>' );
QTags.addButton( '代码', '代码', '<pre class="prettyprint lang-js">', '</pre>' );
QTags.addButton( 'p', 'p', '<p>', '</p>' ); 
QTags.addButton( 'hr', 'hr', '<hr>', '' );
</script>
<?php
}
add_action('admin_print_footer_scripts', 'appthemes_add_quicktags' );

这种给wordpress编辑器添加按钮的方法最简单,只是在使用的时候需要我们切换到“文本”状态下使用,所以我们可以简单称呼这种方式为编辑器的文本按钮。

可视化状态添加编辑器按钮:

1、functions文件下添加:

// 编辑器添加可视化按钮 2023-12-2
add_action('media_buttons', 'add_media_button');function add_media_button() { 
echo '<a href="#" id="insert-media" class="button">Media</a>';}
function include_media_button_js_file() { 
wp_enqueue_script('media_button', 'wp-content/themes/wux/js/media_button.js', array('jquery'), '1.0', true);}

2、创建一个JS文件,例如:media.js

代码内容:

jQuery(function($) { 
jQuery(document).ready(function(){ 
jQuery('#insert-my-media').click(open_media_window); }); 
function open_media_window() { if (this.window === undefined) { 
this.window = wp.media({ title: 'Insert a media', library: {type: 'image'}, multiple: false, button: {text: 'Insert'} }); 
var self = this; // Needed to retrieve our variable in the anonymous function below this.window.on('select', function() { 
var first = self.window.state().get('selection').first().toJSON(); wp.media.editor.insert('[myshortcode id="' + first.id + '"]'); }); 
} this.window.open(); 
return false; }});

上传到网站的根目录或者主题下的JS目录。

3、添加代码到functions文件下:

function include_media_button_js_file() {    wp_enqueue_script('media_button', 'wp-content/themes/wux/js/media_button.js', array('jquery'), '1.0', true);}

这样我们就直接给编辑器添加了可视化按钮,效果如下:

wordpress编辑器添加按钮,自定义快捷功能选项教程

相对来说,这种可视化的wordpress按钮在编辑文章时使用要更方便一下,但是添加的时候略麻烦,而上面那个文本状态下的编辑器按钮添加要更简单,使用时多一步,具体采用哪一种方式,大家可以按需食用。

添加带有文本功能的自定义按钮

这个是刚发现的,和前面的第二种方法有异曲同工之妙,但是我感觉这个效果要更好,所以现在我们有三种给wordpress编辑器添加按钮的方法了。给默认的文本编辑器TinyMCE添加自定义按钮功能。有时我们在发布文章时需要插入一些固定的内容,版权声明,固定代码等,我们就可以通过自定义TinyMCE编辑器按钮功能实现插入一段指定的文本或代码,提高效率。下面小编就把相关的实现方法分享给大家。

按钮效果如下:

wordpress编辑器添加按钮,自定义快捷功能选项教程

编辑器后台“可视化”界面功能面板中多了一个“❤”图标,鼠标放上去显示“插入下载信息框样式”,点击后会插入一个已设置的固定下载样式框。

具体操作如下:

1、首先,创建一个js文件,并用文本编辑器打开输入以下代码:

(function() {
tinymce.PluginManager.add('my_mce_button', function( editor, url ) {
editor.addButton('my_mce_button', {
text: !1,
icon: "my_mce_button dashicons-before dashicons-heart",
tooltip:"插入下载信息框样式 ",
onclick: function() {
editor.insertContent('<table><tbody><tr><td>下载地址:</td><td>download id="1632"</td></tr><tr><td>文件大小:</td><td>1.23MB</td></tr></tbody></table>');
}
});
});
})();

将其保存并命名为downstyle.js文件,注意文件编码格式为utf-8,避免出现中文乱码,然后将downstyle.js文件上传至服务器当前主题目录下的/js/文件夹下。位置在/wp-content/themes/当前主题/js

 

2、然后到主题的functions.php文件,添加以下代码:

/**
*
*编辑器自定义按钮功能—插入指定的文本 start
*
**/
// 挂载函数到正确的钩子
function my_add_mce_button() {

// 检查用户权限
if ( !current_user_can( 'edit_posts' ) && !current_user_can( 'edit_pages' ) ) {
return;
}

// 检查是否启用可视化编辑
if ( 'true' == get_user_option( 'rich_editing' ) ) {
add_filter( 'mce_external_plugins', 'my_add_tinymce_plugin' );
add_filter( 'mce_buttons', 'my_register_mce_button' );
}
}
add_action('admin_head', 'my_add_mce_button');

// 声明新按钮的脚本
function my_add_tinymce_plugin( $plugin_array ) {
$plugin_array['my_mce_button'] = get_template_directory_uri() .'/js/downstyle.js';
return $plugin_array;
}

// 在编辑器上注册新按钮
function my_register_mce_button( $buttons ) {
array_push( $buttons, 'my_mce_button' );
return $buttons;
}

/**
*
*编辑器自定义按钮功能—插入指定的文本 end
*
**/

 

3、保存并刷新

wordpress编辑器后台会发现已经多了一个“❤”图标了。

如果要实现多个插入文本按钮功能呢?

我们只需依次创建多个js文本,并上传至主题/js/目录下,然后通过 my_add_tinymce_plugin($plugin_array) 函数和my_add_tinymce_plugin( $plugin_array )函数声明注册相应的功能按钮就可以了。

以上图中的span_style按钮为例,首先创建一个span-style-button.js文件,添加相应代码并上传至/js/目录下,

然后在functions.php找到my_add_tinymce_plugin($plugin_array){}增加

$plugin_array['span_style_button'] = get_template_directory_uri() .'/js/span-style-button.js';

my_add_tinymce_plugin( $plugin_array){} 增加

array_push( $buttons, 'span_style_button' );

保存并重新覆盖上传至服务器,刷新wordpress后台就可以了。

wordpress编辑器添加按钮,自定义快捷功能选项教程

 

楚狂人 » wordpress编辑器添加按钮,自定义快捷功能选项教程

相关推荐

  • 暂无文章

评论 抢沙发

  • (必填)
  • (必填)

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏