Сегодня поговорим о том, как автоматизировать создание коротких ссылок на страницы Вашего сайта при использовании 1С-Битрикс.
Доброго времени суток!
Сегодня поговорим о том, как автоматизировать создание коротких ссылок на страницы Вашего сайта при использовании 1С-Битрикс.
Конечно есть много бесплатных сервисов для генерации коротких ссылок, но согласитесь, удобнее, когда все автоматизированно и интегрировано.
Для чего нужны короткие ссылки?
Все просто - если Вам необходимо опубликовать ссылку на свой ресурс (допустим блог), то куда проще и лаконичнее использовать ссылку формата:
https://www.plus-aliance.ru/~SNzNL
Тем более когда мы говорим о различных "свитерах" и "блохах", то это позволяет уместиться в ограничение по длине сообщения.
Сами сравните, эта же ссылка в полном формате выглядит так:
https://www.plus-aliance.ru/company/blogs/zametki_sysadmin/linux-ubiraem-iz-imen-faylov-spetssimvoly-dlya-perenosa-na-windows/
Что с SEO?
С поисковой оптимизацией все нормально, ссылка обрабатывается CMS 1С-Битрикс Управление сайтом таким образом, что поисковая система получает ответ с кодом 301 (ресурс перемещен постоянно).
И так, сам код:
<?//Генерируем короткую ссылку.
$shortlink = false;
$rsData = CBXShortUri::GetList(array(), array());
// получаем все короткие ссылки
while($arRes = $rsData->Fetch()) {
// проверяем наличие короткой ссылки на данную страницу
if ($arRes["URI"] == $APPLICATION->GetCurPageParam("", array("bitrix_include_areas", "clear_cache"))) {
$str_SHORT_URI = $arRes["SHORT_URI"];
$shortlink = true;
}}// если короткая ссылка есть
if ($shortlink): ?>
Короткая ссылка: <a href="http://<?=SITE_SERVER_NAME?>/<?=$str_SHORT_URI?>">
http://<?=SITE_SERVER_NAME?>/<?=$str_SHORT_URI?></a>
<?else:
$str_SHORT_URI = CBXShortUri::GenerateShortUri(); //генерируем новую ссылку
$arFields = array(
"URI" => $APPLICATION->GetCurPageParam("", array("bitrix_include_areas", "clear_cache")),
"SHORT_URI" => $str_SHORT_URI,
"STATUS" => "301",
);
$ID = CBXShortUri::Add($arFields); //добавляем ссылку?>
Короткая ссылка: <a href="http://<?=SITE_SERVER_NAME?>/<?=$str_SHORT_URI?>">
http://<?=SITE_SERVER_NAME?>/<?=$str_SHORT_URI?></a>
<?endif;?>
Вставляем в нужное место вывода компонента. В моем случае я вставил его в вывод детального сообщения блога. И назначаем действие на ссылку или на кнопку "Поделиться"
Надеюсь был полезным, удачи!
