Заказать обратный звонок
Написать письмо
+7 (495) 278-08-54 Москва
+7 (812) 670-07-40 Санкт-Петербург

Сотбит: SEO умного фильтра: мета-теги, заголовки, карта сайта

Компонент sotbit:seo.meta

Инструкция рассматривает установку модуля на примере «1С-Битрикс: Интернет-магазин».

Для размещения компонента sotbit:seo.meta в шаблоне каталога требуется вставить код компонента в файл вызова умного фильтра.

Перечень поддерживаемых фильтров:

  • bitrix.catalog.smart.filter
  • kombox.filter
  • sotbit.catalog.smart.filter.facet

В «1С-Битрикс: Интернет-магазин» требуемый файл вызывает компонент bitrix:catalog.smart.filter. Данный компонент вызывается в двух файлах: section_vertical.php и section_horizontal.php. Код компонента требуется разместить в каждом из них, если есть потребность изменять отображение умного фильтра, либо в одном из них, если вид отображения выбран на постоянной основе.

Так, например, для вертикально расположенного фильтра это будет файл section_vertical.php, а для горизонтального расположенного – section_horizontal.php.

При использовании других шаблонов сайта файл, в котором вызывается компонент фильтра, может отличаться. В ряде случаев это section.php. Если вызов фильтра в данном файле отсутствует, то требуется найти строки ссылающиеся на вызов файла с фильтром. 

Так, например, в section.php, в нашем случае, имеется следующий код:

 if ($isVerticalFilter)
 include($_SERVER["DOCUMENT_ROOT"]."/".$this->GetFolder()."/section_vertical.php");
 else
 include($_SERVER["DOCUMENT_ROOT"]."/".$this->GetFolder()."/section_horizontal.php");
 ?>
Данный код говорит о том, что при выборе вертикального расположения фильтра произойдет подключение файла section_vertical.php, в противном случае – section_horizontal.php.

Файлы расположены по следующему пути: Рабочий стол > Контент > Структура сайта > Файлы и папки > bitrix > templates > название шаблона сайта > components > bitrix > catalog > название шаблона каталога

На странице сайта требуется включить режим правки, который располагается в правом верхнем углу страницы.

Наведите курсор на область каталога, после чего появится меню, в котором требуется нажать кнопку выпадающего списка возле значка настроек, затем выбрать пункт Каталог (bitrix.catalog) и затем выбрать подпункт Редактировать шаблон компонента.




В появившемся окне переходим в режим редактирования файла в панели управления.


В открывшемся окне переходим в папку шаблона. В нашем случае - template1.

В папке имеется два файла, section_vertical.php и section_horizontal.php, в которые требуется внести код компонента.

Рассмотрим внесение компонента в файл section_vertical.php. Для этого в появившемся окне требуется найти файл section_vertical.php и выбрать Редактировать как PHP


Копируем код компонента в требуемый файл.

//sotbit seometa component start
$APPLICATION->IncludeComponent(	
  "sotbit:seo.meta",
  ".default",	
  Array(	
    "FILTER_NAME" => $arParams["FILTER_NAME"],	
    "SECTION_ID" => $arCurSection['ID'],	
    "CACHE_TYPE" => $arParams["CACHE_TYPE"],	
    "CACHE_TIME" => $arParams["CACHE_TIME"],	
  )	
);	
//sotbit seometa component end

Параметр Описание
"CACHE_TIME" Время кеширования, указанное в секундах.
"CACHE_TYPE" Тип кеширования. Может принимать значения:
  • A - Авто + Управляемое: автоматически обновляет кеш компонентов в течение заданного времени или при изменении данных;
  • Y - Кешировать: для кеширования необходимо определить время кеширования;
  • N - Не кешировать: кеширования нет в любом случае.
"SECTION_ID" Идентификатор раздела. Также в качестве значения может быть передан массив идентификаторов.
"FILTER_NAME" Имя фильтра

Рекомендуется вставить его сразу после вызова компонента bitrix:catalog.smart.filter, как изображено ниже.

ID секции компонента sotbit:seo.meta должен строго совпадать с ID секции компонента bitrix:catalog.smart.filter.

Если у вас, после вызова компонента, есть переопределение метатегов, то требуется внести код переопределения метаинформации. Данный код заменит стандартную метаинформацию исходя из заданных условий.

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

<?//sotbit seometa meta start
global $sotbitSeoMetaTitle;
global $sotbitSeoMetaKeywords;
global $sotbitSeoMetaDescription;
global $sotbitSeoMetaBreadcrumbTitle;
global $sotbitSeoMetaH1;
if(!empty($sotbitSeoMetaH1))
{
$APPLICATION->SetTitle($sotbitSeoMetaH1);
}
if(!empty($sotbitSeoMetaTitle))
{
$APPLICATION->SetPageProperty("title", $sotbitSeoMetaTitle);
}
if(!empty($sotbitSeoMetaKeywords))
{
$APPLICATION->SetPageProperty("keywords", $sotbitSeoMetaKeywords);
}
if(!empty($sotbitSeoMetaDescription))
{
$APPLICATION->SetPageProperty("description", $sotbitSeoMetaDescription);
}
if(!empty($sotbitSeoMetaBreadcrumbTitle) ) {
$APPLICATION->AddChainItem($sotbitSeoMetaBreadcrumbTitle  );
}
//sotbit seometa meta end ?>

После внесения изменений требуется перейти в публичную часть сайта и сбросить кеш страницы.

После чего в компонентах страницы появляется новый элемент SEO умного фильтра

Последним пунктом установки компонента будет внесение изменений в файл result_modifier.php

Файл расположен по следующему пути: Рабочий стол > Контент > Структура сайта > Файлы и папки > bitrix > templates > название шаблона сайта > components > bitrix > catalog.smart.filter > название шаблона умного фильтра

Для поиска файла, воспользуемся следующим методом:

Выберем пункт Шаблон сайта и затем изменить стиль шаблона

В появившемся окне выбираем Редактировать файл в панели управления.

Далее переходим в папку шаблона, в нашем случае – eshop_bootstrap_blue.

Таким образом можно перейти в папку текущего шаблона сайта.

Рабочий стол > Контент > Структура сайта > Файлы и папки > bitrix > templates > название шаблона сайта > components > bitrix > catalog.smart.filter > название шаблона умного фильтра

Далее проходим по оставшемуся пути и заходим в папку с требуемым шаблоном умного фильтра, в нашем случае – .default.

Находим файл result_modifier.php и вносим в него нужный код

global $sotbitFilterResult;
$sotbitFilterResult = $arResult;
Важно вставить данные строки в конец кода 

Вывод описаний и изображений

Для вывода описаний и изображений требуется внести изменения в файл, вызова компонента каталога.

При использовании других шаблонов сайта файл, в котором вызывается компонент каталога, может отличаться. В ряде случаев это section.php. Если вызов каталога в данном файле отсутствует, то требуется найти строки ссылающиеся на вызов файла с каталогом. 
В нашем случае компонент каталог вызывается в файле section_vertical.php, т.к. используется вертикальный фильтр.

В данном файле требуется найти компонент, отвечающий за вывод товаров, в нашем случае – bitrix:catalog.section
Далее требуется вставить нужный код отображения требуемого элемента.

global $sotbitSeoMetaTopDesc;//для установки верхнего описания
echo $sotbitSeoMetaTopDesc;//вывод верхнего описания
global $sotbitSeoMetaBottomDesc;//для установки нижнего описания
echo $sotbitSeoMetaBottomDesc;//вывод нижнего описания
global $sotbitSeoMetaAddDesc;//для установки доп. Описания
echo $sotbitSeoMetaAddDesc;//вывод доп. описания
global $sotbitSeoMetaFile;//для установки изображения
echo $sotbitSeoMetaFile;//вывод изображения

Пример:

Для верхнего описания требуется вставить код установки и вывода описание над компонентом вывода каталога, соответственно для вывода нижнего описания - под компонентом вывода каталога

Текст верхнего, нижнего и дополнительного описания, а также изображение, берется из заданного условия. Пример работы с условиями будет рассмотрен в уроке Администрирование: Список условий.

Модуль также позволяет выводить верхнее, нижнее и дополнительное описание через отложенные функции.

Отложенные функции - технология, позволяющая задавать заголовок страницыпункты навигационной цепочкиCSS стилидополнительные кнопки в панель управлениямета-теги и т.п. с помощью функций используемых непосредственно в теле страницы. Соответствующие результаты работы этих функций выводятся в прологе, то есть выше по коду, чем они были заданы.

Для этого требуется вставить требуемые функции в желаемую часть кода.

$APPLICATION->ShowViewContent('sotbit_seometa_top_desc');//вывод верхнего описания
$APPLICATION->ShowViewContent('sotbit_seometa_bottom_desc');//вывод нижнего описания
$APPLICATION->ShowViewContent('sotbit_seometa_add_ desc');//вывод доп. описания

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

В случае, если требуется внести изменения в отображаемый текст, то воспользуемся следующей функцией:

global $sotbitSeoMetaTopDesc;//для установки верхнего описания
$this->SetViewTarget('sotbitSeoMetaTopDesc'); //помечаем область для вывода с именем "sotbitSeoMetaTopDesc", имя может быть любым, главное чтоб было уникальным
echo $sotbitSeoMetaTopDesc;//вывод верхнего описания
$this->EndViewTarget();
Данную функцию требуется поместить после вызова основного компонента sotbit:seo.meta.

В строке echo $sotbitSeoMetaTopDesc можно вносить требуемые изменения, например:

global $sotbitSeoMetaTopDesc;//для установки верхнего описания
$this->SetViewTarget('sotbitSeoMetaTopDesc'); //помечаем область для вывода с именем "sotbitSeoMetaTopDesc", имя может быть любым, главное чтоб было уникальным
echo '<b><em>'.$sotbitSeoMetaTopDesc.'</em></b>';//вывод верхнего описания $this->EndViewTarget();

После добавления кода требуется вывести верхнее описание в нужном месте.
Например, для вывода верхнего описания над умным фильтром требуется вставить следующую строку над компонентом bitrix:catalog.smart.filter.

$APPLICATION->ShowViewContent('sotbitSeoMetaTopDesc');

При корректном внесении всех изменений и при выполнении условий, заданных в модуле SEO умного фильтра, в каталог добавятся требуемые элементы.



На изображении видно, что верхнее и нижнее описание выводятся в соответствии с условием, также на изображении виден отредактированный текст отложенной функции, который расположен над умным фильтром. Модуль также добавил хлебные крошки и изменил заголовок <h1>  в соответствии с заданными условиями.

Вместо текста можно вывести изображение, которое также задается через условия SEO умного фильтра.

Сотбит
Веб студия занимается разработкой сайтов на 1С-Битрикс, разработкой типовых решений, входит в ТОП-10 разработчиков для Маркетплейса 1С-Битрикс.
192029
Россия
Ленинградская область
Санкт-Петербург
м. «Петроградская», пр-т Медиков, д. 3-5, лит. А, оф. 210
+7 (812) 670-07-40
info@sotbit.ru
,
Обратная связь