25.09.2008, 13:13 | Прочитано: 15230 раз | Шаблони та дизайн | Автор: Денис Носов
З недавніх версій Joomla 1.0.х можна видозмінювати поп-вікна, які відображаються через index2.php, без хаків самої Joomla. Як це можливо на рівні шаблону фронтальної частини сайту і піде річ у цій статті.
Для таких функцій, як друк, мейл товаришу, або проста банальна стрічка у форматі RSS, використовується спеціальна сторінка – index2.php.
Ця сторінка включає в себе два режими відображення змісту:
Створюємо файл index2.php.
У файлі прописуємо самий мінімум:
<?php defined( '_VALID_MOS' ) or die( 'Restricted access' ); $task = intval( mosGetParam( $_REQUEST, 'task', 0 ) ); $pop = intval( mosGetParam( $_REQUEST, 'pop', 0 ) ); $page = intval( mosGetParam( $_REQUEST, 'page', 0 ) ); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <?php echo $mainframe->getHead(); ?> <link rel="stylesheet" href="templates/<?php echo $cur_template;?>/css/template_css.css" type="text/css" /> <link rel="shortcut icon" href="<?php echo $mosConfig_live_site; ?>/images/favicon.ico" /> <meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" /> <meta name="robots" content="noindex, nofollow" /> </head> <body> <?php mosMainBody(); ?> </body> </html>
Заливаємо файл у свій шаблон. Тепер замість стандартного index2.php, у корені папки, де лежить ваша Joomla, буде підтягуватися файл із вашого шаблона.
Код застосування для п. 2 і 3:
<?php defined( '_VALID_MOS' ) or die( 'Restricted access' ); $task = intval( mosGetParam( $_REQUEST, 'task', 0 ) ); $pop = intval( mosGetParam( $_REQUEST, 'pop', 0 ) ); $page = intval( mosGetParam( $_REQUEST, 'page', 0 ) ); ### css ### //for print: if ( ($pop == 1) && ($page == 0) ){ $css = '<link rel="stylesheet" href="templates/'. $cur_template .'/css/print.css" type="text/css" />'; } //for mail: elseif ($task == 'emailform') { $css = '<link rel="stylesheet" href="templates/'. $cur_template .'/css/my_css.css" type="text/css" />'; } //for other: else { $css = '<link rel="stylesheet" href="templates/'. $cur_template .'/css/template_css.css" type="text/css" />'; } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <?php echo $mainframe->getHead(); echo $css; ?> <link rel="shortcut icon" href="<?php echo $mosConfig_live_site; ?>/images/favicon.ico" /> <meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" /> <meta name="robots" content="noindex, nofollow" /> </head> <body> <?php mosMainBody(); ?> </body> </html>
Інше залежить від вашої фантазії і потреб.