Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ДР.doc
Скачиваний:
51
Добавлен:
11.04.2015
Размер:
9.9 Mб
Скачать

2.9.6 Модули и расширения

Все расширения для Joomla делятся на три группы: компоненты, модули и плагины.

Компонент в Joomla это своеобразная небольшая система управления контентом (содержимым), которая органично интегрируется в Joomla, расширяя ее функционал. У компонента имеется своя админ. панель, зачатую напоминающая по функционалу админпанель самой Joomla. Некоторые компоненты имеют возможность установки своих собственных расширений, которые устанавливаются именно из админ. панели данного компонента, а не из админ. панели Joomla.

Модуль. Содержимое модуля выводится не в области контента (центральная часть страницы), а где-нибудь рядом со статьей или содержимым компонента. Например, модуль меню, который может выводиться хоть на всех страницах сайта в не зависимости от их содержания, допустим, слева от области контента. В шаблоне, обязательно будут предусмотрены специальные места, в которых можно будет настроить отображение содержимого модулей.

Плагин — это определенный программный код, который будет выполняться только при возникновении определенного события. Например, таким событием может быть встреченная в тексте статьи команда вызова данного плагина, который в результате вставит в содержимое статьи что-то свое.

Заключение

В выпускной работе бакалавра в соответствие с требованиями, изложенными в пункте 2.2 и 2.2.1, было разработано web-приложение, представляющее собой сайт «Кафедра», который может предоставить информацию о преподавателей. Все требования по функциям web-приложения выполнены.

В качестве основной технологии для разработки использовалась одна из самых популярных и функциональных среди бесплатных CMSна сегодняшний день –Joomla!

Благодаря использованию различных серверных и пользовательских элементов управления, применению каскадных таблиц стилей и тем оформления, удалось создать привлекательный, функциональный, удобный и интуитивно-понятный пользовательский интерфейс, с возможностью быстрой модернизации в случае необходимости.

Список используемой литературы

  1. Web Database Application with PHP and MySQL, 2nd Edition By David Lane, Hugh E. Williams. © O'Reilly, May 2004. ISBN: 0-596-00543-1.

  2. CMS List. Обзор cms. Сайт о системах управления сайтом. http://www.cmslist.ru

  3. Joomla! CMS по-русски. http://joomlaportal.ru

  4. Материал из Википедии — свободной энциклопедии о системах управления сайтом. http://ru.wikipedia.org/wiki/CMS

  5. Content management system http://www.brutto.ru/informacija/uznat-bolshe/content-management-system

  6. Joomla-инструменты. http://docs.joom.ru/!;C651=0O:Categories

  7. CMS обзор: CMS, движок сайта, система управления сайтом, mambo, php nuke, netcat, phpbb, invision power board, vbulletin. http://cmsobzor.ru/news.php

Приложение А

Код шаблона страницы сайта

<?php

/**

* @copyright Copyright (C) 2008 - 2009 JoomVision.com. All rights reserved.

* @license GNU/GPL, see LICENSE.php

* Joomla! is free software. This version may have been modified pursuant

* to the GNU General Public License, and as distributed it includes or

* is derivative of works licensed under the GNU General Public License or

* other free or open source software licenses.

* See COPYRIGHT.php for copyright notices and details.

*/

// no direct access

defined( '_JEXEC' ) or die( 'Restricted access' );

include_once (dirname(__FILE__).DS.'libs'.DS.'jv_tools.php');

include_once (dirname(__FILE__).DS.'jv_menus'.DS.'jv.common.php');

include_once (dirname(__FILE__).DS.'libs'.DS.'jv_vars.php');

unset($this->_scripts[$this->baseurl . '/media/system/js/caption.js']);

?>

<!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" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>">

<head>

<jdoc:include type="head" />

<?php JHTML::_('behavior.mootools'); ?>

<link rel="stylesheet" href="<?php echo $jvTools->baseurl() ; ?>templates/system/css/system.css" type="text/css" />

<link rel="stylesheet" href="<?php echo $jvTools->baseurl() ; ?>templates/system/css/general.css" type="text/css" />

<?php if($gzip == "true") : ?>

<link rel="stylesheet" href="<?php echo $jvTools->templateurl(); ?>css/template.css.php" type="text/css" />

