Development Archives

  1. Big WordPress Patch: Remove “stripslashes” from API Functions

    For the last month or so I’ve been working on a patch to move the “stripslashes” functionality from the WordPress “model” API functions to the “controller” code (where it belongs). This change will mean that you don’t have to call add_magic_quotes() around your data when passing it to wp_insert_post(), wp_insert_user(), etc. As hardly any developers…

  2. How to Safely Use Plugin Functions in a Theme

    I feel like I’d be remiss if I didn’t add this to the conversation. I’ve seen some people indicating that calling plugin functions in themes is a bad idea (here’s an example comment to that effect). I think this is going too far – including a call to a plugin in a theme is fine…

  3. Viewing Source on the Nexus 7

    If you want to “view source” for an HTML page on the Nexus 7, you can do so in Chrome by prepending “view-source:” to the URL. Example: view-source:http://alexking.org This will also work (it redirects to the http:// verision): view-source:alexking.org This also works in the desktop versions of Chrome and Firefox, but doesn’t seem to work…

  4. The Right Way to Include a Plugin in a WordPress Theme

    In our FavePersonal theme we integrated the excellent Social plugin from MailChimp and included an option to turn it on or off. Most importantly we did it in a way that still allows the Social plugin to be installed and updated independently. We made sure that we implemented this in a manner that: respected users’…

  5. Standing on the Backs of Cockroaches

    I love Open Source. It’s great that someone has already solved so many of my problems for me; complete with bugs I might have written when solving the problem for the first time. Outline work to be done for Feature X. Begin work on Feature X. Find bug in some other library. Fix bug. Return…

  6. Carrington Core and Globals

    Carrington Core1 loads template files through a function rather than including them directly within the global scope. This means that global variables need to be explicitly brought into scope rather than just being there and available to you. I’ve considered this a feature, because it means that you’re much less likely to stomp on an…

  7. Social 2.5 Sketches

    Broadcast sketch

    I’ve already professed my love for Paper1, and one of my primary usages is for wireframing UX models. I used it for a few of the improvments we added in Social 2.5, and thought it might be fun to share a couple of them here. One of the biggest changes we made was an overhaul…

  8. Cart66 Vulnerability Follow-up

    Cart66 released a new version this morning, addressing the vulnerability I posted about yesterday. A one-day turn-around to address a security issue is excellent (even if the stink from 9 months of inattention hasn’t fully dissipated yet). I’m disappointed I had to resort to a public warning to get action but glad that action was…

  9. Streamline FavePersonal with a Child Theme

    We’ve just released version 1.0.1 of FavePersonal, which has a few minor updates. There’s one in particular that I think will be particularly useful: we’ve added a link to download a the style.css file you need to create a child theme (with your currently selected colors) from the Theme Settings page in FavePersonal. While I’m…

  10. FavePersonal: Colors

    FavePersonal Color Settings

    One of the most fun features of FavePersonal is experimenting with different color palettes. We’ve made it easy to experiment with different colors and find a set that makes your site feel like it’s your own. No need to fiddle through dozens of color pickers, you can choose from full color palettes, preview them, and…

  11. Carrington Themes on GitHub

    As part of our move to Git, we now host our WordPress code on GitHub. Carrington Core was moved over a while ago and I finally finished migrating the rest of the themes from their old home on Google Code. The themes are being renamed: Carrington Blog is becoming FaveBlog Carrington Text is becoming FaveText…

  12. Git Submodules are not SVN Externals

    One of the biggest hurdles I had to get past in order to use Git efficiently was getting my head around the differences between SVN’s externals and Git’s submodules. Since our migration from SVN to Git, I’ve seen other folks on our team working through the same hiccups I had initially. I thought the following…

  13. SVN to Git Migration

    A couple of weeks ago we shut down the Crowd Favorite office for a day and a half to do a migration from SVN to Git. This was not a small undertaking. We had nearly five years of code in a single SVN repository that was then broken out into literally hundreds of Git repositories.…

  14. TechStars Boulder Early Application Deadline: Feb 26th

    If you’re planning to apply for TechStars Boulder for this summer (2012), make sure you’ve got your application ready to go for the early application deadline in 2 weeks. It’s been amazing to see TechStars grow and thrive as it has. The experience offered to the teams and the quality of the mentors is remarkable;…