Показаны сообщения с ярлыком bitrix. Показать все сообщения
Показаны сообщения с ярлыком bitrix. Показать все сообщения

пятница, 3 августа 2018 г.

Битрикс - добавление в почтовый шаблон номера телефона

Вводная: Необходимо добавить номер телефона и адрес клиента в письмо от интернет-магазина битрикса (о новом заказе).

Решение:
1) Добавляем в /bitrix/php_interface/init.php код

<?
 AddEventHandler("sale", "OnOrderNewSendEmail", "ModifySaleMails");
 
 function ModifySaleMails($orderID, &$eventName, &$arFields)
 {
    $arOrder = CSaleOrder::GetByID($orderID);  
 
    $order_props = CSaleOrderPropsValue::GetOrderProps($orderID);  
 
    $phone = ""; 
    $address = "";
 
    while ($arProps = $order_props->Fetch()){    
      if ($arProps["CODE"] == "PHONE"){
          $phone = htmlspecialchars($arProps["VALUE"]);}
 
      if ($arProps["CODE"] == "ADDRESS"){
         $address = htmlspecialchars($arProps["VALUE"]);}
    }
 
  if (!empty($arOrder["USER_DESCRIPTION"])){
      $arFields["DESCRIPTION"] = $arOrder["USER_DESCRIPTION"];}
 
    //-- добавляем новые поля в массив результатов
    $arFields["PHONE"] =  $phone;
    $arFields["ADDRESS"] = $address;
 }
?>

2) Добавляем в почтовый шаблон ИМЯСАЙТА/bitrix/admin/message_admin.php
(я добавлял в шаблон "[SALE_NEW_ORDER] Новый заказ")

Доставка по адресу: #ADDRESS#<br />
Ваш контактный телефон: #PHONE#<br />

Должно получится как-то так



3) Результат

понедельник, 24 июня 2013 г.

Смена ключа Яндекс.Карт в сайте на Битрикс

Вводная: Внезапно перестали работать карты на сайте построенном на CMS Bitrix. Перестал быть валидным ключ API яндекс.карт (оказалось, что разработчики сайта прописали свой и то-ли удалили его, то-ли его сам яндекс забанил).

Решение:  Делаем резервную копию сайта.
Идём на http://api.yandex.ru/maps/getkey.xml (надо быть зарегистрированным пользователем яндекса, так что или регаемся, или входим под имеющимся аккаунтом) и получаем новый ключ.

Ключ имеет примерно такой вид - AAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCFFFFFFFFFFFFFFFFFFFDDDDDDDDDDDDD=

Ключ яндекс-карт не меняется через админку битрикса!

Создаём php файл (к примеру с имененем change_map_yandex_key.php) следующего содержания
<?
define('BX_SESSION_ID_CHANGE', false);
define('BX_SKIP_POST_UNQUOTE', true);
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
?>
<?
//Меняем ключ
$params = array("example.com" => "AAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCFFFFFFFFFFFFFFFFFFFDDDDDDDDDDDDD=");
COption::SetOptionString("fileman", "map_yandex_keys", serialize($params));
//Проверяем, что ключ изменился
$aa=COption::GetOptionString("fileman", "map_yandex_keys");
if ($aa!=''){
$apiKeys = unserialize($aa);
echo '<pre>';print_r($apiKeys);echo '</pre>';
}
?>
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>



Закидываем его в корневую папку сайта и вызываем - http://example.com/change_map_yandex_key.php

Дополнительные ссылки:
http://dev.1c-bitrix.ru/api_help/main/reference/cpageoption/setoptionstring.php CPageOption::SetOptionString официальная документация

среда, 13 апреля 2011 г.

Процедура обновления сайта на Битрикс

