Для борьбы с дублями страниц в Joomla было создано расширение разработчиком Hekima



Плагин ShnoDoubles прост в использовании, и достаточно всего лиш установить его и активировать в менеджере плагинов






 Что полезного делает плагин ShnoDoubles ?

 

Плагин перенаправляет  (делает редирект 301)  с дублирующих страниц на оригинальные страницы сайта.Оригинальная страница считается та страница которая привязана к пункту меню.


Так же в настройках плагина можно установить перенаправление с дублей на страницу ошибки 404 или же оставить перенаправлять на оригинальную ссылку.


2013-03-23 092220

Скачиваем плагин и устанавливаем его через стандартный  Менеджер расширений: Установка


 

После установки плагина и для его старта включите его в менеджере плагинов.



После активации  плагина идем по фтп в директорию вашего сайта.




 Добавляем следующий код для работы плагина

 Пример куда вставлять код в скриптах :

 

// no direct access
defined('_JEXEC') or die;
 
JHtml::addIncludePath(JPATH_COMPONENT . '/helpers');
 
// Create shortcuts to some parameters.
$params     = $this->item->params;
$images = json_decode($this->item->images);
$urls = json_decode($this->item->urls);
$canEdit    = $this->item->params->get('access-edit');
$user       = JFactory::getUser();
 
?>




 Добавляем код  сразу после закрывающего тега ?>



в папке  components\com_content\views\article\tmpl  открываем  default.php  и вверху после запрещающего кода доступа после тега   ?>  к скрипту добавляем следующи код  и сохраняем изменения


<?php
if ($this->item->readmore_link != JRequest::getURI())
JApplication::redirect ($this->item->readmore_link);
?>



в папке  components\com_content\views\category\tmpl  открываем blog.php  и вверху после запрещающего кода доступа после тега   ?>  к скрипту добавляем следующи код  и сохраняем изменения

<?php if ($this->item->state == 0) : ?>
<div class="system-unpublished">
<?php endif; ?>



 в папке  файл components\com_content\views\featured\tmpl   открываем default.php и вверху после запрещающего кода доступа после тега   ?>  к скрипту добавляем следующи код  и сохраняем изменения

<?php
$this->original_link = "/";
if (JRequest::getInt('start') > 0) $this->original_link .= "index.php?start=" .
JRequest::getVar('start');
$this->real_link = JRequest::getURI();
if ($this->original_link != $this->real_link) JApplication::redirect($this->original_link,'','' ,true);
?>



 Примечание: Если у вас в установленом шаблоне присутствует папка com_content переименуйте или удалите  в папках 

в папке шаблона  article  -  файл default.php



в папке шаблона  category -  файл   blog.php



в папке шаблона  featured  -  файл default.php 



Данный метод избавления от дублей подходит только для Joomla 2.5

 

Совместимость: compat 25
 

Вложения:
Скачать этот файл (shnodoubles.zip)shnodoubles.zip [Плагин ShnoDoubles для Joomla 2.5]