How to Get Involved in the WordPress Project

Recently at WordCamp Melbourne, Ryan McCue said the following to all attendees:

If everyone simply contributed just one thing to the WordPress project, then WordPress would be infinitely better.
Ryan McCue

Please pause, and think about that for a second.

Going back a few years, there seemed to be a heavy focus on core code being the primary way to contribute to the WordPress open source project.

However in recent times, I’ve noticed a lot of effort has been put into helping the community contribute to the project in other ways (such as documentation, events, or support).

The WordPress Foundation has recently posted a great summary on how you can get involved in the WordPress project.

Regardless of whether you’re using WordPress for business or personal reasons, I strongly suggest you have a read of the article, which lists these teams/areas that you can get involved in:

  • Accessibility
  • Community
  • Core (testing, bug reporting, code wrangling)
  • Documentation
  • Events (WordCamps, meetups, etc)
  • Meta (wordpress.org)
  • Mobile ((iOS, Android, Windows Phone, and BlackBerry apps)
  • Polygots (translations)
  • Plugins
  • Support
  • Themes
  • UI (user interface design & development)
  • Updates (news / blog posts)

In my case, so far I have helped out with WordPress core (bug reporting & fixing), documentation, events, plugins, suport and updates.

However I haven’t been contributing as much as I would like to. I’ve only used six of the thirteen ways that I could be contributing, so there’s definitely still room for improvement!

How are you planning on contributing to the WordPress project?

Copy your ssh public key to a server from a machine that doesn’t have ssh-copy-id

A very simple (one command) way of copying your SSH public key to a remote server.

cat ~/.ssh/id_rsa.pub | ssh user@machine "cat >> ~/.ssh/authorized_keys"

or im my case:

cat ~/.ssh/id_dsa.pub | ssh user@machine "cat >> ~/.ssh/authorized_keys"

(replace user@machine with your SSH username and server hostname)

I’ve previously tried to do this using a manual copy-and-paste method, but it is error prone because the key quite often gets split over multiple lines.

Using this method helps ensure that your SSH key gets copied over completely.

Thanks to commandlinefu.com for this idea.

New in WordPress 3.6: the attachment_url_to_postid() Function

If you’re writing a WordPress plugin, you may have a scenario where you have an attachment (file) URL, and you’d like to obtain the associated post (attachment) ID.

Luckily, this is very easy to do in WordPress 3.6 because of the new attachment_url_to_postid() function.

The function’s syntax is simple – you pass it a string (the file URL), and it returns an integer (the associated post id), or zero on failure.

Here’s a simple example:

As mentioned above, this function is available in WordPress 3.6 – it will cause a fatal error if you try to use it in any earlier versions such as WordPress 3.5.x.

Thanks to Zack Tollman for the heads up about this handy new function.

Better Mobile Detection with WordPress’ wp_is_mobile() Function

Although WordPress themes typically use Responsive Web Design to tailor website for mobile devices, there is sometimes a need to use PHP (backend code) to detect whether the visitor’s web browser is running on a mobile device.

For example, there may be scenarios where you may want to output certain HTML markup (such as a mobile navigation menu) on mobile devices.

Alternatively, you may only want to output a slider containing large images on desktop and not mobile devices. Doing this via PHP (instead of CSS) means that the visitor’s mobile browser won’t have to download all of the slider images even though the slider is never displayed.

WordPress’ wp_is_mobile() function to the rescue!

wp_is_mobile() is a litte-known function built into WordPress that detects whether the visitor is using a mobile devices such as iPhone, iPad, Android, Silk, Kindle, BlackBerry, Opera Mini, and Opera Mobi.

The function was introduced in WordPress 3.4, and it can be used in a WordPress plugin or theme.

It's a simple function that accepts no parameters, and returns a simple boolean (true/false) value.

Here's a simple example:

Interestingly, WordPress core currently uses this function in a few different places:

  • To completely disable the Visual Editor for Opera Mini.
  • To enable jQuery UI Touch Punch in the WordPress dashboard for mobile devices.
  • To detect whether the current device can upload files.
  • To disable the "shake" effect on the WordPress login page when an incorrect username or password is entered using a mobile device.

Are you currently using the wp_is_mobile() function in your plugin or theme? If so, I'd love to hear what your use-case is.

WordCamp Melbourne 2013

It’s been two years since I helped organise WordCamp Melbourne 2011. Time flies!

The good news is that WordCamp Melbourne 2013 has been scheduled for April 27-28 2013.

WordCamp is a conference for WordPress enthusiasts, designers, developers, or anyone who is using WordPress for business or pleasure.

This year’s conference is being organised by a fantastic group of people, and they’re going to be putting on a fantastic WordCamp.

The speaker list and schedule is jam-packed, and the venue is in the CBD so it’s easy to get to.

So if you’re in (or near) Melbourne, I’d definitely recommend coming along.

Best of all, tickets are only $50 for two full days of WordPress goodness!

I'm Attending WordCamp Melbourne 2013

Amazon Web Services now in Australia (Sydney)

Big news this morning:

Amazon Web Services has just launched an AWS region in Sydney, Australia!

The new Asia Pacific (Sydney) region supports almost all of AWS’ services including EC2, RDS, S3 and many more.

After launching an Australian Edge Location in June 2012 for Route 53 and CloudFront, I (along with many other Australian developers) have been waiting for AWS to launch a fully-fledged Australian region.

Whilst there are already some Australian-specific Cloud Computing offerings, this is a big day for us now that the AWS juggernaut has launched here.

Rackspace (another large cloud computing provider) has previously committed to launching a Syndey-based datacentre in 2012, however we are yet to see that launch.

Overall, I think that more competition in the Australian cloud industry can only be a good thing for us. It’s likely to help drive down the high costs of Australia’s high bandwidth/data.

Onwards and upwards!

WordPress User Groups in Australia – Some Statistics

Below are some statistics that demonstrate how popular the WordPress user groups are in Australia:

Location Population Number of
Group Members
% of Population
in Meetup Group
Hobart 216,276 93 0.0430%
Bendigo 89,666 23 0.0257%
Brisbane 2,146,577 342 0.0159%
Sydney 4,605,992 661 0.0144%
Melbourne 4,169,103 516 0.0124%
Canberra 367,752 42 0.0114%
Adelaide 1,262,940 81 0.0064%
Perth 1,832,114 66 0.0036%
Wollongong 288,101 9 0.0031%

As you can see, Hobart has the highest percentage of their population being a member of their user group. Well done Japh!

Here in Melbourne, it looks like we have some work to do.

Population Figures are sourced from Wikipedia as of 10 October 2012.

Number of Group Members Figures were sourced from each meetup.com group page as of 10 October 2012.

Rackspace to Launch Sydney Datacentre in 2012

Rackspace have just announced a Sydney-based datacentre, to be live by the end of 2012:

I’m looking forward to seeing increased competition in the Australian Cloud Hosting arena. Your turn now, AWS? :)

Update 22/8/2012 3:10pm: Rackspace have published details on the Sydney datacentre here.