Welcome to Gowon Designs CMS - a single file, template independant, PHP and MySQL powered, standards valid Content Management System ( http://en.wikipedia.org/wiki/Web_content_management_system ). GDCMS empowers your website with dynamic pages, dynamic menus, multi-user interface, file manager, and articles with comments. It is able to work with any existing XHTML template with little tweaking. There is an included guided installation to make setting up even easier.
Before installing, please check that your server meets the minimum system requirements:
Apache ( http://www.apache.org/ ) Server
PHP ( http://www.php.net/ ): Hypertext Preprocessor, version 4.x or greater
MySQL ( http://www.mysql.com/ ) database, version 3.23 or greater
Apache, MySQL and PHP are all Open Source applications and freely available. They come preinstalled on Mac OS X 10.2.8 and later; they can be installed both on Windows and Linux OS (detailed info can be found on their respective websites) and they form the most widely used database server setup on the Internet today. For best result in a local server environment though, we suggest that you use a dedicated server stack ( http://en.wikipedia.org/wiki/List_of_AMP_Packages ) (applications bundle): LAMP (Linux), MAMP (Mac) and XAMPP (Windows) are the recommended stacks at this time.
To view directions for each step, click on the headers. Please review every section.
Multiple instances of GDCMS can be ran on the same server, but they must be located in different folders and have different database table prefixes in order to run properly.
It's very easy to create your own GDCMS templates, and it is really simple to turn nearly any pre-existing template into a GDCMS-ready template. All templates consist of an index.php file that may link to other external files (StyleSheets, images, etc.). If you are modifying a pre-existing template and it uses an index.html file, just rename it.
<?php session_start(); include("core.php"); ?>
This piece of code must be included on the FIRST LINE of your template file. This code initializes GDCMS and is needed to run.
<?php content(); ?>
This function is needed to display the main content generated by GDCMS. This should be placed where you want the main content to go, but it can be placed anywhere in your script.<?php title('<SEPERATOR>'); ?>
This is the internal title function. It is used to generate dynamic titles and meta keywords and descriptions. The optional seperator argument can be used to change the seperating characters between your site's title and slogan.<?php value('<VALUE>'); ?>
The value(); function allows you to display values set in your System Settings. This includes title, slogan, version, site_email.<?php menu('<NAME>'); ?>
This displays the dynamic menus created by GDCMS. You can use multiple menus on the same page; just select the name of the menu (See Using Menus).
<?php breadcrumbs(); ?>
This creates content breadcrumb navigation trail ( http://en.wikipedia.org/wiki/Breadcrumb_(navigation) ).
<?php search(); ?>
Thi creates the search bar. The display of the search bar can be completely manipulated through CSS.<?php login(); ?>
This creates a dynamic link to the Admin Panel. The text of the link will display "Login"; when the user logs in it will change to "Admin".<?php extra('<NAME>'); ?>
This is used to create extra content sections in your template. The name establishes the space, and all extra content made to work in that named space will display there (See Extra Content Areas).
These can all be used multiple times within your template with no problems, though the content(); function should only need to be used once.
All of the content generated by GDCMS is intended for XHTML Strict ( http://www.w3.org/MarkUp/#xhtml1 ) and Transitional designs. When selecting and creating templates, it is always a good idea to have Standards Valid designs.
You can get to the access panel by typing ?admin at the end of your website's URL. If your website is http://www.mywebsite.com/, then the admin panel would be located at http://www.mywebsite.com/?admin. You can only access the the portions of the admin panel that you have permission to (See Managing Users).
There is a log placed on the top of the Administration panel main page. This log is useful for saving bits of information for later or to communicate little details between users in the system. The log visibility and dimensions can be modified by editing the .logdiv class in your CSS stylesheet. To hide this from the admin panel, all you need to do is add this to your stylesheet:
.logdiv { display: none; }
If you have the proper permissions, you will see the link to change the System Settings under the Administration section of the Admin Panel. These settings control the general behavior and output of your website, including the title, meta tags, and various formatting options. Each option contains a short description on what that setting affects.
As the default administrator, you have the power to create new users and control what pieces of the interface that they have access to. From the Administration Panel, you can click on Add New or Manage Users to add or edit users. When you create a new user, you must provide a username, email address, and password (there are no restrictions placed on the length or complexity of the passwords you create, but longer tedious passwords are more secure).
When a user is deleted, the content that the use has created needs to be reassigned to a new user. You have the option to either reassign the content or delete it all along with the user information.
Next, You add and fill in the fields to create menu items. Every columns has two fields. The first field is the name of the menu item, and the second field is the URL of the item.
To use a dynamic menu in your template, simply include this PHP tag:
<?php menu('####'); ?>
Simply replace '####' with the name of the menu you want to include. The default GDCMS menu is main, and in the default template the code is:
<?php menu('main'); ?>All of the dynamic menus utilize unordered lists and are customizable through css. The name of the menu is turned into a CSS, and can be customized in your stylsheet. You can edit the main menu using the following names:
ul.main
ul.main #menutitle
ul.main #active
ul.main #last
ul.main #edit
To customize other menus, just change "main" to the name of the menu you want to use.
The article list and content view can be formatted in the System Settings using HTML and special reference tags to include specific information from articles:
<h1><a href="?article.[SEF_TITLE]">[TITLE]</a></h1><h2>by [AUTHOR] at [DATE]</h2><p>[BODY]<br />[COMMENT] [EDIT]</p><h1>[TITLE]</h1><h2>by [AUTHOR] at [DATE] [C=C]</h2><p>[BODY]</p> [EDIT]The panel used to create content (pages and articles) are browser-friendly and usable through desktop and mobile browsers. HTML hardcoding is necessary for articles and pages to display properly; GDCMS does not preprocess any content to make it HTML friendly. There is a very simple text editor included in GDCMS by default that can be used to create the most common tags necessary in articles. Some of the added options that are available for you to customize your content are:
Search Engine Friendly URLs are created dynamically from the title, but can be further edited as desired. This will convert titles that include foreign symbols and punctuation into something that can be easily recognized by search engines, and are human-friendly in terms of readibility and reproducibility.
Keywords are used in GDCMS's search function to find specific articles and pages. Keywords are also used to replace the default site keywords for the page's META KEYWOARDS.
The meta description is used to replace the default site description for the page's META DESCRIPTION.
Content can be created without it being viewable by the public; an article or pages isn't accessable through GDCMS until it has been published. Articles can be set to be published as soon as the article is created or for a specific date. The publish date is also recognized as the date created. When the Publish Status is set to Set Publish Date, the article will not be viewable until the publish date set for the content has passed. Setting the Publish Status to Not Published will unpublish the content, regardless of the date set.
Similarly, content can be made to unpublish itself at specific dates. When the Unpublish Status is set to Publish Until, the content will remain published until the date has passed. Setting the Unpublish Status to Keep Alive will keep the article permanently published, regardless of the unpublish date set.
Extra Content Spaces are used to add content to the page that are specific to the particular page or process that the user is on. They can be useful to dynamically add content like messages, polls, ads, and other things to specific pages. To create an extra content space in your template, simply add the code:
<?php extra('<NAME>'); ?>
Replace <NAME> with the name that you want to assign to the space.
Extra content is added through the admin panel, and has many of the options seen in the content editor. There are a few differences in the options that affect how extra content behaves: