Difference between revisions of "Projects/kde.org/Capacity HOWTO"

Jump to: navigation, search
 
(37 intermediate revisions by 16 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"
 
 
 
==Configuration Variables==
 
 
 
You can set some variables to alter the behaviour of the framework, either global in your site.inc or in front of your header.inc inclusion in each .php-files.
 
 
 
Useful variables are:
 
 
 
* The Name for your whole subdomain/site, best set once in site.inc
 
  $site_title = "KDE Foo Site Title";
 
 
 
* The title of the individual page.
 
  $page_title = "Page Title";
 
 
 
* Don't show edit function on the page. The default is $showedit = true;. This setting should normally not be used. site.inc is the preferred place.
 
 
 
  $showedit = false;
 
 
 
==Online Editing==
 
 
 
Capacity features online editing and previewing of changes.
 
 
 
You can make and preview changes of existing pages online by clicking on the [edit] link at the bottom of each page. Try it on [http://www.kde.org/index.php?edit this page].
 
Then you can download you changes and commit them yourself via SVN, or you can click the link to email a unified diff to the web team.
 

Latest revision as of 17:48, 11 March 2016

This page is now on the community wiki.


This page was last edited on 11 March 2016, at 17:48. Content is available under Creative Commons License SA 4.0 unless otherwise noted.