<?php else: ?>

<link rel="stylesheet" href="<?php echo $jvTools->templateurl(); ?>css/default.css" type="text/css" />

<link rel="stylesheet" href="<?php echo $jvTools->templateurl(); ?>css/template.css" type="text/css" />

<?php if($jvrtl == 'rtl') : ?>

<link rel="stylesheet" href="<?php echo $jvTools->templateurl(); ?>css/template_rtl.css" type="text/css" />

<link rel="stylesheet" href="<?php echo $jvTools->templateurl(); ?>css/typo_rtl.css" type="text/css" />

<?php else : ?>

<link rel="stylesheet" href="<?php echo $jvTools->templateurl(); ?>css/typo.css" type="text/css" />

<?php endif; ?>

<?php endif; ?>

<link href="<?php echo $jvTools->parse_jvcolor_cookie($jvcolorstyle); ?>" rel="stylesheet" type="text/css" />

<script type="text/javascript">

var baseurl = "<?php echo $jvTools->baseurl() ; ?>";

var jvpathcolor = '<?php echo $jvTools->templateurl(); ?>css/colors/';

var tmplurl = '<?php echo $jvTools->templateurl();?>';

var CurrentFontSize = parseInt('<?php echo $jvTools->getParam('jv_font');?>');

</script>

<script type="text/javascript" src="<?php echo $jvTools->templateurl() ?>js/jv.script.js"></script>

<!--[if lte IE 6]>

<link rel="stylesheet" href="<?php echo $jvTools->templateurl(); ?>css/ie6.css" type="text/css" />

<script type="text/javascript" src="<?php echo $jvTools->templateurl() ?>js/ie_png.js"></script>

<script type="text/javascript">

window.addEvent ('load', function() {

ie_png.fix('.png');

});

</script>

<![endif]-->

<!--[if lte IE 7]>

<link rel="stylesheet" href="<?php echo $jvTools->templateurl(); ?>css/ie7.css" type="text/css" />

<![endif]-->

</head>

<body id="bd" class="fs<?php echo $jvTools->getParam('jv_font'); ?> <?php echo $jvTools->getParam('jv_display'); ?> <?php echo $jvTools->getParam('jv_display_style'); ?> <?php echo $jvrtl; ?>">

<div id="jv-wrapper">

<div id="jv-wrapper-inner">

<div id="jv-header" class="clearfix">

<div class="jv-wrapper">

<div id="jv-header-inner">

<?php if($this->countModules('menu_top')) : ?>

<div id="jv-top" >

<jdoc:include type="modules" name="menu_top" />

</div>

<?php endif; ?>

<div id="jv-mainmenu">

<div class="jv-mainmenu-l"></div>

<div id="jv-mainmenu-inner" >

<?php $menu->show(); ?>

</div>

<div class="jv-mainmenu-r"></div>

</div>

<div id="jv-logo" class="clearfix">

<h1 id="logo"><a class="png" href="<?php echo $jvTools->baseurl() ; ?>" title="<?php echo $jvTools->sitename() ; ?>">

<span><?php echo $jvTools->sitename() ; ?></span></a>

</h1>

</div>

</div>

</div>

</div>

<?php if($this->countModules('slideshow')) : ?>

<div id="jv-slideshow" class="clearfix">

<div id="jv-slideshow2">

<div class="jv-wrapper">

<div id="jv-slideshow-inner">

<jdoc:include type="modules" name="slideshow" />

</div>

</div>

</div>

</div>

<?php endif; ?>

<?php

$spotlight = array ('user1','user2','user3','user4');

$consl = $jvTools->calSpotlight($spotlight,$jvTools->isOP()?100:100,'%');

if( $consl) :

?>

<div id="jv-userwrap3" class="clearfix">

<div class="jv-wrapper">

<div id="jv-userwrap3-inner">

<?php if($this->countModules('user1')) : ?>

<div id="jv-user1" class="jv-user jv-box<?php echo $consl['user1']['class']; ?>" style="width: <?php echo $consl['user1']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user1" style="jvrounded" />

</div>

</div>

<?php endif; ?>

<?php if($this->countModules('user2')) : ?>

