X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Joomla - помогите убрать дубли, 6 дублей на страницу...
frion-seo
frion-seo
Topic Starter сообщение 16.7.2014, 11:55; Ответить: frion-seo
Сообщение #1


Завсегдатай
*****

Группа: Active User
Сообщений: 747
Регистрация: 16.9.2010
Поблагодарили: 181 раз
Репутация:   68  


Добрый день! Проблема в том что на джумле 1.5 оочень много дублей
например
/tours/list/italy/all-categories/any-transport.html
/tours/list/italy/all-categories/any-transport
/tours/list/italy/all-categories/
/tours/list/italy/all-categories
/tours/list/italy/
/tours/list/italy
по всем этим ссылкам открывается одна и та же страница
это ппц...
должна работать только /tours/list/italy/all-categories/any-transport.html
Что по цене?
ICQ 640685982


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
allvake
allvake
сообщение 16.7.2014, 13:26; Ответить: allvake
Сообщение #2


Завсегдатай
*****

Группа: Active User
Сообщений: 594
Регистрация: 16.8.2011
Из: South
Поблагодарили: 272 раза
Репутация:   37  


Попробую сделать
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
tiptopvkr
tiptopvkr
сообщение 22.7.2014, 17:57; Ответить: tiptopvkr
Сообщение #3


Бывалый
****

Группа: User
Сообщений: 315
Регистрация: 3.1.2013
Поблагодарили: 54 раза
Репутация:   6  


Может кому еще пригодится. Мне лично помогло неоднократно. Завалялась статейка. Решил поделиться.

Модуль удаления дублей страниц в Joomla 1.5
Автор модуля: Тониевич Андрей
Суть проблемы
Ни для кого не секрет, что Joomla 1.5 и 1.6 славятся умением создавать дубли страниц. Это обстоятельство оказывает весьма негативное влияние на поисковое продвижение сайта.
В качестве примера возьмем адрес страницы со статьей Joomla 1.5. Одна и та же страница может быть доступна по таким адресам:
site.ru/index.php?option=com_content&view=article&id=22
site.ru/news/tech/1.html
site.ru/news/tech/1-news.html
site.ru/1-news/2-tech/1dsfsdkgjdfgklhfdgjf
site.ru/home/1.html
и по многим другим. Это не есть хорошо.
Можно, конечно, поставить различные дополнительные компоненты вроде sh404SEF, но опять же. Это дополнительная нагрузка на сервер, а также дополнительная головная боль при обновлениях системы и установке дополнений.
Вариант с правкой robots.txt тоже не всегда является оптимальным так как им можно закрыть дубли вроде site.ru/index.php?option=com_content&view=article&id=22, дубли вроде site.ru/component/content/..., но вот от дублей с измененным псевдонимом (alias), для дублей с индексами разделов, категорий и многих других этот способ не эффективен. Да и закрывать большую часть страниц от индексации не есть хорошо.
К счастью, данную проблему встроенного механизма ЧПУ можно решить более простым путем. Нужно чтобы при вводе неправильного URL пользователя или поисковика перебрасывало 301 редиректом на нужную страницу. Поисковики данный вид редиректа довольно хорошо обрабатывают и именно он рекомендуется поисковиками для склейки дублей.
Описание модуля
Данный модуль предназначен для стандартного компонента com_content со стандартным SEF Joomla 1.5 (на Joomla 1.6 данный модуль не тестировался).
Принцип работы модуля. При генерации страницы со статьей, страницы блога раздела и категории, главной страницы происходит проверка адреса страницы в запросе и адреса страницы в системе. Адрес страницы в системе рассчитывается на основе структуры меню с псевдонимами для разделов и категорий, адреса и смещения (start=10, например) и ссылки на полную версию для статьи.
Если адрес в запросе не совпадает с адресом страницы в системе, то генерируется 301 редирект на адрес страницы в системе. Для каждой страницы он уникален. Как следствие, если движок по самому кривому запросу
смог определить какую страницу загружать, то пользователя или поискового бота автоматически перебросит на нужную страницу. Это значит, что все запросы страниц вроде:
site.ru/index.php?option=com_content&view=article&id=22
site.ru/news/tech/1.html
site.ru/news/tech/1-news.html
site.ru/1-news/2-tech/1dsfsdkgjdfgklhfdgjf
site.ru/home/1.html
со слешами, без слешей в конце, с индексами, без индексов, с index.php или без него будут автоматически переадресованы 301 редиректом на site.ru/news/tech/1-news.html, например. То есть все дубли поклеятся.
Сам модуль
Перед мной стоял выбор. Добавить данный код в саму систему, в компонент com_content или в код шаблонов. Первые два являются самыми идеологически-верными так как такие задачи должен делать контроллер, а не представление, но вот есть один нюанс. При каждом обновлении движка нужно будет заново вносить правки. Это неудобно. Можно и плагин написать, но мне лень сидеть и дальше копаться в API ^)
Поэтому было принято решение добавлять код в шаблоны. Да, это грубое нарушение принципов MVC и т.д., но что тут поделаешь.
Для работы модуля нужно внести такие изменения в файлы шаблонов.
Файл /templates/название_вашего_шаблона/html/com_content/frontpage/default.php
Нужно добавить в самом начале файла строки:
<?php defined('_JEXEC') or die('Restricted access');
$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);
?>
Файл /templates/название_вашего_шаблона/html/com_content/article/default.php
Нужно добавить в самом начале файла строки:
<?php defined('_JEXEC') or die('Restricted access');
if ($this->article->readmore_link != JRequest::getURI()) JApplication::redirect($this->article->readmore_link);
?>
Файл /templates/название_вашего_шаблона/html/com_content/category/blog.php
Нужно добавить в самом начале файла строки:
<?php defined('_JEXEC') or die('Restricted access');
$this->original_link = JRoute::_(ContentHelperRoute::getCategoryRoute(JRequest::getVar('id'), 0));
if (JRequest::getInt('start') > 0) $this->original_link .= "?start=" . JRequest::getVar('start');
$this->real_link = JRequest::getURI();
if ($this->original_link != $this->real_link) JApplication::redirect($this->original_link);
?>
Файл /templates/название_вашего_шаблона/html/com_content/section/blog.php
Нужно добавить в самом начале файла строки:
<?php defined('_JEXEC') or die('Restricted access');
$this->original_link = JRoute::_(ContentHelperRoute::getSectionRoute(JRequest::getVar('id')));
if (JRequest::getInt('start') > 0) $this->original_link .= "?start=" . JRequest::getVar('start');
$this->real_link = JRequest::getURI();
if ($this->original_link != $this->real_link) JApplication::redirect($this->original_link);
?>
Если у вас в папке с шаблоном таких файлов нет, то используйте те же файлы файлы в папке /components/com_content/views/.../tmpl
Аналогичным способом можно избавиться от копий и на других компонентах Joomla.
На этом все.
Автор мода - Тониевич Андрей. Авторские права защищены. Публикация данного материала на других ресурсах разрешается исключительно с указанием автора и по его разрешению.

