Have You Seen Hookr.io Lately?

Early last year a new online resource was launched for WordPress developers called Hookr.io. The website is described as The WordPress Hook/API Index, but it is so much more.

hookr-wordpress-resourceFast forward to today and Hookr.io has just launched a new beta layout. Not only does the website feature documentation for WordPress Core, but it also includes information on popular plugins and themes.  Hookr.io displays more than just action and filter hooks, it also includes all Classes, Constants, Functions, and Shortcodes available.  You can easily filter through the data to find exactly what you are looking for.  The new beta also features a more simplified UI and is device agnostic.

Hookr.io is a very valuable resource for all WordPress developers.   If you haven’t already, bookmark this website.  You will thank me later!

WordCamp Philly Celebrates 5th Anniversary

WordCamp Philly 2015 has been announced and this year is shaping up to be the best yet! This will be the fifth WordCamp Philly, which is an amazing milestone! There are still plenty of cities that have never had a WordCamp (looking at you Indianapolis), so I am extremely proud to see our event enter its fifth year.

rocky-wapuu-300x300So what’s the secret to organizing an event that lasts? The community. We have an amazing WordPress Community in the Philadelphia area. We have not one, but two very active Meetup groups focused on WordPress. The Philadelphia WordPress Meetup Group, which I help organize, as well as the Philly ‘burbs WordPress Meetup, which moves around each month to a different area in the Philly burbs. This community has helped us form a solid organizing team as well as an awesome group of Volunteers for the event over the years. Without a strong community WordCamp Philly would not be where it is at today.

We are planning another awesome event this year. Expect plenty of talented speakers presenting on topics for all skills levels, a few fun panels, plenty of food and snacks, and a few surprises! I will also be organizing a Philadelphia walkabout Sunday morning for anyone who has joined my #BenchPress initiative.

WordCamp Philly tickets are now on sale, so be sure to get your ticket while they last. We also have sponsorship packages available if you’d like to help support the event and promote your company to hundreds of local tech enthusiasts.

WordCamp Philly 2015 is going to be the best event yet. I look forward to seeing you all there!

Interview on WPRoundTable

Last night I was interviewed on the WPRoundTable podcast. I had an awesome time hanging out with Kyle, Jason, Kellen, and Marc. We covered a lot of topics including the start of WebDevStudios, my history of podcasting, writing books, and AppPresser/Reactor. Check out the interview below:

If you haven’t heard of the WPRoundTable podcast, you should definitely take a look. They’ve interviewed a number of amazing people in the WordPress community, including Brad Parbs and Ben Lobaugh from WebDevStudios.

I love seeing more WordPress podcasts on the scene. WPRoundTable podcast is a fun show that has a very bright future.

Multilingual WordPress Multisite Network

WordPress is hugely popular, powering over 23% of the entire internet today. As you can imagine, a good portion of these websites are not in English. Over the past few years I’ve had the opportunity to work on more multilingual sites in WordPress. One thing I have learned is that WordPress Multisite is a perfect fit for a network of multilingual sites. Each site in the network can be configured for a different language, making the administration much easier.

One of the big challenges I’ve faced is the relationship between the content across the language sites in a network. Imagine having an About page on your English site and an About page on your German site. Wouldn’t it be awesome if WordPress knew that these two pages were related? Well, now you can with an awesome plugin called Multilingual Press.

I had a chance to sit down with Caspar Hübinger at WordCamp London for a demo and I was blown away. Multilingual Press lets you create relationships between sites in your Multisite network, set a main language for each site, and start writing. When editing a piece of content connected to multiple languages, you can edit all of the language content on the same edit screen, as shown in the screenshot below. The content will then be updated in the appropriate language site in the network.

mlppro-edit-post

If you work with WordPress in different languages you need to check out Multilingual Press. It’s a multilingual game changer!

WordCamp London 2015

Next weekend I will be attending and speaking at WordCamp London 2015! This will be my third WordCamp outside of the US, with the first two being WordCamp Montreal 2009 and WordCamp Europe 2013.

wordcamp-london-2015-logoI am speaking on Sunday at 12:15pm in the Henry Thomas Room. My presentation is on Hiring Employee Number One: From Freelancer to Agency. I first gave this presentation at PrestigeConf last month and am very excited to present this to the London crowd. It’s a fun and informative presentation on lessons learned as we started and grew WebDevStudios over the years.

My wife and I are staying in the London area for a week to explore the city, art, music, food, and everything London has to offer! My last trip to London I was a teenager, and to be honest didn’t really appreciate the history a country like England has to offer. I’m excited to learn more about the history of the city and country. I am also very excited to eat yummy English food!

If you are attending WordCamp London, make sure to track me down and say hi! I’m looking forward to seeing old friends and making new ones at WordCamp London next weekend!

WordCamp Indy Needs to Happen

If you aren’t familiar with a WordCamp, it’s defined as “an informal, community-organized events that are put together by WordPress users”. WordCamps are amazing events for all types of WordPress users. Whether you’re an avid blogger, or advanced developer, a good WordCamp will have something for you.