<div id="jv-user2" class="jv-user jv-box<?php echo $consl['user2']['class']; ?>" style="width: <?php echo $consl['user2']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user2" style="jvrounded" />

</div>

</div>

<?php endif; ?>

<?php if($this->countModules('user3')) : ?>

<div id="jv-user3" class="jv-user jv-box<?php echo $consl['user3']['class']; ?>" style="width: <?php echo $consl['user3']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user3" style="jvrounded" />

</div>

</div>

<?php endif; ?>

<?php if($this->countModules('user4')) : ?>

<div id="jv-user4" class="jv-user jv-box<?php echo $consl['user4']['class']; ?>" style="width: <?php echo $consl['user4']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user4" style="jvrounded" />

</div>

</div>

<?php endif; ?>

</div>

</div>

</div>

<?php endif; ?>

<!-- MAINBODY -->

<div id="jv-mainbody" class="clearfix">

<div class="jv-wrapper">

<div id="jv-mainbody-inner">

<!-- CONTAINER -->

<div id="jv-container<?php echo $jv_width;?>" class="clearfix">

<?php if($this->countModules('Left')) : ?>

<div id="jv-left">

<div id="jv-left-inner">

<jdoc:include type="modules" name="left" style="jvrounded" />

</div>

</div>

<?php endif; ?>

<div id="jv-content">

<?php if($this->countModules('breadcrumb')) : ?>

<div id="jv-breadcrumbs">

<strong class="icon-home"><?php echo JText::_('YOU ARE HERE')?></strong> <jdoc:include type="modules" name="breadcrumb" />

</div>

<?php endif; ?>

<div id="jv-maincontent" class="clearfix">

<div class="jv-tc">

<div class="jv-tl"></div>

<div class="jv-tr"></div>

</div>

<div class="jv-c clearfix">

<div class="jv-c2">

<div id="jv-maincontent-inner">

<?php if($this->countModules('user5')) : ?>

<div id="jv-user5" class="clearfix">

<jdoc:include type="modules" name="user5" style="jvxhtml" />

</div>

<?php endif; ?>

<div id="jv-component" class="clearfix">

<jdoc:include type="message" />

<jdoc:include type="component" />

</div><div style="display:none;"><a href="http://www.relady.ru/">Women's journal ReLady</a></div>

<?php if($this->countModules('user6')) : ?>

<div id="jv-user6" class="clearfix">

<jdoc:include type="modules" name="user6" style="jvxhtml" />

</div>

<?php endif; ?>

<?php

$spotlight = array ('col1','col2','col3');

$botsl1 = $jvTools->calSpotlight($spotlight,$jvTools->isOP()?100:99,'%');

if( $botsl1 ) :

?>

<div id="jv-col" class="clearfix">

<?php if($this->countModules('col1')) : ?>

<div id="jv-col1" class="jv-user jv-box<?php echo $botsl1['col1']['class']; ?>" style="width: <?php echo $botsl1['col1']['width']; ?>;">

<jdoc:include type="modules" name="col1" style="jvxhtml" />

</div>

<?php endif; ?>

<?php if($this->countModules('col2')) : ?>

<div id="jv-col2" class="jv-user jv-box<?php echo $botsl1['col2']['class']; ?>" style="width: <?php echo $botsl1['col2']['width']; ?>;">

<jdoc:include type="modules" name="col2" style="jvxhtml" />

</div>

<?php endif; ?>

<?php if($this->countModules('col3')) : ?>

<div id="jv-col3" class="jv-user jv-box<?php echo $botsl1['col3']['class']; ?>" style="width: <?php echo $botsl1['col3']['width']; ?>;">

<jdoc:include type="modules" name="col3" style="jvxhtml" />

</div>

<?php endif; ?>

</div>

<?php endif; ?>

</div>

</div>

</div>

<div class="jv-bc clearfix">

<div class="jv-bl"></div>

<div class="jv-br"></div>

</div>

</div>

</div>

</div>

<!-- END CONTAINER -->

</div>

</div>

</div>

<!-- END MAINBODY -->

<?php

$spotlight = array ('user7','user8','user9','user10');

$botsl2 = $jvTools->calSpotlight($spotlight,$jvTools->isOP()?100:100, '%');

