Search

Hi folks

I’m new to Symphony and working on a plan to get my existing website to this CMS. I have a mix of dynamic blog-like pages and very static pages and pages with dynamic and static elements. So I’m asking what would be best practice for static pages.

In the example website of Symphony there is the About page which seems to be a static page. The page’s content there is hardcoded into the XSL template. For me I’d more like to have it in the database like the articles of a blog.

So I thought of a section “static pages” or something like that containing a field for every section in the HTML document: header, main, sidebar etc.

Are there other ideas to get this done or is there even a best practice?

Greets, Bastian

For me I’d more like to have it in the database like the articles of a blog.

Is there any particular reason for that?

There are several ways you can do this:

Create a section such as “Page Content” with something like a single Textarea to hold your content (perhaps using the Markdown text formatter so you can make basic HTML if you need) and a Page Select Field. This will create a drop-down list of all Pages in your site. You can create an entry for each page, and then a Data Source filtering this field on the $current-page-id parameter.

Alternatively skeary’s recent Page Fields bundles this up into an extension which might provide more flexibility.

I use the first option a lot — it means I can define more fields for my pages such as title, meta description and so on.

On many of my projects, I have 2 or more levels of static pages just as you describe. I use Nick’s first option as well. You can then use those ‘static page’ entries to create a navigation datasource.

Thanks a lot for these recommendations. I guess I’ll go on with Nick’s first idea.

@Nils: For me it’s more comfortable to manage static page content like this and not to have to scuff through all the code.

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details