indianapolis-river-walkIndiana has never had a WordCamp. Being a WordPress fanboy, and born and raised in Indiana, this makes me extremely sad. Most major cities in the United States have had multiple WordCamps at this point, but sadly Indiana hasn’t had a single one. This needs to change.

WordCampIndy.org and the @WordCampIndy Twitter account have been squatted on for years by a company called WatershedStudio. They stated planning for WordCamp Indy was underway back in 2008, but the event never happened. I would really love to see WordCamp Central put some pressure on the owners of the site and Twitter account to hand them over to someone who will actually help organize an event.

The one thing that WordCamp Indy really needs is a leader to step up and take charge. I am willing to support a WordCamp Indy as much as possible. I will sponsor, apply to speak, help volunteer, and promote the event to the entire WordPress Community. The one thing I can’t do is help organize, because that responsibility should fall on locals.

Are you interested in seeing a WordCamp Indy happen? Leave a comment and let’s make WordCamp Indy a reality!

Detecting a Large Multisite Network in WordPress

If you have ever worked on a very large Multisite network in WordPress, you probably understand the challenges of working with large sets of data. WordPress contains a function to help you detect a large network, wp_is_large_network(). This function accepts a single parameter $using, which sets whether to count users or sites. If your network is either more than 10,000 users or more than 10,000 sites, the function will return true. Let’s look at an example:

<?php
if ( wp_is_large_network( 'users' ) ) {

    //this network has over 10,000 users

}elseif ( wp_is_large_network( 'sites' ) ) {

    //this network has over 10,000 sites

}
?>

This function is extremely handy if you are trying to work with large sets of data. When working with Multisite, and WordPress in general, you should always write code that can scale. You can also easily alter the large network criteria using the wp_is_large_network filter.

WordPress Multisite is an extremely powerful feature of WordPress. Understanding the tools available when working with Multisite will help you build amazing, and stable, WordPress networks.

PressNomics 2015

Current status: On an airplane flying to sunny Phoenix, Arizona for PressNomics 3! PressNomics is an awesome event that focuses on the commercial side of WordPress. The event is self-described as “The conference for those that power the WordPress Economy” and that statement couldn’t be more true. PressNomics is a who’s who of respected professionals and companies making a living from WordPress.

pressnomics-logo
The event has been one of my favorites to attend since the first PressNomics. The presentations are always top-notch, but what I really enjoy the most are the hallway conversations. I love talking shop, so to have the opportunity to brush shoulders with so many like minded people in our industry is an insanely valuable experience.

I’ll be attending this year with Lisa Sabin-Wilson and Dre Armeda representing WebDevStudios and Maintainn. If you are attending this year make sure you track me down and say hi! A good spot to start looking is at SanTan Brewery. :)

If you have not had the opportunity to attend PressNomics, and are involved in the commercial side of WordPress, I strongly recommend you plan on attending. After all, do you really need an excuse to visit Phoenix in the Winter?

A Brief History of WordPress News and Podcasts

There has been a lot of discussion around the future of WordPress news and podcasts. The Professional WordPress book series spans 5 years (crazy!), so I thought it would be fun to take a look back at what WordPress news sites and podcasts were featured in each edition and which ones still exist today.


Professional WordPress 1st Edition

(Released April 5th, 2010)