Сделал для себя небольшую инструкцию по обновлению сайта -

  1. Контроль файлов (http://example.com/bitrix/admin/security_file_verifier.php?lang=ru) - проверяем, не менялись ли файлы - грубо говоря, не было ли внедрения постороннего кода (в результате взлома, к примеру) в наш сайт, после обновления делать смысла нет, так как файлы будут изменены обновлением
  2. Проверка БД (http://example.com/bitrix/admin/repair_db.php?lang=ru) - перед обновлением делается для того, чтобы проверить, нет ли битых таблиц, иначе при обновлении может застопориться об такую таблицу и упасть
  3. Резервное копирование - (http://example.com/bitrix/admin/dump.php?lang=ru)
  4. Обновление - http://example.com/bitrix/admin/sysupdate.php?lang=ru
  5. Очистка кэша (http://example.com/bitrix/admin/cache.php?lang=ru - вкладка "Отчистка кеша") - после обновления может вполне так получится, что структура некоторых компонентов поменяется, если не почистить кэш, то могут возникнуть проблемы с отображением (сдвинутые со своих мест компоненты)
  6. Проверка сайта (http://example.com/bitrix/admin/site_checker.php?lang=ru - вкладка "Тестирование конфигурации")
  7. Проверка таблиц (http://example.com/bitrix/admin/repair_db.php?lang=ru) - проверяем, не случилось ли, что с таблицами после обновления
  8. Оптимизация таблиц (http://example.com/bitrix/admin/repair_db.php?optimize_tables=Y&lang=ru) - так как, обновление может оптимизировать структуру (да и перестраивать - добавить, удалить, изменить) таблиц, то обновление будет не лишним
  9. Создаём заново файл контроля файлов (http://example.com/bitrix/admin/file_checker.php) - так как после обновления системные файлы изменяются и предыдущий становится бесполезным
В конце проверяем через браузер (желательно использовать, несколько браузеров, на разных движках), без авторизации -
1.Визуально - не изменился ли сайт
2.Работу каталогов, карточек товаров, форума
3.Скорость работы

вторник, 16 ноября 2010 г.

Администрирование сайта на Bitrix

Немного про администрирование сайта на Bitrix. Именно администрирование, а не программирование и редактирование.


Для начала настроите параметры безопасности (защита от фишинга, проактивный антивирус, параметры сессий и тд) и не забываем о встроенных в битрикс инструментах проверки сайта - http://example.ru/bitrix/admin/site_checker.php?lang=ru

Проверка хостинга на остаток средств - чтобы не отключили внезапно - http://hostingname.ru/

Проверка на контроль целостности файлов ядра системы (изначально вы должны создать файл контроля, затем просто проверять и создавать заново, рекомендуется делать после обновлений и изменений файлов ядра) - http://example.ru/bitrix/admin/security_file_verifier.php

Проверка журнала событий на попытки взлома, вирусов, фишинга - если подтверждается можно занести в чёрный список или же если ошибка системы, добавить в исключения - http://example.ru/bitrix/admin/event_log.php?lang=ru

Резервная копия - делаем полную резервную копию (ОЧЕНЬ желательно слить её на локальную машину (не забыв слить restore.php - вполне возможно, что после обновления системы файл изменился и вы не сможете корректно восстановить имеющийся архив) - http://example.ru/bitrix/admin/dump.php?lang=ru

Проверка на наличие и в случае если имеются установка обновлений - http://example.ru/bitrix/admin/update_system.php?lang=ru (также не забываем поставить автоматическую проверку обновлений и сделать отсылку уведомлений о них себе на почту (http://lubomir.ru/bitrix/admin/update_system.php?refresh=Y&lang=ru вкладка "Дополнительно"), чтобы не заходить каждый день). Про обновление подробнее - процедура обновления битрикса

Проверка и воcстановление таблиц - рекомендуется запускать примерно раз в месяц (ВНИМАНИЕ!!! запускать на одной единственной машине, проверяя чтобы никто в данный момент ничего на сайте не делал (можно даже временно заблокировать работу других пользователей)) - http://example.ru/bitrix/admin/repair_db.php?lang=ru

Оптимизация БД - рекомендации такие же как и в предыдущим пункте. Если решите делать, то ОБЯЗАТЕЛЬНО делайте только после проверки БД. После оптимизации, также рекомендуется провести проверку целостности БД (можете также сравнить время выполнения до и после оптимизации) - http://example.ru/bitrix/admin/repair_db.php?lang=ru&optimize_tables=Y

Время от времени необходимо чистить кэш. Для этого заходим на http://example.ru/bitrix/admin/cache.php?lang=ru - Заходим на вкладку "Очистка файлов кэша". Если сайт работает нормально, то достаточно указать - "Только устаревшие". В случае проблем можно отчистить кэш полностью

Дополнения: 
  •  Поднимите тестовый сайт для проверки корректности изменений, таких как обновления или редактирование шаблонов. И не забывайте о резервном копировании
  •  Также не забудьте зарегистрироваться на сайте технической поддержки http://www.1c-bitrix.ru/support/customers/ . Сразу же внесите все свои данные (ФИО, телефоны, емейлы, можете подписать на рассылки). И не забудьте зарегистрировать ключ (это делается для увеличения уровня технической поддержки, у некоммерческой время реакции до суток).
  •  На сайте имеются мастера, которые могут вам пригодиться. Находятся по адресу - http://examle.ru/bitrix/admin/wizard_list.php?lang=ru
  • Советую перед каждым действием (или хотя бы перед началом работы) делать резервную копию. 
  • Также настройте капчу битрикса (минимум измените её со стандартной), плюс рекомендую поменять шрифт и параметры прорисовки. Это нужно потому, что для стандартной каптчи давно есть готовые автоматические OCR. Спам всё равно будет, но меньше (http://example.ru/bitrix/admin/captcha.php?lang=ru)
  • http://example.ru/bitrix/admin/settings.php?lang=ru&mid_menu=1&mid=statistic - Выбираем "исключить пользователей с определенных IP адресов". Добавляем свой айпишник, чтобы не попадать в статистику (можно в принципе настроить и по "пользователям и группам и ип-адресу" если к примеру нужно в большой компании отслеживать сколько сотрудники сходили на сайт, а администраторов, разработчиков и контент-менеджеров не считал)