WordCamp Hamilton 2018 is coming!

WordCamp Hamilton (@WordCampHamOnt) returns to McMaster Innovation Park on Saturday, June 2, 2018.

WordCamps are casual, locally-organized conferences covering everything related to WordPress, the free and open source personal publishing software that powers over 75 million sites on the web. WordCamps come in all different flavours, based on the local communities that produce them, but in general, WordCamps include sessions on how to use WordPress more effectively, beginning plugin and theme development, advanced techniques, security, etc.

The first WordCamp was organized in San Francisco by Matt Mullenweg in 2006, and since then local communities around the world have organized hundreds of others. The first WordCamp Hamilton took place in 2013, with additional events happening in 2015 and 2016.

The regularly occurring WordPress meetup group has done a fantastic job of keeping up momentum around the WordPress community in Hamilton. The next few meetups will be focused on gearing up for WordCamp.

Currently, WordCamp Hamilton is looking for local speakers and sponsors to help make this year’s event another success.

Looking for local speakers!

Do you work with WordPress and have some techniques, experiences or stories that you think might benefit others? If so, we’d love to have you consider sharing that information as a speaker. We’re always looking for local speakers to contribute. For more about speaking at WordCamp (including some topics if you want to speak, but aren’t sure what about), check out our call for speakers.

Sponsoring WordCamp 2018

Simply put, without our generous sponsors, WordCamp Hamilton would not be affordable to the vast majority of the WordPress community. For just $20 our attendees have a full day to gain insight from our speakers, network with others, and learn more about the open source WordPress project whose mission is to democratize publishing through Open Source, GPL software. All of our valued sponsors, by donating to WordCamp Hamilton, continue to make this mission a reality. Thank you both to our sponsors, and all of those who sponsor WordCamps around the world! For more on sponsorship opportunities, check out our Call for Sponsors.

To stay updated with news about WordCamp Hamilton 2018 for ticket sale dates, volunteering opportunities and more, visit 2018.hamilton.wordcamp.org.


WordPress meetup this Thursday


When: Thursday March 23rd 2017 from 6:30pm to 9:30pm

Where: CoMotion on King at 115 King St East, Hamilton, Ontario

Organzier: WordPress Hamilton meetup

Register: meetup.com/WPHamOnt/events/237905024



Join us for our next meetup! Come and meet other WordPress users, developers, bloggers and more in and around Hamilton.


Adam will be giving a demo of Local by Flywheel, a free tool that makes spinning up a local WordPress site incredibly easy.

If you’ve ever wanted to try editing a theme, or creating a new theme or plugin, working on a local development environment is a must. But this has traditionally been difficult for people just starting out.



6:30pm – doors open, networking

7pm-7:30pm – news, presentation

7:30pm-8pm – networking, discussing WordPress, Q&A

8:pm-? – Post-hangout beverage(s) – TBA

Grab a coffee, tea or soft drink before heading up at one of the nearby cafés.


WordPress meetup this Wednesday



When: Wednesday April 27th 2016 6:30pm – 8:30pm

Where: CoMotion on King @ 115 King St East, Hamilton, ON

Register: meetup.com/WPHamOnt/events/230092608

Organizers: Adam Wills (@adamwillsdev) and Brian Hogg (@brianhogg)


Join us for our next meetup! Come and meet other WordPress users, developers, bloggers and more in and around Hamilton!


WordPress and Newsletters


6:30pm – doors open, networking
7pm-7:30pm – news, presentation
7:30pm-8pm – networking, discussing WordPress, Q&A
8:pm-? – Post-hangout beverage(s) – TBA

Grab a coffee, tea or soft drink before heading up at one of the nearby cafés.


First batch of WordCamp speakers announced

Hamilton’s annual WordPress conference WordCamp Hamilton is taking place on Saturday June 4th at McMaster Innovation Park!

The first batch of speakers has been announced – check out the line-up below!





