Start arrow Programowanie arrow patTemplate arrow Szablon dla Joomla w patTemplate
Szablon dla Joomla w patTemplate: Czwarty krok Drukuj Wyślij znajomemu
Spis treści
Szablon dla Joomla w patTemplate
Założenia
Pierwszy krok
Drugi krok
Trzeci krok
Czwarty krok

Czwarty krok: kod PHP - plik index.php

 
i001 <?php
i002 /**
i003 * @version $Id: index.php 1 24-12-2005 10:21:17 zwiast$
i004 * @package zwiast_demopl
i005 * @copyright Copyright (C) 2005 APW Zwiastun. All rights reserved.
i006 * Template zwiast_demopl is free software.
i007 * @license Released under http://www.gnu.org/copyleft/gpl.html GNU/GPL
i008 * @Author: Stefan Wajda (aka: zwiastun)
i009 * @Homesite: www.joomlademo.pl
i010 * Based on template: ark_cornerdemo v. 1.0 by Cambell Prince
i011 * @Homesite for original template: www.arketec.com
i012 */
 
i013 defined( '_VALID_MOS' ) 
    or die( 'Direct Access to this location is not allowed.' );
 
i014 require_once('includes/patTemplate/patTemplate.php');
i015 define('BORDER', 'border="0"');
i016 //!!! initEditor()
i017 if ( $my->id ) {
i018   initEditor();
i019 }
 
 
i020 // Stworz szablon
i021 $tmpl =& patFactory::createTemplate('');
i022 $tmpl->setRoot(dirname( __FILE__ ) . '/tmpl');
i023 $tmpl->readTemplatesFromFile( 'page.html' );
 
i024 // Przypisz zmienne, wczytaj moduly
i025 // przypisz wartosc zmiennej $head
i026 // head
i027 ob_start();
i028 mosShowhead();
i029 $head = ob_get_contents();
i030 ob_end_clean();
i031 $tmpl->addGlobalVar('HEAD', $head);
 
i032 $tmpl->addGlobalVar('BORDER', BORDER);
 
i033 $templatePath = $GLOBALS['mosConfig_live_site'] . '/templates/zwiast_demopl';
i034 $tmpl->addGlobalVar('TEMPLATEPATH', $templatePath);
 
i035 ark_loadModules($tmpl, 'left', 'zwiast_demopl', 'LEFT');
i036 ark_loadModules($tmpl, 'right', 'right', 'RIGHT');
i037 ark_loadModules($tmpl, 'top', 'zwiast_demopl', 'TOP');
i038 ark_loadModules($tmpl, 'bottom', 'zwiast_demopl', 'BOTTOM');
i039 ark_loadModules($tmpl, 'header', 'header', 'HEADER');
i040 ark_loadModules($tmpl, 'footer', 'footer', 'FOOTER');
i041 ark_loadModules($tmpl, 'user1', 'user1', 'USER1');
i042 ark_loadModules($tmpl, 'user2', 'user2', 'USER2');
i043 ark_loadModules($tmpl, 'user3', 'user3', 'USER3');
i044 ark_loadModules($tmpl, 'user4', 'user4', 'USER4');
 
i045 // Dodaj zmienną BODY zawierającą glówną zawartość
i046 $tmpl->addVar('zwiast_demopl', 'BODY', $_MOS_OPTION['buffer']);
 
i047 // Przetworz i wypisz szablon
i048 $tmpl->displayParsedTemplate('zwiast_demopl');
 
i049 function ark_loadModules(&$tmpl, $position, $template, $variable) {
i050   global $mosConfig_gzip, $mosConfig_absolute_path, 
        $database, $my, $Itemid, $mosConfig_caching;
 
i051   $tp = mosGetParam( $_GET, 'tp', 0 );
i052   if ($tp) {
i053     echo '<div style="height:50px;background-color:#eee;
               margin:2px;padding:10px;border:1px solid #f00;color:#700;">';
i054     echo $position;
i055     echo '</div>';
i056     return;
i057   }
i058   $style = -1;
i059   $cache =& mosCache::getCache( 'com_content' );
 
 
i060   require_once( $mosConfig_absolute_path . '/includes/frontend.html.php' );i061   $allModules =& initModules();
i062   if (isset( $ GLOBALS['_MOS_MODULES'][$position] )) {
i063       $modules = $ GLOBALS['_MOS_MODULES'][$position];
i064   } else {
i065     $modules = array();
i066   }
 
i067   $count = 1;
i068   foreach ($modules as $module) {
i069     ob_start();
i070     $params =& new mosParameters( $module->params );
 
i071     if ((substr("$module->module",0,4))=="mod_") {
i072       if ($params->get('cache') == 1 && $mosConfig_caching == 1) {
i073         $cache->call('modules_html::module2', 
                          $module, $params, $Itemid, $style );
i074       } else {
i075         modules_html::module2( $module, $params, 
                          $Itemid, $style, $count );
i076       }
i077     } else {
i078       if ($params->get('cache') == 1 && $mosConfig_caching == 1) {
i079         $cache->call('modules_html::module', 
                          $module, $params, $Itemid, $style );
i080       } else {
i081         modules_html::module( $module, $params, $Itemid, $style );
i082       }
i083     }


Zmieniony ( 16.02.2007. )
 
« poprzedni artykuł   następny artykuł »