Book Image

WordPress Plugin Development: Beginner's Guide

Book Image

WordPress Plugin Development: Beginner's Guide

Overview of this book

If you can write WordPress plug-ins, you can make WordPress do just about anything. From making the site easier to administer, to adding the odd tweak or new feature, to completely changing the way your blog works, plug-ins are the method WordPress offers to customize and extend its functionality. This book will show you how to build all sorts of WordPress plug-ins: admin plug-ins, Widgets, plug-ins that alter your post output, present custom "views" of your blog, and more. WordPress Plug-in Development (Beginner's Guide) focuses on teaching you all aspects of modern WordPress development. The book uses real and published WordPress plug-ins and follows their creation from the idea to the finishing touches, in a series of carefully picked, easy-to-follow tutorials. You will discover how to use the WordPress API in all typical situations, from displaying output on the site in the beginning to turning WordPress into a CMS in the last chapter. In Chapters 2 to 7 you will develop six concrete plug-ins and conquer all aspects of WordPress development. Each new chapter and each new plug-in introduces different features of WordPress and how to put them to good use, allowing you to gradually advance your knowledge. This book is written as a guide to take your WordPress skills from the very beginning to the level where you are able to completely understand how WordPress works and how you can use it to your advantage.
Table of Contents (14 chapters)
WordPress Plugin Development
Credits
About the Author
About the Reviewer
Preface
Index

Interacting with tinyMCE


tinyMCE is a popular web-based WYSIWYG editor which WordPress uses for rich-text post editing. tinyMCE has a JavaScript interface which we will use to access common functions such as inserting the text directly to the editor.

Time for action — Insert the link into tinyMCE

  1. Edit the insights.js file and add the functionality to insert the HTML directly into tinyMCE:

    // Insights for WordPress plugin
    // send html to the editor
    function send_wp_editor(html)
    {
    var win = window.dialogArguments || opener || parent || top;
    win.send_to_editor(html);
    // alternatively direct tinyMCE command for insert
    // tinyMCE.execCommand("mceInsertContent", false, html);
    }
    function insert_link(html_link) {
    if ((typeof tinyMCE != "undefined") && ( edt = tinyMCE. getInstanceById('content') ) && !edt.isHidden() ) {
    var sel = edt.selection.getSel();
    if (sel)
    {
    var link = '<a href="' + html_link + '" >' + sel + '</a>';
    send_wp_editor(link);
    }
    }
    }
    // setup everything...