+7 495 008 8452 пн.-пт. 10:00 – 17:00

SEO: поддомены + управление метатегами и текстами

В рассрочку от 459 /мес.
Купить: 5 500 руб Онлайн-демо

Скриншоты

Технические данные

Дата публикации:
15.10.2015
Дата обновления:
28.06.2023
Версия:
1.0.8
Адаптивность:
Нет
Поддержка композита:
Нет
Число установок:
500 - 999 раз

Описание

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

Дополнительно в модуле реализован удобный помощник SEO-оптимизатора. Инфоблок «SEO», создаваемый модулем, дает возможность управлять метатегами и SEO-текстами на любых страницах сайта.

Плюсы использования:
  • Возможность присвоения отдельного региона каждому поддомену,
  • Простота аналитики (настройка счётчика для каждого поддомена),
  • Подтверждение прав в сервисах для вебмастера Яндекс и Google,
  • Привлечение дополнительного объема трафика из поисковой выдачи, за счет мультивыдачи,
  • Продвижение в нескольких регионах,
  • Назначение/смена meta тегов <title>, <description>, <keywords>, <robots> для любой страницы вашего сайта,
  • Установка и смена SEO текстов для любых страниц сайта и поддоменов,
  • Возможность включения, выключения контента для каждого поддомена в отдельности (инструкция в установке).
В итоге модуль позволит Вам увеличить обхват аудитории за счёт созданных региональных сайтов и увеличить количество клиентов. А поскольку каждый домен будет таргетирован на отдельный город, то позиции сайта при поиске в каждом городе также повысятся.

Поддомены создаются динамическими (псевдодомены), они не занимают дополнительного места у вас на сервере (только увеличивается размер кеша).
После активации купона установка происходит в автоматическом режиме.

Вам необходимо самостоятельно создать псевдонимы на нужные вам поддомены на хостинге.

Модуль создаст на Вашем сайте новый тип инфоблока: «Webfly - Поддомены и SEO», с двумя инфоблоками в нём: «Города» — для управления информацией на региональных поддоменах и «SEO» — для установки необходимых метаданных на любых страницах сайта.

Для полноценной работы всех функций модуля необходимо, чтобы в настройках сайта был указан параметр "URL сервера (без http://):" (Настройки -> Сайты -> Список сайтов -> Ваш сайт).

С версии 1.0.5 внедрена поддержка доменов третьего и более уровней основного сайта. Например - ваш основной сайт: site.site1.ru - вы можете также работать со всеми функциями модуля, создавая региональные поддомены вида msk.site.site1.ru, spb.site.site1.ru и т.д. При этом в настройке сайта "URL сервера (без http://):" должен быть указан основной домен - site.site1.ru.

ВНИМАНИЕ! Если вам нужно редактировать метатеги из публичной части сайта, вам необходимо разместить вызов компонента "webfly:meta.edit" перед закрывающим тегом </body>.

Код вызова компонента "webfly:meta.edit":

<?$APPLICATION->IncludeComponent(
    "webfly:meta.edit", 
    ".default", 
    array(
        "CACHE_TYPE" => "A",
        "CACHE_TIME" => "3600",
        "WF_JQUERY" => "N"
    ),
    false
);?>

Как работать с инфоблоком «Города»

Инфоблок «Города» предназначен для вывода уникальных данных, таких как телефон, адрес, название города и др., для каждого поддомена сайта.

Инфоблок «Города» нужно заполнить региональными поддоменами сайта с их уникальными свойствами: название города, поддомен (например, kursk, moscow, voronezh), телефон, e-mail, контактная информация и т.д. Для основного сайта поле «Поддомен» нужно оставить пустым.

Для того чтобы вывести на сайте значения свойств из инфоблока «Города», нужно разместить символьный код соответствующего свойства в решетках, например, #WF_CONTACTS#, #WF_MAP#, #WF_EMAIL#. Вы также можете создавать свои свойства и выводить их на сайте.

Как работать с инфоблоком «SEO»

Инфоблок «SEO» предназначен для быстрой установки метатегов и размещения SEO-текстов на любой странице сайта.

ВНИМАНИЕ! Для изменения метатегов необходимо разместить вызов компонента "webfly:meta.edit" перед закрывающим тегом </body>.

Код вызова компонента "webfly:meta.edit":

<?$APPLICATION->IncludeComponent(
    "webfly:meta.edit", 
    ".default", 
    array(
        "CACHE_TYPE" => "A",
        "CACHE_TIME" => "3600",
        "WF_JQUERY" => "N"
    ),
    false
);?>

