It’s no secret that I’m a huge fan of the Perch CMS – it’s super lightweight, does exactly what you want a CMS to do and is an absolute dream for a designer to work with. And up until now, the only gripe I had with Perch was that it was somewhat difficult to deal with when it came to SEO.
I’d had the idea to create some Perch-specific SEO content area templates for a while and finally had reason to when working on the redesign for Burger Lounge. By meeting with a search engine optimization agency and using Simon Clay’s initial work as a jumping off point, we’ve created a good solid system for adding SEO information on a page-by-page basis to your new or existing Perch CMS driven website.
disclaimer: I am by NO MEANS an SEO expert. Far from it.
To use this template, do the following…
1. Download the perch_seo_and_meta.zip file here.
2. Add the <?php perch_content(‘Perch Meta’); ?> tag to your site’s page, in the same area from where you call your meta information.
3. Add the page_seo.html file to your /perch/templates/content dir.
4. Refresh your page from the user side, and the Page SEO field should show up as a template choice in the Perch admin.
Now, specifics about these templates…
• I added a Page Title meta area to the very top of the template – though a lot of SEO folks say Title and Page Title are the same, there’s some weight behind the TITLE being weighted for use by the human user & the META TITLE being used by the bots. META TITLE will show up in search results higher, so I like to just go ahead and add both. Research shows that there are no penalties for using both.
• You don’t need an Author tag in the template, reasoning behind this is because that Author info should not change from page to page. Author info is included in the master php slug at the top of your page called _meta.php (which I’ve included for you use in the .zip). It looks like this:
• Speaking of that _meta.php file, it will aggregate the following info (in this order):
– CMS generator
– Perch Template
– Refresh rate (at 300) *
– Copyright Line (including .php call to keep your current year info current)*
– Author Tagline *
– Revisit Call *
* everything asterisked can be universal to all pages, so should remain the same for ease of implementation.
Then, in all your .php pages you call the _meta.php page just after the <title> tag. I’ve also included a sample index.php page for reference.
A note about robots: I’ve always found it best to use the “follow everything, index everything” school of thought. So to achieve a <meta name=”robots” content=”all,index,follow,” /> tag, set the Robots section of the template as such:
And lastly, when you finish adding all your meta info thru the template, be sure and set these fields to be accessible by Admins only.
Your everyday site users should be set up as Editors, not Admins – and by restricting access to the SEO settings, you’ll keep curious backend users from undoing all your hard work.
Let me know if you use this on any projects, I’d love to hear your feedback! If you have any suggestions on changes or modifications to my templates or methods, post a comment, I’d appreciate your input!