if( $botsl2 ) :

?>

<div id="jv-userwrap4" class="clearfix">

<div class="jv-wrapper">

<div id="jv-userwrap4-inner">

<?php if($this->countModules('user7')): ?>

<div id="jv-user7" class="jv-user jv-box<?php echo $botsl2['user7']['class']; ?>" style="width:<?php echo $botsl2['user7']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user7" style="jvrounded" />

</div>

</div>

<?php endif; ?>

<?php if($this->countModules('user8')) : ?>

<div id="jv-user8" class="jv-user jv-box<?php echo $botsl2['user8']['class']; ?>" style="width:<?php echo $botsl2['user8']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user8" style="jvrounded" />

</div>

</div>

<?php endif; ?>

<?php if($this->countModules('user9')) : ?>

<div id="jv-user9" class="jv-user jv-box<?php echo $botsl2['user9']['class']; ?>" style="width:<?php echo $botsl2['user9']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user9" style="jvrounded" />

</div>

</div>

<?php endif; ?>

<?php if($this->countModules('user10')) : ?>

<div id="jv-user10" class="jv-user jv-box<?php echo $botsl2['user10']['class']; ?>" style="width:<?php echo $botsl2['user10']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user10" style="jvrounded" />

</div>

</div>

<?php endif; ?>

</div>

</div>

</div>

<?php endif; ?>

<?php

$spotlight = array ('user11','user12','user13','user14');

$botsl3 = $jvTools->calSpotlight ($spotlight,$jvTools->isOP()?100:100,'%');

if( $botsl3 ) :

?>

<div id="jv-userwrap5">

<div class="jv-wrapper">

<div id="jv-userwrap-inner">

<div class="jv-tc">

<div class="jv-tl"></div>

<div class="jv-tr"></div>

</div>

<div class="jv-c clearfix">

<div class="jv-c2">

<?php if($this->countModules('user11')) : ?>

<div id="jv-user11" class="jv-user jv-box<?php echo $botsl3['user11']['class']; ?>" style="width: <?php echo $botsl3['user11']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user11" style="jvxhtml" />

</div>

</div>

<?php endif; ?>

<?php if($this->countModules('user12')) : ?>

<div id="jv-user12" class="jv-user jv-box<?php echo $botsl3['user12']['class']; ?>" style="width: <?php echo $botsl3['user12']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user12" style="jvxhtml" />

</div>

</div>

<?php endif; ?>

<?php if($this->countModules('user13')) : ?>

<div id="jv-user13" class="jv-user jv-box<?php echo $botsl3['user13']['class']; ?>" style="width: <?php echo $botsl3['user13']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user13" style="jvxhtml" />

</div>

</div>

<?php endif; ?>

<?php if($this->countModules('user14')) : ?>

<div id="jv-user14" class="jv-user " style="width: <?php echo $botsl3['user14']['width']; ?>;">

<div class="jv-box-inside">

<jdoc:include type="modules" name="user14" style="jvxhtml" />

</div>

</div>

<?php endif; ?>

</div>

</div>

<div class="jv-bc clearfix">

<div class="jv-bl"></div>

<div class="jv-br"></div>

</div>

</div>

</div>

</div>

<?php endif; ?>

<div id="jv-bottom" class="clearfix">

<div id="jv-bottom-inner">

<div id="jv-userwrap7" class="png">

<div class="jv-wrapper">

<div id="jv-copyright">

<div id="jv-copyright-inner">

<?php if($jvTools->getParam('jv_footer')) : ?>

<?php echo $jvTools->getParam('jv_footer_text'); ?>

<?php else : ?>

<?php endif; ?>

</div>

</div>

<?php if($this->countModules('footer')) : ?>

<div id="jv-footer">

<div id="jv-footer-inner"><jdoc:include type="modules" name="footer" /></div>

</div>

<?php endif; ?>

</div>

</div>

</div>

</div>

</div>

</div>

</body>

</html>

Главная страница Web- сайта

Панель Администрирования.

1 По данным регионального сетевого информационного центра (RU-Center), http://www.nic.ru

2 По материалам социологического исследования Romir, http://www.rmh.ru/news/res_results/333.html

59