php 微小的mce自定义按钮
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 微小的mce自定义按钮相关的知识,希望对你有一定的参考价值。
/**
* Created by Simon on 9/14/2017.
*/
(function () {
tinymce.PluginManager.add('my_mce_button', function (editor, url) {
editor.addButton('my_mce_button', {
icon: false,
type: 'menubutton',
text: 'CTA - knop',
onclick: function () {
editor.windowManager.open({
title: 'CTA knop invoegen',
body: [
{
type: 'textbox',
name: 'tekst',
label: 'Knop tekst'
},
{
type: 'textbox',
name: 'link',
label: 'Knop link'
}
],
onsubmit: function (e) {
editor.insertContent('[ctaknop tekst="' + e.data.tekst + '" link="' + e.data.link + '"]');
}
});
}
});
});
})();
// Hooks your functions into the correct filters
function my_add_mce_button() {
// check user permissions
if ( !current_user_can( 'edit_posts' ) && !current_user_can( 'edit_pages' ) ) {
return;
}
// check if WYSIWYG is enabled
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');
// Declare script for new button
function my_add_tinymce_plugin( $plugin_array ) {
$plugin_array['my_mce_button'] = get_template_directory_uri() .'/assets/js/mce-button.js';
return $plugin_array;
}
// Register new button in the editor
function my_register_mce_button( $buttons ) {
array_push( $buttons, 'my_mce_button' );
return $buttons;
}
// Add Shortcode
function ctaknop_shortcode( $atts ) {
// Attributes
$atts = shortcode_atts(
array(
'tekst' => 'tekst',
'link' => 'link',
),
$atts
);
return "<a class='btn' href='$atts[link]'>$atts[tekst]</a>";
}
add_shortcode( 'ctaknop', 'ctaknop_shortcode' );
以上是关于php 微小的mce自定义按钮的主要内容,如果未能解决你的问题,请参考以下文章
php 微小的MCE Anpassung
php 微小的mce wp删除属性
php 微小的MCE
在php文件中标记MCE按钮,所以我可以翻译它
黄聪:wordpress如何扩展TinyMCE编辑器,添加自定义按钮及功能
WordPress的编译器功能扩展