Изменять метатеги можно как из публичной части сайта, воспользовавшись появившейся панелькой "Редактировать метатеги страницы", так и из админки.

Редактирование из публичной части

После размещения вызова компонента "webfly:meta.edit" в публичной части сайта внизу всех страниц появится красная панелька (видна только пользователям с административными правами), при клике на которую появится форма редактирования метатегов страницы.

Редактирование из админки

Поле «Страница» инфоблока заполняется адресом конкретной страницы (без http://), для которой необходимо проставить свои метатеги, а свойства «TITLE», «ROBOTS», «DESCRIPTION» и «KEYWORDS» заполняются необходимой информацией.

В множественное свойство «WF_SEO_TEXT» можно добавить SEO-тексты для данной страницы. Для того чтобы вывести эти тексты на сайте, необходимо указать символьный код свойства в решетках и порядковый номер SEO-текста, например, #WF_SEO_TEXT_1#, #WF_SEO_TEXT_2# и т.д.

Дополнительные возможности


Вывести названия всех городов со ссылками на соответствующие поддомены:

#WF_CITIES#

Вывод городов с разделением на центры, области и округа + избранные города:
<?$APPLICATION->IncludeComponent(
  "webfly:cities.popup", 
  ".default", 
  array(
    "COMPONENT_TEMPLATE" => ".default",
    "CACHE_TYPE" => "A",
    "CACHE_TIME" => "3600",
  ),
  false
);?>
Нужно создать новое списковое свойство с символьным кодом WF_FAVOURITE, значение списка с кодом "Y". Тогда вы сможете указывать какие города выводить в поп-апе, а какие нужно скрыть от клиентов.

Вывести любой город:

Основной город: #WF_CITY_default#
Остальные: #WF_CITY_поддомен#

Вывести название текущего города:

#WF_CITY_NAME#

Фильтрация выводимой на сайте информации


При создании нескольких региональных поддоменов может возникнуть необходимость не выводить некоторые новости или товары для определенных городов. Вы можете Управлять показом таких элементов с помощью фильтрации.

Для этого Вам необходимо:

1. Создать в инфоблоке, элементы которого вы не хотите выводить для определенных поддоменов, создать новое свойство со следующими параметрами:

Название: Не выводить для городов
Тип: Привязка к элементам в виде списка
Код: NOT_SHOW_IN_CITIES
Множественное

И настроить его на инфоблок «Города»

2. Далее, в элементах инфоблока, которые не нужно выводить для определенных городов, во вновь созданном свойстве «Не выводить для городов» выбрать эти города.

3. На странице с вызовом компонента, настроенном на данный инфоблок, перед вызовом компонента, добавить код фильтра:

<?
if (CModule::IncludeModule("webfly.seocities") and CModule::IncludeModule("iblock"))
{
    $cityID = CSeoCities::getCityId();
    global $cityFilter;
    $cityFilter = array("!ID" => CIBlockElement::SubQuery("ID", array("IBLOCK_ID" => "ID_ИНФОБЛОКА", "PROPERTY_NOT_SHOW_IN_CITIES" => $cityID)));
}
?>

Где "ID ИНФОБЛОКА" — ID Вашего инфоблока

Не забудьте указать в настройках компонента значение фильтра  — cityFilter.


Создание разных файлов robots.txt для региональных поддоменов

1. Создайте в корне сайта папку robots.
2. Создайте в этой папке файлы robots.txt для каждого регионального поддомена (прим: robots.txt, robots_msk.txt, robots_spb.txt и т.д.)
3. В файле .htaccess укажите пути для созданных файлов robots.txt:
RewriteCond  %{HTTP_HOST} msk.site.ru$
Rewriterule ^robots.txt$ /robots/robots_msk.txt [L]
RewriteCond  %{HTTP_HOST} spb.site.ru$
Rewriterule ^robots.txt$ /robots/robots_spb.txt [L]
RewriteCond  %{HTTP_HOST} site.ru$
Rewriterule ^robots.txt$ /robots/robots.txt [L]
в некоторых случаях работает следущая комбинация
RewriteCond  %{HTTP_HOST} msk\.site.ru
Rewriterule ^robots.txt$ /robots/robots_msk.txt [L]
RewriteCond  %{HTTP_HOST} spb\.site.ru
Rewriterule ^robots.txt$ /robots/robots_spb.txt [L]
RewriteCond  %{HTTP_HOST} site.ru 
Rewriterule ^robots.txt$ /robots/robots.txt [L]

Или второй способ если у вас ооочень много городов

Правило переадресации для .htaccess

# sitemap.xml with sitemap.php only if the latter exists
RewriteCond %{REQUEST_FILENAME} sitemap-files.xml
RewriteCond %{DOCUMENT_ROOT}/sitemap-files.php -f
RewriteRule ^(.*)$ /sitemap-files.php [L]

# robots.txt with robots.php only if the latter exists
RewriteCond %{REQUEST_FILENAME} robots.txt
RewriteCond %{DOCUMENT_ROOT}/robots.php -f
RewriteRule ^(.*)$ /robots.php [L]

Создаем общий файл robots.php

<?
$arHost = explode( ":", $_SERVER["HTTP_HOST"]);
$_SERVER["HTTP_HOST"] = $arHost[0];
$hostname = $_SERVER['HTTP_HOST'];

function echoTextFile($file) {
if (! file_exists($file)) return false;
if (! is_readable($file)) return false;
$timestamp = filemtime($file);
$tsstring = gmdate('D, d M Y H:i:s ', $timestamp) . 'GMT';
$etag = md5($file . $timestamp);
$fs = filesize($file) + 1000;
header('Content-Type: text/plain');
header('Content-Length: '.$fs);
header("Last-Modified: $tsstring");
header("ETag: \"{$etag}\"");

$fc = file_get_contents($file);

if($_SERVER['HTTP_HOST']!="himgroup.ru"){
echo "User-agent: Googlebot\nDisallow: /\n\n" . $fc;
} else {
echo $fc;
}

return true;}$robotsHost = dirname(__FILE__) . "/regions/robots/robots_{$hostname}.txt";
$robotsDefault = dirname(__FILE__) . "/robots.txt";

if(!echoTextFile($robotsHost) && !echoTextFile($robotsDefault))
{
header('HTTP/1.0 404 Not Found');}

Создаем общий файл sitemap.php

<?
$arHost = explode( ":", $_SERVER["HTTP_HOST"]);
$_SERVER["HTTP_HOST"] = $arHost[0];
$hostname = $_SERVER['HTTP_HOST'];

function echoTextFile($file) {
if (! file_exists($file)) return false;
if (! is_readable($file)) return false;

$timestamp = filemtime($file);
$tsstring = gmdate('D, d M Y H:i:s ', $timestamp) . 'GMT';
$etag = md5($file . $timestamp);

header('Content-Type: application/xml');
header('Content-Length: '.filesize($file));
header("Last-Modified: $tsstring");
header("ETag: \"{$etag}\"");
readfile($file);
return true;
}

$sitemapHost = dirname(__FILE__) . "/regions/sitemap/sitemap_{$hostname}.xml";
$sitemapDefault = dirname(__FILE__) . "/sitemap.xml";

if(!echoTextFile($sitemapHost) && !echoTextFile($sitemapDefault))
{
header('HTTP/1.0 404 Not Found');
}

Просим ознакомиться с правилами поддержки!
____________________________________________________________

Режим работы: 12:00 — 18:00 по московскому времени.
Время реакции на обращение – до 3 рабочих дней (стараемся отвечать быстро, в порядке живой очереди).
Выходные дни: суббота, воскресенье, праздники.

Если у вас возникла проблема или ошибка, пришлите, пожалуйста, сразу же доступы на проект, которые попросит у вас система при создании обращения.
____________________________________________________________

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

Платность:
  • Консультации - бесплатно,
  • Вопросы - бесплатно,
  • Исправление ошибок - бесплатно,
  • Работы на сайте  - по тарифу «Разовый» https://24.webfly.ru/tariffs/
Мы стараемся не брать доработки на сайтах, так как наши ресурсы направлены только на наши модули (в данном случае), но когда происходят исключения, мы просим оплату по норма-часам, которые будут затрачены на решение вашего вопроса (тариф "Разовый" https://24.webfly.ru/tariffs/)

Эта цена справедлива и для установки модуля, если мы правили код сайта. Консультации и подсказки бесплатны.

Отправьте заявку в техподдержку вы можете через систему тикетов.

Хорошего вам дня!

Установите этот модуль прямо сейчас!

Для этого укажите адрес сайта:

пример: https://www.site.ru
SEO: поддомены + управление метатегами и текстами
SEO: поддомены + управление метатегами и текстами
5 500 руб