WordPress News Sites

  • WordPress Tavern – ACTIVE (http://wptavern.com) – The grand old man of the WordPress news industry, the WordPress Tavern is going stronger than ever.
  • WPVibe.com – DEAD (http://wpvibe.com) – The WordPress Vibe had a short lifespan and stopped publishing content in the Spring of 2011.
  • Weblog Tools Collection – DEAD (http://WeblogToolsCollection.com) – An older site dedicated to WordPress and blogging in general. The site was purchased by Matt Mullenweg in 2013 and is kept online as an archive only.
  • WPEngineer.com – DEAD (http://WPEngineer.com) – Not as active as it once was, the WPEngineer.com site contains some good coding tips and tricks around WordPress.
  • WordPress Podcasts

    • WordPress Weekly – ACTIVE (http://wptavern.com/wordpress-weekly) – The official WordPress podcast of the WordPress Tavern.
    • WordCast Podcast – DEAD – A WordPress podcast that was hosted by Dave Moyer and Kym Huynh. The archive has since been removed and is no longer available online.
    • The WordPress Podcast – DEAD (http://www2.webmasterradio.fm/wordpress-community-podcast/) – A podcast hosted through WebmasterRadio.fm featuring Joost de Valk and Frederick Townes. The last episode aired in February 2011.
    • Plugins: The WordPress Plugins Podcast – DEAD (http://www.pluginspodcast.com) – The original WordPress podcast dedicated to plugins. The podcast ended in May of 2010.


    Professional WordPress 2nd Edition

    (Released January 4th, 2013)

    WordPress News Sites

    • WPCandy – DEAD (http://wpcandy.com) – One of the largest and most successful WordPress news sites, WPCandy stopped publishing new content in 2013.
    • WP Realm – DEAD (http://wprealm.com) – A WordPress news site with a prominent WordPress community member staff of writers. Publishing ended in 2013.
    • WP Force – DEAD (http://wpforce.com) – The WP Force is a WordPress news site that was actively publishing fresh content through early 2014.
  • WPEngineer.com – DEAD (http://WPEngineer.com) – Not as active as it once was, the WPEngineer.com site contains some good coding tips and tricks around WordPress.
  • WordPress Podcasts

    • WP Late Night – DEAD – A WordPress focused podcast hosted by Ryan Imel, Dre Armeda, and me! WP Late Night was the precursor to the DradCast.
    • WPCandy.com Shows – DEAD (http://wpcandy.com/shows/) – WP Candy produced a number of different WordPress focused podcasts. All WP Candy podcasts ended in 2013.


    Professional WordPress 3rd Edition

    (Released January 12th, 2015)

    WordPress News Sites

    • WordPress Tavern – ACTIVE (http://wptavern.com) – Only one of two WordPress news site to make two editions of Professional WordPress, WP Tavern saw a rebirth when the website was purchased by Matt Mullenweg in 2013.
    • Post Status – ACTIVE (https://poststatus.com) – Post Status is a WordPress news site ran by Brian Krogsgard. The site has traditional focused on long-form news articles, but has recently expanded with more news options.
    • ManageWP.org – ACTIVE (https://managewp.org) – A social news aggregator, ManageWP.org features WordPress related news that is up voted by the community.
    • Torque Mag – ACTIVE (http://torquemag.io) – Debuting in 2013, Torque Mag is a WP Engine publication that focuses on WordPress news.

    WordPress Podcasts

    • DradCast – ACTIVE (http://dradcast.com) – The #1 late night WordPress podcast, hosted by Dre Armeda and myself. The show is recorded live every Wednesday evening at 8pm EST.
    • WordPress Weekly – ACTIVE (http://wptavern.com/wordpress-weekly) – The only WordPress podcast to make two editions of Professional WordPress, the WordPress Weekly podcast is back with regular weekly episodes.
    • WP Water Cooler – ACTIVE (http://www.wpwatercooler.com) – A round-table style podcast feature prominent WordPress community members discussing hot topics of the week.
    • Matt Report – ACTIVE (http://mattreport.com) – A WordPress podcast focused on topics including business, startups, and entrepreneurs.
    • Apply Filters – ACTIVE (http://applyfilters.fm) – The only active WordPress development focused podcast, hosted by Pippin Williamson and Brad Touesnard.


    It’s pretty amazing to see how many WordPress news sites and podcasts have come and gone over the years. WP Tavern and WPEngineer.com are the only news websites that made two editions of Professional WordPress. WordPress Weekly is the only podcast to make two editions. WordPress news and podcasts are a vital part of our community and have been since well before Professional WordPress was released.

    Here’s hoping to many more repeats, and new entries, in future editions of Professional WordPress!

WordPress Checked and Selected Functions

Two of my favorite functions in WordPress are the checked() and selected() functions. Both of these functions are extremely useful whenever you are working with form elements in your plugins and themes so it helps to understand both of these little nuggets of goodness. These two functions are used the same way, but output different results.

The selected() function compares two values in a select list and if they are identical will set the current option value to selected. This is useful when displaying form fields (an options page for example) and want to determine whether an option is set or not. Lets look at an example:

<select>
    <option value="red" <?php selected( $option_value, 'red' ); ?>>Red</option>
    <option value="orange" <?php selected( $option_value, 'orange' ); ?>>Orange</option>
    <option value="blue" <?php selected( $option_value, 'blue' ); ?>>Blue</option>
</select>

Assuming the $option_value variable is equal to the value of “orange”, the following HTML would be generated

<select>
    <option value="red">Red</option>
    <option value="orange" selected="selected">Orange</option>
    <option value="blue">Blue</option>
</select>

The checked() function works exactly the same, in that it compares the two values and if they are identical it sets the current checkbox form element to be checked.

<input type="checkbox" name="rage_mode" <?php checked( $rage_mode, 'on' ); ?>/> Rage Mode<br /> 
<input type="checkbox" name="ninja_mode" <?php checked( $ninja_mode, 'on' ); ?> /> Ninja Mode<br /> 
<input type="checkbox" name="zombie_mode" <?php checked( $zombie_mode, 'on' ); ?> /> Zombie Mode<br /> 

Let’s assume that Rage mode and Zombie mode are activated. The following HTML would be generated:

<input type="checkbox" name="rage_mode" checked="checked"/> Rage Mode<br /> 
<input type="checkbox" name="ninja_mode"/> Ninja Mode<br /> 
<input type="checkbox" name="zombie_mode" checked="checked"/> Zombie Mode<br /> 

There is also a lesser know function in WordPress called disabled(). This function checks two values and if identical returns the disabled attribute for any HTML element.

For more information on these functions, and many more useful WordPress functions, check out my newest book: Professional WordPress Third Edition.