While posting about my DrawBot adventures, I’ve become increasingly annoyed with my own post series WordPress plugin. If only it had a simple button in the WordPress editor to drop the shortcode for an existing series, it would instantly become so much better. Thus inspired, I delved into WordPress.org and sought out the answers. What I discovered is that while it’s not particularly difficult to add a button to the WordPress text editor, it didn’t seem to be very well documented. I’m still working on how to add a graphical button to the WordPress TinyMCE visual editor, so stay tuned for that. I was ultimately able to glean the necessary information from the WordPress “Quicktags API. However, for your sake1 I’m distilling what I’ve learned right here.
First, I’ll give you an overview of what we’re going to do. If you’re looking to add a button to the WordPress editor, it’s probably because you’re working on a plugin. Thus, I’ll assume you have a working knowledge of plugin development. Your plugin will need to include, at a bare minimum, one action hook and one function which performs the double duty of creating the button and giving the button some kind of ability.
// This action adds a script to the script footer on administrative pages
add_action( 'admin_print_footer_scripts', 'MBSS_quicktags', 100 );
// This is the function that is run at the end of the administrative pages in the script footer
// Optional database interactions
// I used this section in my plugin to run a query on the database and return information that would be used in the button
// Creates button in the text editor
QTags.addButton( 'MBSS_tag_id', 'Add Series', MBSS_add_series_js );
// Function to append the series shortcode to the end of the post
editor = document.getElementById('content');
editor.value = editor.value + "\n" + "EXAMPLE TEXT TO APPEND TO END OF POST";
- A nifty little WordPress plugin...
- i find i want to add more posts in some random series, just so i can use my new plugin
- Simple Series WordPress Plugin
- My first published WordPress plugin! Simple Series!
- This is a test of the Simple Series post system... This is only a test
- Now Simple Series will also add the series list to RSS feeds too!
- ZOMG! Simple Series is going viral!
- Simple Series with SEO! after just one day
- Simple Series - Half-Life; Market Research
- Plugin Considerations
- Simple Series WordPress Plugin Update
- How to add a custom button to the WordPress editor
- How to add a custom button to the WordPress Visual TinyMCE Editor
- And, frankly, for my own future use [↩]