Plugin kecil berikut ini membuat tombol kustom di dalam baris 1 dari WordPress TinyMCE Version 4, diuji dalam WP Version 3.9-beta2.
Plugin telah var_dump
disertakan untuk memahami nilai. Ini juga mungkin untuk menambahkan tombol untuk jalur lain dari editor visual, hanya hook lain, seperti untuk baris 2: mce_buttons_2
.
Hasil
Plugin, sisi PHP - tinymce4-test.php
<?php
/**
* Plugin Name: TinyMCE 4 @ WP Test
* Description:
* Plugin URI:
* Version: 0.0.1
* Author: Frank Bültge
* Author URI: http://bueltge.de
* License: GPLv2
* License URI: ./assets/license.txt
* Text Domain:
* Domain Path: /languages
* Network: false
*/
add_action( 'admin_head', 'fb_add_tinymce' );
function fb_add_tinymce() {
global $typenow;
// Only on Post Type: post and page
if( ! in_array( $typenow, array( 'post', 'page' ) ) )
return ;
add_filter( 'mce_external_plugins', 'fb_add_tinymce_plugin' );
// Add to line 1 form WP TinyMCE
add_filter( 'mce_buttons', 'fb_add_tinymce_button' );
}
// Inlcude the JS for TinyMCE
function fb_add_tinymce_plugin( $plugin_array ) {
$plugin_array['fb_test'] = plugins_url( '/plugin.js', __FILE__ );
// Print all plugin JS path
var_dump( $plugin_array );
return $plugin_array;
}
// Add the button key for address via JS
function fb_add_tinymce_button( $buttons ) {
array_push( $buttons, 'fb_test_button_key' );
// Print all buttons
var_dump( $buttons );
return $buttons;
}
Script, sisi JavaScript - plugin.js
( function() {
tinymce.PluginManager.add( 'fb_test', function( editor, url ) {
// Add a button that opens a window
editor.addButton( 'fb_test_button_key', {
text: 'FB Test Button',
icon: false,
onclick: function() {
// Open window
editor.windowManager.open( {
title: 'Example plugin',
body: [{
type: 'textbox',
name: 'title',
label: 'Title'
}],
onsubmit: function( e ) {
// Insert content when the window form is submitted
editor.insertContent( 'Title: ' + e.data.title );
}
} );
}
} );
} );
} )();
Inti
Gunakan buistge / 9758082 Gist sebagai referensi, atau unduh. Gist juga memiliki lebih banyak contoh untuk berbagai tombol di TinyMCE.
Tautan
Dan, jika Anda ingin memiliki tombol ikon yang sebenarnya, maka Anda dapat memanfaatkan dashicons, atau font ikon Anda sendiri untuk itu.
Buat file CSS, dan enqueue di sisi admin;
Pada dasarnya diambil langsung dari inti.
sumber
Metode sederhana untuk menambahkan tombol
1) TAMBAHKAN KODE INI KE FUNGSI.PHP, ATAU DALAM PLUGIN
2) Buat 1_button.php di folder target dan masukkan kode ini (perhatikan, ubah url "wp-load" dan "ButtonImage.png" !!!)
sumber