Quick Wins - BloomReach Experience - Open Source CMS

This article covers a Hippo CMS version 10. There's an updated version available that covers our most recent release.

28-05-2015

Quick Wins

The following quick wins are easy to implement and have a guaranteed benefit in the long run.

  • Always include surf & edit functionality (on EVERY page & every component)

  • Configure the view menu or for older projects: goto plugin

  • Let (admin)-users add a code-snippet to every page, e.g. in the header and/or footer component (useful for Google Analytics, temporary surveys etc.)

  • Optional: allow for a separate code-snippet on the homepage

  • When you check in new hst:pages, hst:components or hst:configurations, make sure to sort them alphabetically

  • Use the sitemap plugin, you're destroying SEO value if you don't

  • Use the HST SEO Support plugin, you're destroying SEO value if you don't

  • Use the robots.txt plugin

  • Make sure that ANY and ALL feedback to the end-user (form feedback, error-codes, subscribe mail etc.) are configurable via the CMS or console.

  • Newly created plugins should satisfy the requirements listed in Hippo Forge Quality Checklist

  • Never use blocking calls to external systems

  • Correctly configure the siteuser and sitegroup and setup the needed permissions for polls, form, etc. NEVER use admin/admin for the site.

  • Check all inputboxes for XSS and don't allow (all) wildcards in search. For example "e" will crash your site with an OOME.

  • Page not found, aka 404. pages MUST return a 404 http status code (not 200 (ok) or 500 (error))

  • All pages and CSS should be W3C valid

  • Use setLimit for HstQuery equal to pageSize. Use HstQueryResult#getTotalSize() and HstQuery#setOffset(int) for paging

  • Set CharacterEncodingFilter as the very first filter in the site web.xml

  • Make smart use of logging in debug level

Did you find this page helpful?
How could this documentation serve you better?
On this page
    Did you find this page helpful?
    How could this documentation serve you better?