Announcing the new ISDA.org

I’m the Director of Web Development at ISDA, a trade organization whose goal is to make the global derivatives markets safer and more efficient. I started there a little over 6 years ago, just after they had launched a new site. The design was contemporary for its time. The codebase was built on top of a custom CMS developed by three separate development firms in the Ukraine. There were some interesting design decisions in the codebase, and a lot of hacks that had been implemented to “just make it work.

Continue reading...

How to set up a local WordPress Vagrant development environment

Setting up a Vagrant box can be painstaking. Here is the process: Install a basic box. SSH into said box. Run a command. If it works, add the command to a provision file. Destroy your box. Run the box again and see if the command works via a provisioning file too. Whether it works, or doesn’t work, back to step 2 and try a new command or try the same command another way – depending of if it worked or not.

Continue reading...

How to see if a class was added to an element using JavaScript

If you need to see if a class has been added to an element the easiest way is to trigger a new event when you add the class. $(this).addClass(‘someClass’); $(mySelector).trigger(‘cssClassChanged’); The problem with this solution is what happens if you do not have control over the function where this happens. Like if it happens in the WordPress core, and you know that you should never ever change code in the core.

Continue reading...

Refactoring a WordPress plugin, Object-oriented, a start

I recently dissected an Object Oriented WordPress plugin boilerplate. This exploration was part of a project I am undertaking to explore best practices for implementing Object Oriented principles in WordPress development. When it comes to implementing coding principles, I’m generally not a purist — I aim to be utilitarian. One of the dictums I drum into my team is: “Make it work, then make it work well.” Do not take that to mean I’m sloppy, the second half of that statement holds as much weight as the first.

Continue reading...

Why doesn’t flush_rewrite_rules() work on my plugin?

One common issue that people run into when using custom post types in their plugin is that the pretty permalink structure doesn’t seem to take hold on plugin activation. When adding new paths into the permalink structure, like with a new custom post type, you typically need to run flush_rewrite_rules() in order for them to take hold. One common piece of advice people give is to visit the Permalinks page in the Settings menu in wp-admin.

Continue reading...

Watch the video of my WordCampNYC talk!

WordPress: YOUR World, YOUR Data Watch it on WordPress.tv The slides

Continue reading...

WordPress: Your World, YOUR Data – Slides

I’ll be giving at talk at WordCamp NYC tomorrow, here are the slides for anyone who would like to follow along. I’ll be posting more notes and links later this week. Some links: “If you’re not paying for it…” “trust no one with your business success“ “software is the oil“ Ozh’ Tweet Archiver Things every developer should know Other data My Twitter Feed backed up CSV importer for Ozh Twitter Archiver Assets Press WordPress Traverse Digital IFTTT If Tag Then Post Places I’ve been feed

Continue reading...