Joomla 1.5 Как делать? Фишки Дублирование главной страницы ч2
set3-24

Дублирование главной страницы ч2

Рейтинг пользователей: / 7
ХудшийЛучший 

В статье про дублирование контента на главной странице я описывал вариант с избавлением от дублей на главной странице.

Вариант рабочий, использовал на многих сайтах, однако есть и проблема - первый пункт меню который мы прописали как ссылку (назовем его Главная) не подсвечивается при выборе, то есть ему не присваивается id-свойство current.

А очень бы хотелось (как раз такой дизайн что это необходимо).

Для решения проблемы попробуем использовать свойство переопределения вывода в шаблоне Joomla 1.5.

А именно скопируем файл modules/mod_mainmenu/tmpl/default.php в templates/имя_шаблона/html/mod_mainmenu/default.php и уже тут будем править.

Сразу  хочу предупредить что решение не универсальное - для начала нужно посмотреть в меню какой ItemID присвоен нашему пункту меню Главная - у меня получилось значение 2, но если установка была с демо-данными значение будет скорее всего другим.

Итак сам рецепт - примерно после строки 76 а точнее после следующего кода


	if (isset($path) && $node->attributes('id') == $path[0]) {
		$node->addAttribute('id', 'current');
	} else {
		$node->removeAttribute('id');
	}


вставляем такой код


/* Доработка для current  */
	if (  ($id == 2 ) && ($_SERVER['REQUEST_URI']=='/') ) {
		if ($node->attributes('class')) {
			$node->addAttribute('class', $node->attributes('class').' active');
		} else {
			$node->addAttribute('class', 'active');
		}
		$node->addAttribute('id', 'current');	
	}
/* конец доработки  */


заменив 2 на Ваше ItemID - теперь пункт меню будет подсвечиваться.

 
Интересная статья? Поделись ей с другими:

Комментарии  

 
0 #5 seo-ukraine 2011-06-18 10:48 Быстрее удалить в базе данных в таблице jos_menu вашего меню Главная значение alias. И не мучаться с применением пункта 1 и 2. Пункт меню после этого не трогать, то есть не открывать и не изменять, так как автоматом добавится псевдоним.

Ерунда все это, так уберется только один дубль, а их несколько на главной странице. К примеру алиас home:
site.ua/home
site.ua/home/1.html
site.ua/home.html
site.ua/index.php
site.ua/index.php?option=com_content&view=featured

Предлагайте более эффективные варианты, например: что можно в robots.txt и .htaccess закрыть и. т. п
Цитировать
 
 
0 #4 Артур 2010-11-01 12:24 Интересная статья.
Прочитал первую и всё сделал, как вы сказали - всё получилось.
А вот здесь я нашёл всё кроме папки имя_шаблона/html/mod_mainmenu/..

Делал файл и вставил просто в папку html..

буду с нетерпением ждать ответа автора
Цитировать
 
 
+2 #3 Fedor 2010-05-13 14:36 Быстрее удалить в базе данных в таблице jos_menu вашего меню Главная значение alias. И не мучаться с применением пункта 1 и 2. Пункт меню после этого не трогать, то есть не открывать и не изменять, так как автоматом добавится псевдоним. Цитировать
 
 
+1 #2 Artem 2010-04-19 21:19 Вот я и до этого пункта дошел ))
У меня 2 вопроса, что делать если в используемом шаблоне нету ни таких папок (/html/mod_mainmenu/default.php) ни файла?

И второй вопрос - в каком месте мне посмотреть это "в меню какой ItemID присвоен нашему пункту меню Главная"?
Цитировать
 
 
+1 #1 voldcher 2009-12-01 01:23 Удивляюсь, почему до сих пор нет комментов. Огромное спасибо админу за ценный материал, ИМХО лучший метод решения данной проблемы. Сделал все как написано, все работает! Избавился от ненавистного дубля. Удачи и процветания данному ресурсу Цитировать
 

Добавить комментарий


Защитный код
Обновить

Войти на сайт

Ваше мнение

А если бы плагин rusbuttons стал платным?