Topic: ExpressionEngine
Notes From Our Default ExpressionEngine Build
This post is intended to build off of Doug’s Post: ExpressionEngine on Multiple Machines. So if you haven’t read that, I’ll wait for you.
All caught up? Ok, let’s go.
I’ve been lucky enough to build 3 EE sites in the past few months, so it’s given me time to look at our setup, make changes, and even to build some add-ons. I was hoping to share more about our default build, and maybe there are a few tips and tricks you might find useful.
Continue reading "Notes From Our Default ExpressionEngine Build"
ExpressionEngine on Multiple Machines
For way too long, we managed our ExpressionEngine installs the terrifying way — one server, one install, one DNS update on launch. While this might sound fine to some of you (and it did to me at one point), it’s a really bad idea in practice. Once a site would reach a certain complexity, the management process started to break down. Having a single install, a single LIVE install, makes every task twice as complex and risky. Regular backups help at first, but pretty soon you have a big ball of awfulness that no one understands and no one wants to deal with. Upgrading addons and testing new features might seem simple when your site is in its infancy, but these tasks become seriously painful on a large live site.
I held the assumption that this wasn't a process problem but an EE one — there just wasn’t a good way to have multiple copies of the same EE site running in harmony and easily syncing with eachother. It turns out I was wrong, there's actually plenty you can do to have multiple team members working with their own copies of an install and pushing to a live site. Here are a few ideas that have helped me with the process.
Building an ExpressionEngine Mini Calendar Scroller
I recently decided I wanted to add a calendar of blog entries on my personal site. Luckily, ExpressionEngine has a tag for that, the Calendar Tag. The functionality that I wanted was a little bit different from the two examples in the EE user guide. I wanted to show a calendar by month, and link the days that had an entry to that specific entry.
Continue reading "Building an ExpressionEngine Mini Calendar Scroller"
Boss Your Segments Around: Freebie, an ExpressionEngine Addon
I love how flexible ExpressionEngine URLs are — by not strictly parsing URLs, EE lets us send users to /whatever/long/url/we/want/ and find our own clever uses for the URL segments. We use this technique a lot at Viget for returning entries or specific templates, but it’s also great for setting page states, like showing unpublished entries by tacking a /preview/ segment onto a link or using /success/ to throw a "Form submitted!" message.
I recently wrote about Structure and how it gives clients more power and designers more freedom by directly assigning templates to pages. I also mentioned that it parses URLs strictly, which makes a lot of our old tricks much, well, trickier. In 1.6, we used NSM Safe Segments to 'hide' some segments from Structure and get around this issue, but the solution was less than ideal, and the upgrade to 2.0 found us searching for a new method.
Announcing Freebie
We made a wishlist of features we always wanted to see in Safe Segments, and the result is Freebie. Freebie prevents EE from parsing particular segments of your choosing, allowing you to use much more complex URLs without the risk of Structure choking on them.
Continue reading "Boss Your Segments Around: Freebie, an ExpressionEngine Addon"
A Whole New Wooooorld: Structure + ExpressionEngine
Even with the EE 2.0 release in December, I think the best ExpressionEngine event in 2009 was the rise of Travis Schmeisser's Structure. While 2.0 lays the groundwork for a bright future, in the short run it's more of a step backwards because so few of EE's amazing community-built addons have been ported so far - even with new functionality, a 2.0 upgrade takes away far more than it gives at the moment.
In contrast, the Structure module immediately makes major improvements to your site's UI, construction, and template codebase, and it also plays nice with other addons, creating a faster, smarter EE experience. No software I installed last year saved me as much time and effort as Structure did, and Travis deserves all the credit for that (and he got quite a bit, including Devot:ee's Module Of The Year award)
So what is Structure, and what about it makes EE so much better?
Structure is a module that overrides EE's URL/template setup and creates its own hierarchy of pages and "Listing" pages, along with a new interface that's meant to handle most user needs. Why is this such a big deal?
- A page is the basic unit of most websites, but in EE, there's no great way to handle them. EE developers spend a lot of time trying to simulate a page structure using templates, categories, and weblogs - which tends to make bulky, finicky sites that can be hard to extend and update. Structure brings the page concept into EE beautifully, and adds breadcrumbs, navs, and a host of other traditionally hard-to-develop features.
- Entries are now linked to templates, and not vice versa. This might not seem like such a big deal unless you've made a big EE site without it - large EE sites rely on a large number of repetitive templates, which are especially difficult to handle. With Structure, you can run a big site with hundreds of top-level pages off a handful of templates - a huge time-saver.
We had a few false starts with Structure - mostly because we were trying to bring it into existing EE sites (recommendation: don't) or use it to do the wrong things, but we eventually got the hang of it. A few pointers:
Continue reading "A Whole New Wooooorld: Structure + ExpressionEngine"
Insanely Awesome ExpressionEngine Tools You Can’t Live Without
Recently, some people have asked me how we build ExpressionEngine sites. Although how we build a site varies with each project, there are definitely certain add-ons we find ourselves using all the time. There are so many great ones out there (and new ones being released all the time) I thought it would be cool to share some of them in a blog post. Feel free to add your comments about the ones you like to use.
Continue reading "Insanely Awesome ExpressionEngine Tools You Can’t Live Without"
Google Maps jQuery Plugin with ExpressionEngine
Yesterday Carolyn blogged about a site we did for NCGives. One of their requests was to have the ability to add locations to an ExpressionEngine weblog and have them display on a Google Map. Seemed easy enough until I realized we also had to make external map controls, display content both in the map bubble and on the page, color code the map points, and auto zoom/center the map. I looked around for existing solutions, such as the SL Google Map Extension, but nothing I found did exactly what our client was requesting. I knew that one of our developers, Brian Landau, had experience with Google Maps, so I started talking to him about what we could do.
Continue reading "Google Maps jQuery Plugin with ExpressionEngine"

2011