|
|
(40 intermediate revisions by 14 users not shown) |
Line 1: |
Line 1: |
| __TOC__
| | {{ Moved To Community | KDE.org/Capacity HOWTO}} |
| | |
| ==Introduction==
| |
| | |
| Capacity is a versatile framework which helps you to construct
| |
| your page by focusing on the content. Your pages will be simple
| |
| PHP-files which include predefined header and footer. This header/footer
| |
| layout the page, you only provide the real content and menu structure.
| |
| | |
| | |
| ==Example PHP-file==
| |
| | |
| Any normal page just contains:
| |
| | |
| <?php
| |
| $page_title = "Page Title";
| |
| include "header.inc";
| |
| ?>;
| |
|
| |
| Content of the web page
| |
|
| |
| <?php include "footer.inc"; ?>
| |
| | |
| ==The magic site.inc==
| |
| For each subsite, a {{path|site.inc}} in the toplevel directory of this page,
| |
| which would be equal to the later documentroot on the server in many
| |
| cases, may be created. This include is used by the {{path|header.inc}}, it
| |
| should contain some information about your site, like it's name
| |
| and the email address of the webmaster, this will be used by header/footer
| |
| to setup the page correct.
| |
| | |
| An example site.inc would be:
| |
| | |
| <?php
| |
| // promote which subdomain we are
| |
| // we are www.kde.org in this case!
| |
| $site = "www";
| |
|
| |
| // use new style ;) yeah
| |
| $templatepath = "newlayout/";
| |
|
| |
| // promote title to use
| |
| $site_title = i18n_var("K Desktop Environment");
| |
|
| |
| // links in the top bar, right
| |
| $menuright = array ('family/'=>'Sitemap',
| |
| 'contact/'=>'Contact Us');
| |
| ?>
| |
| | |
| Even in the {{path|site.inc}} you can already use the i18n-functions,
| |
| which is important to have the names right on translated pages!
| |
| | |
| ==Global Variables setup by header.inc==
| |
| The {{path|header.inc}} does some setup of global vars, even before it includes the {{path|site.inc}}, these are:
| |
| | |
| $site_root
| |
| $document_root
| |
| $url_root
| |
| $current_relativeurl
| |
| | |
| * <code>$site_root</code> contains the relative path to the toplevel of the current site, like:
| |
| $site_root = "../.."
| |
| | |
| * <code>$document_root</code> contains the absolut pathname which is the documentroot of this site, even correct if the site isn't in it's own vhost, example:
| |
| $document_root = "/home/www/sites/www"
| |
| | |
| * <code>$url_root</code> contains the absolute baseurl to the toplevel of your site, if your site would for example have a it's toplevel in http://127.0.0.1:8080/sites/www, like it is for staging, this would contain
| |
| $url_root = /sites/www
| |
| | |
| * <code>$current_relativeurl</code> contains the relative part of the current url to the url_root, would you access http://127.0.0.1:8080/sites/www/whatiskde/manifest.php and /sites/www is the <code>$url_root</code>, it would contain
| |
| $current_relativeurl = whatiskde/manifest.php
| |
| | |
| '''BE AWARE:''' In former version of the framework it was common to set the <code>$site_root</code> manually before including the {{path|header.inc}}, this won't work now, as the {{path|header.inc}} will overwrite the <code>$site_root</code>. This should cause no danger, as {{path|header.inc}} should find out the right one, but in the long term, all manual definitions should be removed, the global variables {{path|header.inc}} exports should be used to replace the usage of the old <code>$site_root</code>.
| |
| | |
| The framework is clever, it will never add trailing slashs to the <code>$site_root</code>, <code>$document_root</code> and <code>$url_root</code>, therefor they can and must always be used like:
| |
| $some_url = "$site_root/mycoolpage.php"
| |