Дублирование контента
Здравствуйте! Подскажите, как избавиться от одинаковых страниц контента. При поиске одной информации выходит 3 одинаковые страницы, с товаром такое не происходит. Может нужно с views поколдавать? Подскажите в каком направлении двигаться?
Вот так выглядит дублируемая информация,найденая через поиск сайта.
Как вариант меняйте заголовки страниц через модуль page title. Если заголовок разный, то страница уже не дубликат. В модуле page title есть возможность настройки шаблонов, через шаблоны (используя термины таксономии, поля) можно настроит разные тайтлы. Еще есть модуль views page title, он тоже самое делает для тайтлов views.
Скиньте какие одинаковые URL'ы выводит, возможно у вас стоит модуль votes up down, он создает дубликаты страниц.
Меньше месяца назад установила модуль page title и действительно дублей не стало у новых материалов. А материал,который на скрине, был создан до установки этого модуля. Дубли пока не исчезли, удалить и снова создать материал: "Замки | Магазин", не могу, т.к изменится его адрес в целом, сейчас www.site/org1602/замки-магазин , где org№ присваивается новым организациям, и в последующем все товары этой фирмы в адресной строке идут с данным org. Модуль votes up down не стоит на сайте. У всех трех страниц одинаковый адрес, 0, либо / в конце строки нет. Может есть еще какие-нибудь варианты решения этой проблемы ?
Попробуйте в модуле global redirect поставить галочку, чтобы последний слэш не ставился.
Поставила модуль (global redirect), настроила. Заметила еще вот такие дубли по товарам (скриншот). Где-то и по три дубля встречается.
Я думаю такая проблема у многих возникает, прямо головная боль по дублям.
Возможно это получается в следствии настройки представления материала, т. к в Аргументах: (при выборе) Таксономия: ID Термина ,есть настройка с описанием:
Галка стоит. Устранить дубликаты
Если используются фильтры, то эти фильтры должны указываться в title страницы и по тексту страницы, например:
<head> ... <title>Поиск товаров: изумруд,золото | Мой магазин</title> ... </head> ... <body> ... Поиск товаров: изумруд,золото ... </body>
Тогда даже если по разным критериям товары выводятся одинаковые, то страницы будут отличаться в местах где указаны критерии поиска.
Скажите , заголовки обязательно должны отличаться от основного названия?
Я их создаю по подобию "Название"
В настройках Page Title
стоит: Глобальный Материал Таксономия : [title-raw] (галочка включена)
В коде просматривается следующее:
<
head
>
...
<title>Кольцо с ИЗУМРУДОМ</title>
</
head
>
...
<
body
>
...
</
body
>
Это не обязательно, но допустим если вы в одном напишите "подвеска с изумрудом", а в другом "кулон с изумрудом", то фактически ничего плохого не произошло, но у вас теперь на странице будет два ключевых запроса.
кажется все дело в поисковике на сайте (он самописный), ведь если страницы дубли, то в конце ссылки они должны отличаться, или я не права? ну, хотя бы у одной слеш в конце, или цыфра /2 например. А они абсолютно одинаковые. Спасибо за совет (про ключевые слова ), так будет действительно больше шансов вывести товары в поисковики: яндекс ,например.
Да, просто слеш на конце это тоже дубль страницы. Но дубли это не всегда страшно, у меня например на сайте на каждую страницу п 2-3 дубля.. я не думаю что для меня это страшно. Хоть можеть быть без них и было бы лучше.
Увидела у Вас на сайте вот эту информацию https://drupalbook.org/ru/drupal/views-kak-ubrat-dublirovanie-nod-kogda-ispolzuyutsya-polya-so-mnozhestvennymi-znacheniyami, кажется проблема действительно в выводе материала ,в представлении, опишите, пожалуйста ,подробнее по шагам, как реализовать этот способ, т.к я модули не пишу. Спасибо!
В папке модулей
sites/all/modules/
создайте свою папку, допустим sitemade. А в папке sitemade создайте два файла sitemade.info, sitemade.module.
sites/all/modules/sitemade
sites/all/modules/sitemade/sitemade.info
sites/all/modules/sitemade/sitemade.modules
В файле sitemade.info напишите:
name = sitemade module
description = custom module
package = custom modules
core = 6.x
Для 7го друпала соответственно core = 7.x . И вставьте потом код в файл sitemade.module:
<?php function sitemade_views_pre_render(&$view){ $used_nids = array(); if ($view->name == 'companies'){ if ($view->current_display == 'page_1'){ foreach ($view->result as $row){ if (!in_array($row->nid, $used_nids)){ $new_view_result[] = $row; $used_nids[] = $row->nid; } } $view->result = $new_view_result; } } }
$view->name == 'companies'
Здесь нужно будет написать имя своего View (у меня это был companies).
$view->current_display == 'page_1'
Здесь пишем имя дисплея, если это страница, то page_1, page_2, смотря какой по счету этот дисплей, если блок, то block_1, block_2. В настройках view можно посмотреть имя дисплея, чтобы не гадать.
у меня получается $view->name == 'uc_products'
$view->current_display == 'page'
вышло предупреждение:
warning: Cannot modify header information - headers already sent by (output started at /home/h2672/data/www/мой-сайт.ru/modules/sitemade/sitemade.module:1) in /home/h2672/data/www/мой сайт.ru/includes/common.inc on line 152.
Что она может означать?
Это означает, что в неположенном месте выводится информация через функцию print, echo. Очистите текст в sitemade.module. Если ошибка не пропадет, то отключите модуль. Если не получится через админку модуль отключить, тогда через phpmyadmin зайдите в БД и в таблице system поменяйте status модуля sitemade с 1 на 0. Надо искать ошибку. Возможно код сниппета уже устарел.
Хорошо, спасибо! Буду пробовать!
Проблема решилась с помощью настройки представления : : search_views
Установила параметр "уникальность: Да", и дубли исчезли в выводе материалов через поиск. Может кто-то сталкивался с такой проблемой, я решила таким способом.