27
Writing Your Own Plugins The basics and more Pippin Williamson pippinsplugins.com @pippinsplugins

Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Embed Size (px)

DESCRIPTION

An introduction to writing your first WordPress plugin. These are simple slides that accompanied an in-depth presentation.

Citation preview

Page 1: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Writing Your Own PluginsThe basics and more

Pippin Williamsonpippinsplugins.com

@pippinsplugins

Page 2: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

What makes up a plugin?

wp-content/plugins/my-plugin-name/

.php files

.js files

.css files

.mo/po files

image files

Page 3: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

What defines a plugin?

Page 4: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

The plugin header

wp-content/plugins/my-plugin/my-plugin.php

<?php/** * Plugin Name: My Plugin Name * Description: A simple plugin * Version: 1.0 * Author: Pippin Williamson * Author URI: http://pippinsplugins.com */

Page 5: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

The plugin header

plugins/simple-post-expiration/simple-post-expiration.php

<?php/** * Plugin Name: Simple Post Expiration * Description: A simple post expiration plugin * Version: 1.0 * Author: Pippin Williamson * Author URI: http://pippinsplugins.com */

Page 6: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

/wp-admin/plugins.php

Page 7: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Quick demo time

Page 8: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

The plugin API

Action hooks:

do_action()add_action()remove_action()remove_all_actions()has_action()did_action()doing_action

Page 9: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Quick demo timewp_footer action

https://github.com/WordPress/WordPress/blob/master/wp-includes/general-template.php#L2051

Page 10: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

The plugin API

Filter hooks:

apply_filters()add_filter()remove_filter()remove_all_filters()has_filter()current_filter()doing_filter()

Page 11: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Quick demo timethe_title filter

https://github.com/WordPress/WordPress/blob/master/wp-includes/post-template.php#L99

Page 12: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Plugins for InspirationThere are so many possibilities

Page 13: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Inspiring Dashboard

Not sure what to write about for your next blog post?

Maybe this Dashboard Widget can inspire you.

Adds a dashboard widget

Provides quick inspiration on something to write

http://wordpress.org/plugins/inspiring-dashboards/

Page 14: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Multi Site Plugins Add New

Enables the “Add New” menu under Plugins for multisite

The Add New Plugin screen is hard to get to

This plugin adds a shortcut

http://wordpress.org/plugins/multi-site-plugins-add-new/

Page 15: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

CodePen oEmbed

Adds oEmbed support for CodePen.io

The Add New Plugin screen is hard to get to

This plugin adds a shortcut

http://wordpress.org/plugins/codepen-oembed/

Page 16: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Remove Comment Notes

Removes the notes section below the comment form

The notes section can create clutter

It isn’t needed in the majority of cases

http://wordpress.org/plugins/remove-comment-notes/

Page 17: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Write First

Blogging is about writing

Sends users directly to the edit screen upon login

http://wordpress.org/plugins/write-first/

Page 18: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Simple Post Expiration

A simple plugin to add an expiration date to posts

adds an “Expires on” field to post editor

prepends “Expired” to post titles once expired

is really simple

https://github.com/pippinsplugins/simple-post-expiration

Page 19: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Items to keep in mind

Page 20: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Overall structure of the plugin

Page 21: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

How the data is stored

Page 22: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Features for launch

Page 23: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Features for tomorrow

Page 24: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Updates

Page 25: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

Backwards compatibility

Page 26: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

How the plugin will be distributed

Page 27: Writing Your Own WordPress Plugins - WordCamp Kansas City, 2014

When will you get started?