Category Archives: Code

A fitVids do-over

FitVids.js is a jQuery plugin used to create fluid videos. It helps makes video embeds from YouTube, Vimeo and a number of other sources display nicely on responsive sites.

FitVids calculates the ratio of a video, wraps it in a div and sets the padding to enforce a ratio. A typical 4:3 YouTube embed starts as:

<iframe 
  width="420" height="315" 
  src="//www.youtube.com/embed/btPJPFnesV4" 
  frameborder="0" allowfullscreen></iframe>

Continue reading A fitVids do-over

Five common WordPress patterns I avoid

I write quite opinionated front-end code. It’s one of the advantages of working in the industry for around twenty years, I know what does and doesn’t work. Working in a rapidly developing industry long term has taught me to be open-minded too, to listen to new ideas and to be prepared to adapt them. I’ve learnt the only constant is change.

That said, despite my opinions I dislike declaring something an anti-pattern or is considered harmful. If there was one function in WordPress I could rename, it would be doing_it_wrong.

The five common WordPress patterns that follow are five patterns I avoid when developing themes and plugins. Below I explain why I avoid them, I’d love to know which of these ideas work for others. Continue reading Five common WordPress patterns I avoid

Preparing for WordPress 4.4 comment form changes

As detailed on the Make WordPress blog, the order of comment fields will change in WordPress 4.4, scheduled for a December 2015 release.

This may affect your theme if the comment form doesn’t use the typical layout of one field above the other.

Preparing your theme for the release of WordPress 4.4 will require your CSS allow for two version of the comment form: comment field last (current) and comment form first (future).

Continue reading Preparing for WordPress 4.4 comment form changes

Responsive Web Design MVP

This is not another responsive web design equals web design post. That particular debate is largely answered every time an m-dot link is shared on Twitter or Facebook.

Ethan Marcotte’s landmark A List Apart article defined responsive web design as having three technical ingredients:

  • fluid grids
  • flexible media
  • media-queries.

It’s often argued that modern responsive web design requires more than these three ingredients. Continue reading Responsive Web Design MVP

Unobtrusive Comment Reply JavaScript for WordPress

I’ve decided to rewrite the JavaScript in the comment-reply.js file used on the front-end of WordPress sites with threaded comments enabled. The version included in WordPress uses inline events, I’m rewriting it to be unobtrusive.

I’ll be submitting a patch back to WordPress core once it’s done. It’s available as a plugin if you want to start running it on your site early.

Removing Google Analytics referrer spam

Referrer spam is one of the more frustrating developments on the web in recent years. The premise is simple enough, a site owner sees a new referrer in their analytics and visits the website in question to investigate the source of new traffic.

The page in question does not contain any such links and instead advertises anatomical enhancements or attempts to install malware on the visitor’s computer.

Of the top ten referrers to my site in Google Analytics, seven are spammers. It’s an annoyance more than anything, all the same I’m trying a technique to kill it dead once and for all. Continue reading Removing Google Analytics referrer spam

Plugin dependencies in WordPress, a user’s perspective

Ryan McCue has started a discussion around plugin dependencies in WordPress, Gary Pendergast has responded. Ryan thinks it needs to be solved, Gary doesn’t – but if he did, would solve it a different way.

As a user, I don’t want to be exposed to security issues in orphaned code.

Each of them go into some technical details, some of which I understand, others which go over this front-end developers head. I was going to leave the following as a comment on Gary’s post, but it strayed a little off topic so I decided to post it here: Continue reading Plugin dependencies in WordPress, a user’s perspective