A simple Genesis child theme project for a charity event.
The crew at PressBooks asked me to customize the standard WordPress importer to behave a little differently: instead of immediately publishing the stuff from the old blog, they wanted to put the imported content into a queue and let the user select where it should go: their book’s front matter, the main chapters, or the back matter (which PressBooks has set up as custom post types). The tricky part here was adding a new bulk action — custom bulk actions aren’t supported in WordPress!
This was a simple Genesis child theme project for a consulting business.
After I finished TTI’s events site, the group asked me to make the main site’s theme responsive. I reworked the slider plugin, rearranged content for mobile, and rewrote hard-coded home page elements as widgets.
FAZD, a part of Texas A&M’s AgriLife division, is a research center focusing on animal disease. In addition to the usual news and informational pages, the site needed to showcase the Center’s research projects, tools (the finished results of past research projects, like diagnostic tests or software packages), and the people involved in them. These used to be listed by hand on standard WordPress pages, but the group wanted a more interconnected site, with links added between projects and people automatically.
The content model for this site is more complex than most, involving three custom post types — research projects, tools, people — each with a set of custom fields. People are connected to their research projects and tools via the Posts 2 Posts plugin.
There are several custom taxonomies shared across the post types, including topics, diseases, and institutions. Institutions partnering with FAZD on a research project are added to the project when a user tags them in the Edit Project screen.
The institutions taxonomy is also used for People, to indicate which one a person works for. An individual’s bio page shows their connected institutions as well as a list of the research projects they’re working on. The staff directory lists the people associated with FAZD using custom fields for the contact information.
The design is very closely based on the Genesis Education theme. It was so close to the ideal site described and sketched in our kickoff meeting that we used it almost as-is, aside from gutting the archive templates to handle the site’s complex post types and taxonomy system.
I worked with Mary Robinette Kowal to set up the Achievements plugin for the Month of Letters BuddyPress site. Members earned badges for sending various kinds of mail, and cumulative points for the number of letters or packages they sent. These were reported via a Gravity Form tied to a custom post type, with a taxonomy that provided the checkboxes for the types of mail (parcel, Valentine, overseas).
Because Achievements was in between versions when the event started on February first — 2.x was deprecated, but 3.0 was not quite out yet — I wrote several custom tools and widgets for the site. The code for each badge also had to be done by hand, since they were tied to a custom post type.
When the site’s traffic overwhelmed its shared host a few days into the event, I did an emergency migration to WP Engine, where it’s been stable (and much faster) ever since.
This group needed a site for their conference, and they needed it done in a hurry. They had a Photoshop comp from their designer, but it was a fixed width design, and they wanted a mobile-friendly site. I decided to make it responsive, and I worked with them to determine content priorities for mobile widths and rearrange the navigation menu for very small screens. We also worked quite a bit on the program schedule table to make sure all the information is accessible and clear on tablets and phones.
This was my first Genesis theme project, and I was quite pleased with the framework and the end result.
This project came along just a week or two after the Technology in Higher Education conference, and the situation was similar: a short deadline and a design in hand that wasn’t planned with responsive layouts in mind. Again, I used Genesis to get things going quickly.