Your SlideShare is downloading. ×
How I Became a WordPress Hacker
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

How I Became a WordPress Hacker

399
views

Published on

A talk given at WordCamp Milwaukee on how to use WordPress Hooks called: Actions and Filters to become a WordPress Hacker.

A talk given at WordCamp Milwaukee on how to use WordPress Hooks called: Actions and Filters to become a WordPress Hacker.


0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
399
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
3
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. How I Became a WordPress Hacker Mike Zielonka @mikezielonka
  • 2. Co-Founder and Director of Web Strategy At Tuna Traffic Loves Pizza, Dogs, More Pizza and Coffee I Am Mike Zielonka
  • 3. What We’ll Cover ● Why the struggle is part of the journey ● The basics of using Actions & Filters ● How to make a plugin for your Hooks
  • 4. Successful WordPress Hackers Can... Customize WordPress Themes and Plugins without writing a lot of code.
  • 5. The Struggle Is… ● PHP is scary ● Making your own plugin is scary ● PHP is very scary ● You just never have the options you need
  • 6. My Journey 2011 Mike “The SEO” 2012 Mike “Frameworks” 2013 Mike “The Hacker” 2014 Mike “Expert Generalist”
  • 7. Whats a Hook According to the Codex “Hooks are specified, by the developer, in Actions and Filters. “ “In technical and strict terms: a Hook is an event, i.e. event as understood by Observer pattern, invoked by the do_action() or apply_filters() call that afterwards triggers all the action or filter functions, previously hooked to that event using add_action() or add_filter(), respectively.”
  • 8. Where do Hooks Live Generally speaking, you have 3 different places where “hooks” live. ● Core ● Themes ● Plugins
  • 9. Allows you to “do something” to insert something at a “checkpoint”. Action Defined
  • 10. Action Example add_action( ‘wp_head’, ‘wc_your_function_name’ ); function wc_your_function_name() { ?> <!--hi people--> <?php }
  • 11. add_action add_action( ‘wp_head’, ‘wc_your_function_name’ ); Where You Hook In What To Add
  • 12. Adding What You Want (Writing a Function) function wc_your_function_name() { ?> <!--hi people--> <?php } Your function name PHP On and Off Your HTML
  • 13. Real Life Example //Adding A Credit Link to TwentyFourteen add_action( 'twentyfourteen_credits' , 'mz_site_credits' ); function mz_site_credits() { echo "<a href='http://iammike.co' title='mike zielonka'>Designed by Mike Zielonka</a>"; }
  • 14. Allows you to “filter the result” and return something different at a “fancy checkpoint”. Filter
  • 15. Filter Example add_filter( ‘wp_title’, ‘wc_your_function_filter_name’, 10, 2 ); function wc_your_function_filter_name($title, $sep) { $name = ‘My Site is Called ’; $title .= $sep . ' ' . $name; return $title; }
  • 16. add_filter add_filter( ‘wp_title’,‘wc_your_function_filter_name’, 10, 2 ); Where You Hook In What To Add Priority Accepted Arguments
  • 17. Returning What You Want (Writing a Function) function wc_your_function_filter_name($title, $sep) { $name = ‘My Site is Called ’; $title .= $sep . ' ' . $name; return $title; } Your function name Return your changes Arguments
  • 18. Real Life Example //Adding a Phrase the Site Title add_filter( 'wp_title', 'wc_your_function_filter_name', 10, 2 ); function wc_your_function_filter_name($title, $sep) { $name = 'My Site is Called '; $title .= $sep . ' ' . $name; return $title; }
  • 19. Where To Put Your Hooks ● Functions.php of your theme ○ Preferably in a child theme ● Plugin
  • 20. Adding Hooks To A Plugin Add Opening PHP Tag and Add A Plugin Header <?php /* Plugin Name: Mike's Sample Plugin Plugin URI: Description: Adds some sample hooks. Author: Mike Zielonka Version: 1.0 Author URI: http://iammike.co Text Domain: mz-sample-plugin */
  • 21. Putting It All Together
  • 22. Basic Rookie Tips ● Namespace your functions to avoid conflicts. ie: mz_function ● Do not start functions with numbers. ● Always take back ups. ● Learn more about the PHP function function_exists() to prevent headaches when switching themes and plugins
  • 23. Helpful Tools For Hooking Efficiently
  • 24. Google
  • 25. Debug Bar w/ Debug Bar Actions and Filters Addon
  • 26. Searching for Actions in Sublime Text 3
  • 27. Follow Me On Twitter @mikezielonka Thank You