Toolbar feature [core]

We want to support a movable toolbar that floats over the content. This way we can allow users to access all sorts of administrative features without losing screen real estate (i.e. a menu at the top or bottom...)

The toolbar should have tabs to allow for quick browsing of different features. For example, one of the tabs should be something like "Meta Data" that allows you to enter the description, abstract, location, copyright, authors, etc. all sorts of information about your post.

The following is the current list of things we want to offer in the toolbar. Obviously, plugins will have the ability to add their own links to let users work on said plugin administration screens. Actually, a lot of the online administration is done via the toolbar instead of special pages (exceptions might be when dealing with a large list of content.)

The following sample works with a Drupal website so the toolbar itself is NOT what we want. In Drupal you are automatically sent an administrative screen instead of handling most of the administrative tasks with AJAX directly in the toolbar.

Sample Toolbar, here the Admin tab is selected.

Global Settings

Website Status

Define the current status of the website (i.e. on, off, etc.)

Website Theme

Select the global theme for the entire website. Pages, page types, etc. can override this setting. We may want to have a feature where we stip out all those intermediate selections.

Site Wide Meta Tags

Although these may not be presented as meta tags, that's where such data would appear. Some meta tags are global to the entire website. For example, you can have an RSS feed that you want to show on all pages which is in additional to the usual feed (i.e. a comment feed.)

Examples of site wide tags are: Location information (city, zip code of the business), copyright information (i.e. Copyright 2004-2012 by Made to Order Software Corp.), and in some cases the name of the author when one person does it all...

Site Tracking Information

Whether pages of this website are tracked. This is generally where you want to put your Google Analytics identifier.

Type Settings

While editing a page of a given type, that type can directly be edited. I guess we can offer a button to go to a page where we can select and tweak any one type...

Type Theme

Select the theme used for all the content assigned this type. This selection should include all the available themes.

Type Meta Tags

Details about this type of data. Note that these meta tags will appear in all the pages using this type. This could be a different language definition (although that's generally handled in a different way), or a location assuming that type of a page represents such a thing.

Type Tracking Information

Whether pages of this type are tracked.

Page Settings

Page Theme

The theme for this very page. This is an override of the information defined in the page type (Type Theme) and the site information (Site Theme.)

Page Meta Tags

Details about the page being viewed. This entry especially includes a "brief" description of the page. The description length should be constrained to about 3 lines of text as most search engines only offer that much feedback from your page. Note that the description for a page is NOT offered at the type or website level because it is not a good idea to use the same description on all pages.

Also, any details about the page that can be added in the meta tags should be.

Note that if some Type Meta Tags exist, it should be easy to either overwrite them, append to them, or revert back to them. Similarly, if we have some Site Wide Meta Tags we want to overwrite, append or revert that data.

Page Tracking Information

This entry is to define whether a page should be tracked and how it should be tracked. For example, a page could be tracked by Google Analytics and some other similar tool. On a per page (type, site) basis, you can define whether tracking is enabled or not.

There are some other information that can be setup in a page for indexing and following links. (i.e. the ROBOTS NOINDEX and NOFOLLOW, along with some other features such as NOODP...)

Implementation

We have the menu. It does not yet get presented in a form that would look like a movable toolbar though.

Snap! Websites
An Open Source CMS System in C++

Contact Us Directly