Устранение дублей страниц товаров и категорий

   (10 отзывов)

1 изображение

Информация о файле

URL товаров и категорий всегда формируется с учетом иерархии категорий.

Для этого в разделе "Связи" товара сделаны изменения позволяющие указать одну категорию товара, относительно которой и будет строиться URL, и список категорий в которых этот товар будет отображаться. (смотри скриншот)

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

Если URL построен с неправильной иерархией - URL будет исправлен, например, у товара URL /desktops/mac/imac/, а пришел запрос /desktops/imac/, /mac/imac/, /mac/desktops/imac/ или просто /imac/ то URL будет исправлен.

Но если в URL будут категории которых вообще нет, например /desk/tops/mac/imac/, или не правильно указан товар /desktops/mac/ciam/ будет выведена страница ошибки с текстом "Запрашиваемая страница не найдена!" и статусом 404 Not Found.

Такое-же поведение с категориями...

Если для построения ЧПУ не хватает какого-то псевдонима - URL строится GET параметрами, при этом параметр path, который отвечает за иерархию категорий, всё равно контролируется и формируется с учетом заданной иерархии категорий.

Алгоритмы формирования и контроля URL используют кеширование, так что в большинстве случаев нагрузка на базу даже ниже чем у штатного алгоритма формирования ЧПУ. Даже при холодном старте...

09 апреля 2011 перезалил архив.

Добавлен контроль ссылок со слешем и без в конце URL, теперь /desktop/mac/imac/ и /desktop/mac/imac расцениваются как разные.

6 мая 2011 добавлена возможность выбора формата построения URL для страниц товара:

/category/subcategory/product

или

/product

При выборе построения URL /product хлебные корошки и меню формируются с учетом полного пути к товару (с категориями/подкатегориями)

Изменения в файлах ocStore версии 0.2.0

Файл: admin/controller/setting/setting.php

===================================================================

находим

'config_seo_url_auto','config_seo_url_replace',

заменяем на

'config_seo_url_include_path','config_seo_url_postfix',

Файл: admin/language/russian/setting/setting.php

===================================================================

находим

$_['entry_seo_url']           = 'Использование SEO-url:<span class="help">Необходимо настройть файл .htaccess в корневом каталоге магазина</span>';$_['entry_seo_url_auto'] 	  = 'Автоподстановка окончаний SEO-url:<span class="help">Добавляет / в конце УРЛ</span>';$_['entry_seo_url_replace']   = 'Заменять пробелы на "_" в SEO-url:';

заменяем на

$_['entry_seo_url']           = 'Использовать SEO-url:<span class="help">Необходимо настройть .htaccess в корневом каталоге магазина</span>';$_['entry_seo_url_include_path'] = 'SEO-url товаров с категориями:<span class="help">/category/subcategory/product</span>';$_['entry_seo_url_postfix']   = 'Окончание ЧПУ:<span class="help">Например / или .html</span>';

Файл: admin/view/template/setting/setting.tpl

===================================================================

находим

<tr>	<td><?php echo $entry_seo_url_auto; ?></td>	<td><?php if ($config_seo_url_auto) { ?>		<input type="radio" name="config_seo_url_auto" value="1" checked="checked" />		<?php echo $text_yes; ?>		<input type="radio" name="config_seo_url_auto" value="0" />		<?php echo $text_no; ?>		<?php } else { ?>		<input type="radio" name="config_seo_url_auto" value="1" />		<?php echo $text_yes; ?>		<input type="radio" name="config_seo_url_auto" value="0" checked="checked" />		<?php echo $text_no; ?>		<?php } ?></td></tr>

заменяем на

<tr>	<td><?php echo $entry_seo_url_include_path; ?></td>	<td><?php if ($config_seo_url_include_path) { ?>		<input type="radio" name="config_seo_url_include_path" value="1" checked="checked" />		<?php echo $text_yes; ?>		<input type="radio" name="config_seo_url_include_path" value="0" />		<?php echo $text_no; ?>		<?php } else { ?>		<input type="radio" name="config_seo_url_include_path" value="1" />		<?php echo $text_yes; ?>		<input type="radio" name="config_seo_url_include_path" value="0" checked="checked" />		<?php echo $text_no; ?>		<?php } ?></td></tr>

находим

<tr>	<td><?php echo $entry_seo_url_replace; ?></td>	<td><?php if ($config_seo_url_replace) { ?>		<input type="radio" name="config_seo_url_replace" value="1" checked="checked" />		<?php echo $text_yes; ?>		<input type="radio" name="config_seo_url_replace" value="0" />		<?php echo $text_no; ?>		<?php } else { ?>		<input type="radio" name="config_seo_url_replace" value="1" />		<?php echo $text_yes; ?>		<input type="radio" name="config_seo_url_replace" value="0" checked="checked" />		<?php echo $text_no; ?>		<?php } ?></td></tr>

заменяем на

<tr>	<td><?php echo $entry_seo_url_postfix; ?></td>	<td><input type="text" name="config_seo_url_postfix" value="<?php echo $config_seo_url_postfix; ?>" size="3" /></td></tr>

Файл: catalog/controller/common/seo_url.php

заменям полностью

Файл: catalog/model/tool/seo_url.php

заменям полностью

P.S. SeoPack решил удалить потому что многих пугает большое количество изменённых файлов, не разбираясь что в основной массе файлов изменения были связаны с заменой & на & для валидации по XHTML стандарту.

Позже напишу описание и выложу SEO URL Manager отдельно.


Что нового в версии   Просмотр изменений

Размещено

Для этой версии изменений нет.




Обратная связь

Чтобы оставить отзыв, создайте аккаунт или авторизуйтесь

Вы должны быть пользователем, чтобы оставить отзыв

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


Skykos

  

Поделиться этим отзывом


Ссылка на отзыв
Gskif

  

Поделиться этим отзывом


Ссылка на отзыв
CAXAPA007

  

Поделиться этим отзывом


Ссылка на отзыв
Dobry86

  

Поделиться этим отзывом


Ссылка на отзыв
Smallbear

  

Поделиться этим отзывом


Ссылка на отзыв
shoma

  

Поделиться этим отзывом


Ссылка на отзыв
kopaweb19

  

Поделиться этим отзывом


Ссылка на отзыв
traffs

  

Поделиться этим отзывом


Ссылка на отзыв
personash

  

Поделиться этим отзывом


Ссылка на отзыв
RGB

  

Поделиться этим отзывом


Ссылка на отзыв
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу