Полезно знать при работе с Битрикс

Получить адрес страницы Битрикс

$page = $APPLICATION->GetCurPage();
echo $page;

 Редирект Битрикс

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.elitbar\.ru$ [NC]
RewriteRule ^(.*)$ http://elitbar.ru/$1 [R=301,L]

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.ru$ [NC]
RewriteRule ^(.*)$ http://example.ru/$1 [R=301,L]

Вывод $arResult

<? if($USER->IsAdmin()) {echo '<pre>'; print_r($arResult); echo '</pre>';} ?>

Проверка адреса страницы

<?
$uri = $APPLICATION->GetCurPage();
if ($uri == «/news/142/») {
include(«ваш_код.php»);
}
?>

Вывод названия раздела

<?
$res = CIBlockSection::GetByID(«#ID_РАЗДЕЛА#»);
if($ar_res = $res->GetNext())
echo $ar_res[‘NAME’];
?>

Вывести разный h1 и title

Так мы выводим мета-тег title между <head> и </head> в header.php

<?$APPLICATION->ShowTitle();?>

Так выводим заголовок страницы в header.php

<?$APPLICATION->ShowTitle(false);?>

Теперь посмотрим, как устанавливать значения в эти переменные.

Установка мета-тега Title

$APPLICATION->SetPageProperty("title", "Мета-тег Title");

Установка заголовка страницы h1

$APPLICATION->SetTitle("Заголовок h1");

Добавляем и убираем слэш в конце урла

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..+$
RewriteCond %{REQUEST_URI} !/$
RewriteRule (.*) http://www.site.ru/$1/ [R=301,L]

Этот вариант заработал как надо.

Нашел еще варианты:

#убираем слэш в конце
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ /$1 [R=301,L]
#добавляем слэш в конце
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]

Убираем дубли слэша

RewriteCond %{REQUEST_URI} ^(.*)//(.*)$
RewriteRule . %1/%2 [R,L]

Проверяем наличие подстроки в строке

$str_text = "Ищем подстроку в этой строке.";
$str_find = "/подстроку/iU";
if (preg_match($str_find, $str_text))
{
    echo "Найдена.";
} else {
    echo "Не найдена.";
}
<?endif;?>

//Лучше вот так
<?$page = $APPLICATION->GetCurPage();
$razdel = "piz";
if(strpos($page,$razdel)):?>

<?endif;?>

 

 

Автор: Алексей Байков

Алексей Байков

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

Может это сойдет?

MAMP - проблема с MySQL

Не запускается mysql-сервер на MAMP

Несколько раз возникала неприятная ситуация с mysql в MAMP. После некорректного завершения программы (у меня, …