As you may have noticed, this site has been redesigned recently, and I mentioned in the announcement that I'd talk about some of the work that went into the process. So in this first instalment of what might be a two or three-part series, I'm going to talk about some of what's going on under the hood in (the) ExpressionEngine. In the other parts, I'll cover topics relating to design in general, and aspects of the front-end development. In terms of how sites normally get built, that's a bit backwards, as integrating your design and content into the CMS usually comes last, but most of what I'm going to discuss here relates to Stash, which seems to be a bit of a hot topic at the moment.
Hero Framework is billed as
a white label, open source PHP website content management system (CMS) and development platform which shares the same CodeIgniter framework as ExpressionEngine. It is developed by Electric Function who also created Membrr, the only add-on for EE that (currently) handles subscriptions.
As much as I love ExpressionEngine, sometimes it isn't the right fit for a project, and often it's because it provides more power and flexibility than a site really needs. Sometimes you just need something a bit simpler. Or sometimes you get a project that the site owners don't want a CMS for, but as a developer, it's quicker to build the site with one. So this year, I began looking at some CMSs that I could use an alternative.
Yesterday I was working on the planning of a new site to be built with ExpressionEngine and was wondering about the best way to let editors link to other entries from within the body of an entry they're creating or editing. ExpressionEngine doesn't have this sort of functionality built into it by default so I asked on Twitter to find out if anyone knew of any add-ons that had been created that might do this.
With ExpressionEngine you give your clients a lot of power and flexibility to update the content of their own site, but at some point in a site's life there's going to come a time when changes will be required that the site owner or his/her staff can't do themselves via the control panel. Changes to a logo or other graphical elements of the site, adding new sections or functionality, giving the site a new 'skin' or theme, or completely rebuilding from the ground up will require a designer of developer to get involved.
Recently I came across a sitution whereby I wanted to call a list of Wordpress posts from inside the body of another post, i.e., not coding it into a template, but embedding into the body of the post itself.
Not a big drama, I thought to myself: I already have the exec-php plugin installed to enable the execution of PHP from within Wordpress posts, so all I needed to do was call the Wordpress loop from the point inside the post where I wanted my list of links to appear, e.g.:
<ul> <php $my_query = new WP_Query('cat=XX'); while ($my_query->have_posts()) : $my_query->the_post(); ?> <li><a href="<php the_permalink(); ?>"><php the_title(); ?></a></li> <php endwhile; ?> </ul>
If you use TinyMCE in your Content Management System (CMS) projects, you no doubt also give clients the ability to add images and links to their content with TinyMCE's Link and Image buttons. But by default, these popup windows come with a variety of fields into which unsuspecting clients can input values which will translate into unwanted code when delivered to the page.
- The client specifically asked for AJAX to be used.
I've come across a few little solutions/fixes recently to various problems I've encountered when building sites with ExpressionEngine (EE) that I thought it would be worth sharing. A couple of these were tips I picked up from other posters on the EE forums and the third was one I came up with myself to solve a particular problem I had.