1My name is Ben Cool and I work for A2 Hosting as the Application Optimizer / WordPress Evangelist. I have three kids and live across the lake in Ann Arbor, MI, USA. I have given presentations on System Administration topics at WCCBUS and WCA2. I am a co-organizer for WordCamp Ann Arbor in charge of volunteers and contributor day. I am a member of the WordPress.tv team (no badges). As a developer for a Hosting company, I am responsible for developing internal tools and websites as well as performance optimization tools for customers such as A2 Optimized (https://wordpress.org/plugins/a2-optimized-wp). Attending the WordPress community summit was a highlight for me last year.



2Ryan Welcher has been a web developer for over 12 years and over the course of his career has had the opportunity to work with many coding languages, frameworks and technologies. He is currently a Senior Web Engineer at 10up where he builds enterprise level WordPress themes and plugins. In his spare time you may find him contributing to WordPress core, reading up on a new technology or spending time with his wife and three children.



3I’m a front-end developer from Burlington. I’ve been making websites for over twenty years, and WordPress themes for nearly ten! I spend most of my time with Object Oriented CSS, experimenting with streamlining workflows, and optimizing tools. I currently lead a team of developers at Carpages.ca, and love to nerd out about keyboards.



4Kathleen Farley is a computer geek, teacher, learner, vinyl junkie, hockey fan, and recovering non-profit executive. Occasionally she breaks (and fixes) computers. Not necessarily in that order.

The Montreal-born technologist trained as an audio engineer before moving to Hamilton, Canada in 2007. She now runs Maisonneuve Music, a Hamilton-based independent record label.

Kathleen has been teaching web technology and data management to beginners since 2009 under the moniker Robobunnyattack! She’s currently a bestselling web technology course author on Udemy with over 11,000 students. She also serves on the faculty at Harris Institute, a private music industry school in Toronto where she teaches future rock stars how to make websites and other cool things.

Along with her partner Michael Chambers, Kathleen is the co-founder of Audiohackr, a startup that helps indie musicians, producers, and DIY labels make the most of technology.

Udemy: https://www.udemy.com/u/robobunnyattack/
LinkedIn: https://linkedin.com/in/kfarley



5I am involved in content creation and management in a number of ways. I work in communications at TD Bank, write weekly posts for two eCommerce blogs (SellwithWP.com and ShopStorm.com/blog), and have done copywriting for websites through a marketing agency. I finished my bachelors degree with a focus on communications from University of Toronto.

You can find my social profiles on jaisangha.com



6Marie Wiese is founder of Marketing CoPilot, a leading Canadian digital marketing agency that helps companies’ increase sales using digital and content marketing. In addition to running Marketing CoPilot, Marie is also an Executive-in-Residence at the Innovation Factory, a Regional Innovation Centre in Hamilton, Ontario where she coaches early stage companies on how to develop digital go-to-market strategies. Marie is author of The Essential Guide to Better Content Marketing and other related marketing guides. She is an entrepreneur, keynote speaker, mom and writer. Marie has spoken at industry events for the Canadian Marketing Association and Marketing Sherpa in the United States. She can be found online at https://ca.linkedin.com/in/marketingcopilot



7I am a certified scrum master, passionate about Agile methodology and frameworks, over 15 years of experience on software and web development, I enjoy to work on teams sharing ideas to produce optimal results and release valuable products through WordPress as main development platform. www.marcelogranados.com


WordPress meetup this Wednesday

When: Wednesday March 16th 2016 6:30pm

Where: CoMotion on King @ 115 King St East, Hamilton, ON

Register: meetup.com/WPHamOnt/events/229040083

Organizer: Hamilton Ontario WordPress Meetup


Join us for our next meetup! Come and meet other WordPress users, developers, bloggers and more in and around Hamilton!


This month Robert Vidal will be going over ways to help secure your WordPress site! Whether your a blogger or a developer we’ll discuss things to do to keep your site from being hacked or otherwise exploited.


6:30pm – doors open, networking

7pm-7:30pm – news, presentation

7:30pm-8pm – networking, discussing WordPress, Q&A

8:pm-? – Post-hangout beverage(s) – TBA

Grab a coffee, tea or soft drink before heading up at one of the nearby cafés.


January WordPress Meetup next week



When: Wednesday January 20th 2016 from 6:30pm to 9:30pm

Where: CoMotion on King @ 115 King St East, Hamilton, Ontario

Register: meetup.com/WPHamOnt/events/227443511


Join us for our next meetup! Come and meet other WordPress users, developers, bloggers and more in and around Hamilton!


6:30pm – Doors open, chatting WordPress

7pm – Presentation

7:30pm-? – More chatting WordPress! Maybe some ping pong at Serve downstairs…


How to start selling digital products in WordPress using Easy Digital Downloads

Originally posted on brianhogg.com


There’s more than a few options when selling your ebook, artwork, WordPress plugin or other digital product, but since Easy Digital Downloads has been recommended a bunch of times, I decided to set this up for the pro version of my Event Calendar Newsletter plugin.

While some of these instructions are specifically for a WordPress plugin, you can ignore those steps and upload your digital products to start selling without worrying about things like license keys.

Here’s the steps I did to get from nothing to selling!

Install Easy Digital Downloads

Add this plugin easily by going to Plugins then Add New and searching for Easy Digital Downloads.

easy digital downloads install

Add Your Plugin as a Download

Once installed and activated, go to Downloads then Add New.  Enter the title of your plugin then scroll down to the Download Prices section.

easy digital downloads download prices

In my case, I’m adding three different options for the purchase based on the number of sites you’d like a license for – 1, 3 or 25.

Scroll down a bit more and you’ll see the option to upload the file that customers would download once they’ve completed the purchase.

easy digital downloads files

Here you can specify the downloaded filename, upload the file, and select which price assignment (in my case Personal, Business and Developer) that file applies to.  In my case because it’s the same plugin for all of them, I just select All for the price assignment.

You can also specify any download notes users should see but I’ll leave this blank for now.

Hit Publish and the product download is now created, but we’ll need to specify other important stuff like the payment gateway customers will use to pay you.  And taxes so the government doesn’t get angry at us.

Specify Payment Gateway Options

I’ll initially use PayPal though Stripe and other methods are available using extensions.  You’d need an SSL certificate set up on your site to use most of them, though.

Head over to Downloads then Settings.  On the General tab specify where your store is located, and what currency you’ll charge in.

Then hop over to the Payment Gateways tab where you can specify PayPal as the payment option along with your email address:

easy digital downloads payment gateway settings

Specify Tax Options

The government wants their cut, so you’ll want to make sure the tax settings are correct based on where you’re selling from and who you’re selling to.

I have it set up for sales from Ontario, Canada where I only charge taxes to other provinces, but not to other countries.  Again, I’m not an accountant, so be sure to check with one so you don’t end up on the hook for a tax bill at the end of the year!

Specify Miscellaneous Options

I left these the same except for specifying to redirect to checkout immediately when adding to cart.  This way they don’t need to separately click to the Checkout page in order to pay.


You can also add certain Terms and Conditions they need to agree to.  I’ve added some text from a recent article on distributing premium plugins that basically says if they distribute my plugin (which they can legally do under the terms of GPL), I can revoke their access to support and updates.

Adding the Add to Cart Button

While you could use the download page created when you added the download, typically you want to create a separate marketing page and have the Add to Cart button within it.

To do this I’ll add a new page called “Pro” to give details on the pro version.  Near the top there’s a button to Insert Download:

easy digital download insert download

In the popup I can specify the options like the type of link to download along with the button colour.  I’ll add it in as a button tag rather than an anchor link and make it orange:

easy digital download insert-download-popup

Once I click Insert Download the shortcode will be added to my page:

[purchase_link id="8" style="button" color="orange" text="Purchase"]

I can add additional text about how cool my plugin is above and below the purchase button.  It’ll show up like this on the page:

easy digital download inserted-purchase-button


Switch to a Prettier Pricing Table

While this radio button method works, I’ve like to make it look a lot better and highlight the features using a nice looking pricing table.

Instead of using a form to select the option between Personal, Business and Developer, you can use a link in this format:


Replacing “8” (the download_id) with the ID of your download post, which you can find by looking at the shortcode you just inserted into the page:

[purchase_link id="8" style="button" color="orange" text="Purchase"]

Here id=”8″ gives us the id of 8 to use in our link.  The last part of the link is the “2” which is the price option.  If you only have one, this would be 1 (Personal in my case), 2nd would be 2 (Business option) and 3 would be the Developer option.

Now that we know how to build the links, I added the Responsive Pricing Table plugin to add a nicely formatted pricing table to the page:

Responsive Pricing Table

Once installed and activated, go to Pricing Tables then Add New.  Enter the option(s) you have for your plugin, along with the different features.  Usually best to keep the number of features in the table to a minimum so people don’t get confused reading them all, and have only 1-2 key differentiators between the plans (ie. Number of sites you can activate the plugin on).

For the button link values, use the checkout links we created above, one for each price option you have:

pricing table button links

After saving the pricing table, click Pricing Tables then All Pricing Tables and copy the shortcode for the table you just created:

pricing table shortcode

And finally go back to your “Pro” page, delete the shortcode you inserted before via the Insert Download button (the [purchase_link … ] one), and paste the pricing table shortcode you copied.  Save and you’ll see something a lot prettier like this:

I marked that second one as “Recommended” by checking the appropriate box to highlight that option a bit more, and changed the plan colour to black for the first and last from the green to further highlight the middle-of-the-road Business option.

Add a “Your Account” Page

Create a new page called “Your Account” and add the following:



This will add in the purchase history along with a way to edit their profile information. If they’re not logged in, they’ll see a login form.

Add this page to your site somewhere like your site’s menu (Appearance then Menus).

Set up a Transactional Email Sending Service

Customers will get upset if they don’t get their receipt or license keys by email, and relying on how emails are sent by most hosting providers is a bad idea.

If you’re on a shared hosting service (which most under $100/month are), setting up something like Mandrill to send your transactional emails out is a must.

Ensure Your Downloads are Protected

You’ll likely get a warning if your hosting provider is running NGINX, which will not protect the downloads.  WPEngine is one of those providers, but fortunately you can set up a redirect within WPEngine to protect the files easily.

Configuring License Keys for your Plugin

From the above, we’re already ready to take customer monays via Paypal but if you’re selling a premium WordPress plugin, you’ll want to have license keys generated so only licensed plugin users receive ongoing updates.

Fortunately this is easy using the Software Licensing extension to Easy Digital Downloads.  They’ll provide a sample plugin when you purchase so you can see how to integrate the license key system with your own.

Periodically Check if License Key Is Still Valid

While the sample plugin with the Software Licensing extension is great to get the basic functionality in place, it will never expire the license.  You can ping to see if the license key is still valid periodically with a hook similar to this one:

function ecn_pro_check_license() {
    if ( get_transient( 'ecn_pro_license_checking' ) )

    $license = trim( get_option( 'ecn_pro_license_key' ) );

    $api_params = array(
        'edd_action' => 'check_license',
        'license' => $license,
        'item_name' => urlencode( EDD_ECN_ITEM_NAME ),
        'url'       => home_url()

    // Call the custom API.
    $response = wp_remote_post(
            'timeout' => 15,
            'sslverify' => false,
            'body' => $api_params

    if ( is_wp_error( $response ) )
        return false;

    $license_data = json_decode(
        wp_remote_retrieve_body( $response )

    if ( $license_data->license != 'valid' ) {
        delete_option( 'ecn_pro_license_status' );

    // Set to check again in 12 hours
        ( 60 * 60 * 12 )
add_action( 'admin_init', 'ecn_pro_check_license' );

Where ecn_pro_license_key is where you’re storing the license key and ecn_pro_license_status is where you’re storing the current license status.

I’m working on a newer version of the sample plugin that comes with the Software Licensing extension to Easy Digital Downloads, which will be on my github when finished.

Other Useful Easy Digital Download Extensions

Stripe Gateway

Let’s you accept payments through Stripe instead of redirecting off to another page.  You’ll need an SSL certificate which any good host can help configure for you.

Sales Recovery

Sends a reminder email if someone abandons your website before completing their purchase.


Automatically adds new customers to your MailChimp mailing list.


Now that you have a product ready to sell, and a site configured to sell it, start marketing!


Like this article? Sign up for Brian’s mailing list

WordPress Hamilton meetup this Thursday



When: Thursday November 19th @ 7:00 PM

Where: Imagination Plus @ 69 John St S #304 Hamilton, Ontario

Register: meetup.com/WPHamOnt/events/226089957

Organizer: @brianhogg


Join us for our next meetup! Come and meet other WordPress users, developers, bloggers and more in and around Hamilton!

Presentation: Using Timber and Twig for Rapid, Clean WordPress Development by Emily Horsman

“Timber helps you create fully-customized WordPress themes faster with more sustainable code. With Timber, you write your HTML using the Twig Template Engine separate from your PHP files. This cleans-up your theme code so your PHP file can focus on supplying the data and logic, while your twig file can focus 100% on the display and HTML.”

Source: Timber Website

Emily Horsman works at Wise & Hammer where she provides client support, internal tooling, and helps build and maintain WordPress themes. She’s used WordPress for years and has been developing themes and plugins for a few months. When she’s not learning or writing code, she can be found tweeting about advocacy and random Internet stuff at @emilymhorsman.


WordCamp Hamilton 2015 a sold out success

WordCamp Hamilton 2015 took place on Saturday June 7th at McMaster Innovation Park and the event was a sold out success. WordCamp events are grassroots organized WordPress focused conferences that have been taking place around the world for years. Hamilton had it’s first WordCamp in 2013 and the event was back this year after a one year hiatus.

This year’s edition was particularly awesome for having both a developer track and a blogger/designer track. Though there is plenty of overlap, there’s a large difference between the needs of bloggers looking to optimize their WordPress site (e.g. SEO, social media, site performance, etc.) and developers (building plug-ins, development tools, etc.). As someone more on the developer side of things, it made the event much more valuable for me.

I was able to grab these links below to talk slides in the developer track. Other speakers either didn’t mention links to slides, or I couldn’t find them online.


Topic: A Modern WordPress Developer’s Toolkit
Speaker: Adam Wills (@heavymetaladam)
Slides: adamwills.github.io/WordCamp2015

Topic: High Voltage – Building Static Sites With WordPress-Managed Content
Speaker: Nickolas Kenyeres (@knicklabs)
Slides: bird-house.ca/high-voltage-building-static-sites-with-wordpress-managed-content

Topic: How To Set a Vagrant Development System
Speaker: Paul Bearne (@pbearne)
Slides: slideshare.net/pbearne/vagrant-26890922

Topic: WordPress Accessibility – the fundamentals of Web Accessibility
Speaker: Jordan Quintal (@JordanQ416)
Slides: docs.google.com/presentation/d/1BCLAeCGvCZl9BnybNZnv_myEBNHg9eNFMqNfdOP8fhs (YouTube video)

Topic: Speed up your WordPress website
Speaker: Alan Lok (@alan_lok)
Slides: slideshare.net/alanlok1/speeding-up-your-wordpress-site-wordcamp-hamilton-2015


Overall the event was fantastic in terms of the community that came out, the connections formed, and the talk content itself. The speakers came from across Ontario (and Buffalo / New York State), which is great in terms of cross-pollinating with different communities and ideas. The event was also a fantastic value at just $20. No wonder it sold out!

If WordCamp Hamilton 2013 was a starting point for the WordPress community, WordCamp 2015 has shown how much it has grown since then. WordCamp Hamilton 2015 was amazing, if you’re interested in joining the local WordPress community check out the meetup group. Looking forward to WordCamp Hamilton 2016!












Interview with Brian Hogg about WordCamp Hamilton 2015

Check out the interview below with Brian Hogg (@brianhogg) about the upcoming WordCamp Hamilton 2015 conference!


brianhoggTell me about yourself.

I’m lots of things – a custom software developer, WordPress trainer, podcaster and help support communities through events like the Hamilton Freelancers Association and the WordPress Hamilton group. I grew up in Burlington and went to Mac, and has been great seeing communities like Software Hamilton grow the last few years.


How long have you been working with WordPress, and why do you use it?

About 5 years or so now. Even after meeting WordPress co-creator Mike Little at a conference a while back, I still continued on with other PHP-based frameworks and didn’t give it a serious look. But after being contracted to convert a Joomla plugin over to WordPress I discovered how powerful of a platform it can be for sites of any size, and has been my primary tool of choice since then.


What are WordCamp events about?

WordCamps are conferences that focus on everything WordPress. They’re informal and community organized, and are a great way to learn new skills and connect with others in the community.


When is the next WordCamp Hamilton, and how can people find out more information?

The next WordCamp Hamilton is happening Saturday June 6th at the McMaster Innovation Park. Tickets are only $20 and you can find more information and grab a ticket on the website here: hamilton.wordcamp.org/2015




Why did you and the organizing team decide to re-boot WordCamp in Hamilton?

It started from kicking up the regular monthly WordPress Hamilton meetups last year, and growing the community that way. There’s been a lot of interest in getting it going again but rather than try to rush it through last year we aimed for 2015.


What can attendees expect at this year’s iteration of WordCamp?

We’ll have two tracks this year, a more introductory track and a more advanced development/design track. There will be lots of opportunities to connect with attendees with a catered lunch, and an after-party event happening in the atrium right after the last session.




What sort of talks do you expect the development track to feature?

We’ve got some awesome talks coming through, from leveraging the new WordPress REST API to using WordPress to build web apps for a startup. A couple talks on setting up modern tools for WordPress development like Vagrant for consistent environments, composer for dependency management and deployment tools like Capistrano are also confirmed.


Why does having a strong WordPress community matter for Hamilton and the regional tech/startup community?

A lot can be done using WordPress even without development skills, by leveraging existing themes and plugins. The more people that are knowledgeable in WordPress and can add value to their own business or the business of others, the better.


How can the local community help the WordCamp team make the event a success?

Certainly spreading the word about the event, especially to developers. Since there were no advanced topics at the last WordCamp it might be overlooked as not a good fit for developers to attend, but it’ll definitely be worth it this year even if you don’t use WordPress for development currently.




Where do you see WordPress going as a platform in the future?

The flexibility of WordPress makes it a great choice for developing web apps of all sizes, using at little or as much of the WordPress base as you want. With things like the REST API going into core and other initiatives, along with powerful plugins like WPtouch allowing for an optimized adaptive experience for mobile and tablet users, I can see it becoming the development platform of choice for even more projects than it is now.


Freelancer meetups, WordPress meetups, WordCamp, Discover HamOnt podcast – what inspires you to do all of this stuff? 🙂

I’ve been pretty inspired by all the people I’ve been able to meet through the events and the podcast. Hamilton is awesome and I’m happy to give back and spread the word however I can 🙂