Как убрать каталог (/catalog/) из урла и хлебных крошек Bitrix


Порой для SEO оптимизации урлов, необходимо убрать вложенность в каталог (/catalog/) у категорий и товаров. В битриксе для этого необходимо немного изменить компонент каталога и настройки инфоблока, в котором расположен каталог.

1. Поменять в настройках инфоблока.
URL страницы раздела с #SITE_DIR#/catalog/#SECTION_CODE#/ на #SITE_DIR#/#SECTION_CODE_PATH#/

URL страницы детального просмотра с #SITE_DIR#/catalog/#SECTION_CODE#/#ELEMENT_CODE#/ на #SITE_DIR#/#SECTION_CODE_PATH#/#ELEMENT_CODE#/

До

После

P.S.  Я меняю #SECTION_CODE# на #SECTION_CODE_PATH# чтобы была нормальная вложенность категорий 1го, 2го и тд. уровня, которая желательна для SEO.

2. Нужно немного поменять настройки компонента каталога через код.
Нужно заменить значение у свойства SEF_FOLDER с ‘/catalog/’ на ‘/’

До

После

И если заменили #SECTION_CODE# на #SECTION_CODE_PATH# в инфоблоке, в настройке компонента тоже надо внести изменение

До

После

После всех изменений, вложённость в каталог(/catalog/) из урла пропадёт. В хлебных крошлках вложённость тоже пропадёт.

! НО, ПОСЛЕ ВСЕХ ИЗМЕНЕНИЙ ПЕРЕСТАНЕТ ФУНКЦИОНИРОВАТЬ ПОИСК ПО ТОВАРУ.
Выход из данной проблемы заключается в создании отдельной страницы с компонентом поиска. Создаём обычную страницу и размещаем на ней компонент поиска.

<?$APPLICATION->IncludeComponent (
"bitrix:catalog.search",
    "",
    Array(
        "AJAX_MODE" => "N",
        "IBLOCK_TYPE" => "catalog",
        "IBLOCK_ID" => "2",
        "ELEMENT_SORT_FIELD" => "sort",
        "ELEMENT_SORT_ORDER" => "asc",
        "ELEMENT_SORT_FIELD2" => "id",
        "ELEMENT_SORT_ORDER2" => "desc",
        "SECTION_URL" => "",
        "DETAIL_URL" => "",
        "BASKET_URL" => "/personal/basket.php",
        "ACTION_VARIABLE" => "action",
        "PRODUCT_ID_VARIABLE" => "id",
        "PRODUCT_QUANTITY_VARIABLE" => "",
        "PRODUCT_PROPS_VARIABLE" => "prop",
        "SECTION_ID_VARIABLE" => "SECTION_ID",
        "DISPLAY_COMPARE" => "Y",
        "PAGE_ELEMENT_COUNT" => "16",
        "LINE_ELEMENT_COUNT" => "5",
        "PROPERTY_CODE" => array(
			0 => "NEWPRODUCT",
			1 => "",
		),
        "OFFERS_FIELD_CODE" => array(
			0 => "",
			1 => "",
		),
        "OFFERS_PROPERTY_CODE" => array(
			0 => "COLOR_REF",
			1 => "SIZES_SHOES",
			2 => "SIZES_CLOTHES",
			3 => "",
		),
        "OFFERS_SORT_FIELD" => "sort",
        "OFFERS_SORT_ORDER" => "asc",
        "OFFERS_SORT_FIELD2" => "id",
        "OFFERS_SORT_ORDER2" => "desc",
        "OFFERS_LIMIT" => "5",
        "PRICE_CODE" => array(
			0 => "BASE",
		),
        "USE_PRICE_COUNT" => "N",
        "SHOW_PRICE_COUNT" => "1",
        "PRICE_VAT_INCLUDE" => "Y",
        "USE_PRODUCT_QUANTITY" => "Y",
        "CACHE_TYPE" => "A",
        "CACHE_TIME" => "36000000",
        "RESTART" => "Y",
        "NO_WORD_LOGIC" => "Y",
        "USE_LANGUAGE_GUESS" => "Y",
        "CHECK_DATES" => "Y",
        "DISPLAY_TOP_PAGER" => "N",
		"SHOW_ALL_WO_SECTION"=>"Y",
        "DISPLAY_BOTTOM_PAGER" => "N",
        "PAGER_TITLE" => "Товары",
        "PAGER_SHOW_ALWAYS" => "N",
        "PAGER_TEMPLATE" => ".default",
        "PAGER_DESC_NUMBERING" => "Y",
        "PAGER_DESC_NUMBERING_CACHE_TIME" => "36000",
        "PAGER_SHOW_ALL" => "N",
        "HIDE_NOT_AVAILABLE" => "N",
        "CONVERT_CURRENCY" => "Y",
        "CURRENCY_ID" => "RUB",
        "OFFERS_CART_PROPERTIES" => array(
			0 => "ARTNUMBER",
			1 => "COLOR_REF",
			2 => "SIZES_SHOES",
			3 => "SIZES_CLOTHES",
		),
        "AJAX_OPTION_JUMP" => "Y",
        "AJAX_OPTION_STYLE" => "Y",
        "AJAX_OPTION_HISTORY" => "Y",
"MESS_BTN_ADD_TO_BASKET" => "Купить",
		"COMPARE_PATH" => "../compare/",
"SHOW_CLOSE_POPUP" => "Y",
    )
);?>

Подробнее по его настройке всегда можно прочитать тут.
И для работы нужно поменять ссылку на новую страницу поиска в параметр компонента поиска.
Как пример, у компонента bitrix:search.title поменять «PAGE» => SITE_DIR.»catalog/» на «PAGE» => SITE_DIR.»poisk-po-tovaru/»

До

После


Для связи

Если у вас появились какие-либо вопросы, хотите получить индивидуальный совет или у вас есть интересное предложение, вы можете связаться через форму обратной связи.

Или написать прямо на почту info@bobreod.ru





Отправляя форму, вы соглашаетесь с нашей политикой конфиденциальности