Whizzy Placeholders

Placeholders can be used in Whizzy pages and Whizzy Templates. When the page is displayed, Whizzy will replace the placeholder with dynamic content.

{HERE_TAG: tagname}

Inserts the value of tagname.

Tags can be defined in the page source (with <tagname>content</tagname> ), as site variables, or query string parameters.

Built-in tags include title, head, body.

qs is the Query string [Whizzy-Placeholders]

Fields in the query string automatically become tags. For example, a query string of ?name=Emergency&phone=911 will create tags on the page called name (value is "Emergency") and phone (value is "911").

The default configuration comes with tags for 

  • sitename [Unverse]
  • tagline [Whizzy things for websites]
  • a number of tags used in the default template, e.g. headingcolor [darkgreen]

but you can add your own. Click [Settings] on the whizzbar to edit the configuration and add further tags.

Shortcut: note that, in a template,  {$tagname} can be used as a shortcut for {HERE_TAG:tagname}

{HERE_PAGE:pagename}

Embeds the content of the page with pagename. This will be another page from Whizzy, unless it begins "http", in which case it will embed any web page. You can use this as an alternative to MODULE to embed output from CGI or PHP/ASP scripts.

To create menus, simply create a page that lists all the links you want on your menu. A bullet list is good for this and the page editor makes it easy to insert links to pages by their title with a single click. Then just include the menu page in your template with HERE_PAGE.

Note that you can use a Whizzy tag as a placeholder for the pagename. For example, on unverse.net, each section has a 'local' menu listing the main pages in that section. To make that menu appear in the sidebar we include {HERE_ PAGE:{$local}} in the sidebar in the template. So the sidebar will include the content of page named by the placeholder $local. In pages in the Whizzy CMS section we added a tag: <local>Whizzy-CMS-menu</local>.
Not all pages need a local menu, so nothing is included if the local tag is empty.

Click [Advanced] in the page editor to add tags to a page.

{HERE_MODULE:modulename}

Inserts the output of modulename. Built in modules include
  • pagelist lists all the pages - provides a sitemap
  • newlist - lists pages in order of most recent changes
  • showgallery - shows a gallery of thumbnails that can be click to enlarge with a lightbox effect, provided by the Unverse javascript library

New modules can be uploaded to the modules directory.

The module is a PHP file called modulename.php, containing a function called modulename(). It should return its output. Note that you can't pass parameters in the call, but the module will have access to all site and page tags, including those set in the querystring or in POST or SESSION variables, if you include the following statement:

global $wz; extract($wz); 

making all tags available as local variables with the same name as the tag.

The module can return extra stuff to go into the HTML head (e.g. scripts, CSS) by enclosing it in <head>stuff</head>. If this is used the rest of the output should be in a <body> tag.

Note that you can use a Whizzy tag {$tagname} as a placeholder for the modulename. So {HERE_MODULE:${weekday}} will insert the output of a module named by the value of the tag weekday.