Yii (выпадающее меню + ЧПУ)
пруф
1. качаем
2.папку images в корень, папку scripts в protected
3.в layouts\main в <head> подключаем
---
1. качаем
2.папку images в корень, папку scripts в protected
3.в layouts\main в <head> подключаем
---
<?php
// remember that you can actually point to the js files directly if
// your script file is outside of protected/subfolders
$jqueryslidemenupath = Yii::app()->assetManager->publish(Yii::app()->basePath . '/scripts/jqueryslidemenu/');
//Register jQuery, JS and CSS files
Yii::app()->clientScript->registerCssFile($jqueryslidemenupath . '/jqueryslidemenu.css');
Yii::app()->clientScript->registerCoreScript('jquery');
Yii::app()->clientScript->registerScriptFile($jqueryslidemenupath . '/jqueryslidemenu.js');
?>
4. вместо mainmenu пишем, если все хорошо - радуемся
---
<div id="myslidemenu" class="jqueryslidemenu">
<?php $this->widget('zii.widgets.CMenu',array(
'items'=>array(
array('label'=>'Home', 'url'=>array('/site/index')),
array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')),
array('label'=>'Contact', 'url'=>array('/site/contact')),
array('label'=>'jqSlideMenuTest', 'url'=>array('#'),
'items'=>array(
array('label'=>'Home', 'url'=>array('/site/index')),
array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')),
array('label'=>'Contact', 'url'=>array('/site/contact'),
'items'=>array(
array('label'=>'Home', 'url'=>array('/site/index')),
array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')),
array('label'=>'Contact', 'url'=>array('/site/contact'),
'items'=>array(
array('label'=>'Home', 'url'=>array('/site/index')),
array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')),
array('label'=>'Contact', 'url'=>array('/site/contact')),
)),
)),
)),
array('label'=>'Login', 'url'=>array('/site/login'), 'visible'=>Yii::app()->user->isGuest),
array('label'=>'Logout ('.Yii::app()->user->name.')', 'url'=>array('/site/logout'), 'visible'=>!Yii::app()->user->isGuest)),
)); ?>
<br style="clear: left" />
</div><!-- myslidemenu-->
---5. скорее всего картинки у вас работать не будут.
в jqueryslidemenu.js наверно можно переназначить путь, но index.php гадит всю малину.
снесем index.php
в корне создаем\переписываем .htaccess
---
Options Includes FollowSymLinks
#hide index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
---в config\main
----
// uncomment the following to enable URLs in path-format
'urlManager' => array(
'urlFormat' => 'path',
'showScriptName'=>false,
'rules' => array(
// стандартное правило для обработки '/' как 'site/index'
'' => 'site/index',
// это пример добавления который заработал
//'secondcontroller/<action:.*>'=>'secondcontroller/<action>',
'user/<action:.*>'=>'user/<action>',
//'<action:.*>'=>'site/<action>', //закомментил а то глючило с ним
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
),
),
---
получить должны примерно следующее
Комментарии
Отправить комментарий