Либо компонент SH 404 SEF. Там кроме того что он дубли глушит и редиректит то можно каждый урл вручную править независимо от настроек Джумлы.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
eClerk
eClerk
сообщение 23.7.2014, 13:00; Ответить: eClerk
Сообщение #4


Новичок
*

Группа: User
Сообщений: 23
Регистрация: 22.7.2014
Поблагодарили: 2 раза
Репутация:   0  


SEF надо ставить и не мучаться. И Джумлу поновее, конечно. А ещё лучше - не Джумлу :)


--------------------
Это моя подпись (С) Я сам её придумал!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Адаптивная вёрстка и натяжка на Wordpress, DLE, Joomla и др. Создание мобильных версий.
Хороший код с оптимизацией по скорости. Сайты и лендинги "под ключ
15 Nell 1109 Вчера, 23:36
автор: Nell
Горячая тема (нет новых ответов) Вёрстка, натяжка на WordPress, Joomla, качественно, доступно
53 WhiteIce 23750 12.12.2017, 19:41
автор: WhiteIce
Горячая тема (нет новых ответов) Разработка сайтов Joomla Wordpress Opencart
Разработка, верстка, оптимизация веб сайтов.
48 WoWeb 7326 12.12.2017, 13:37
автор: serg5777
Открытая тема (нет новых ответов) Помогите выбрать программу
Помогите выбрать программу
11 impak 1334 11.12.2017, 13:11
автор: Mikki
Горячая тема (нет новых ответов) Услуги по CMS Wordpress, DLE, Joomla!. Правки, ремонт, настройка.
Редактирование и правки. Низкие цены.
142 contex1 65088 5.12.2017, 12:13
автор: contex1


 



RSS Текстовая версия Сейчас: 14.12.2017, 3:04
Дизайн