Реклама в интернете
Рекламное интернет-агентство «Heika» в Санкт-Петербурге предлагает ряд эффективных рекламных решений.
Создание сайтов
Создание сайта – большой проект. Эффективность вашего бизнеса в интернете зависит от комплексного подхода к решению задач.
Продвижение сайтов
Мы создаем сайт, учитывая принципы оптимизации сайта и психологию пользователя (оптимизированный html-код, оригинальность дизайна).
Иногда бывает нужно создать форму где email будет сразу попадать в подписку. Пример такой формы на Битрикс.
В админке создаём форму в "Сервисы">"Веб-формы"
Используем свой шаблон
<?
if($FORM->ShowFormNote()){?>
<p>Спасибо за подписку.</p>
<?}else{?>
<div class="name mb20">
<h4><?=$FORM->ShowFormTitle("")?></h4>
</div>
<div class="status mb20">
<div class="title mb20"><?=$FORM->ShowInputCaption("email","")?>:</div>
<div class="email mb20"><?=$FORM->ShowInput('email')?></div>
</div>
<div class="status mb20">
<div class="title mb20"><?=$FORM->ShowInputCaption("status","")?>:</div>
<?=$FORM->ShowInput('status')?> </div>
<hr>
<div class="submit mb20"><?=$FORM->ShowInput('info')?></div>
<?=$FORM->ShowSubmitButton("","")?>
<div></div>
<div class="note"> <?=$FORM->ShowFormErrors()?> </div>
<?}?>
Добавляем код вызова формы в шаблоне:
<? $APPLICATION->IncludeComponent("bitrix:form.result.new", "main", Array(
"CACHE_TIME" => "3600", // Время кеширования (сек.)
"CACHE_TYPE" => "A", // Тип кеширования
"CHAIN_ITEM_LINK" => "", // Ссылка на дополнительном пункте в навигационной цепочке
"CHAIN_ITEM_TEXT" => "", // Название дополнительного пункта в навигационной цепочке
"EDIT_URL" => "", // Страница редактирования результата
"IGNORE_CUSTOM_TEMPLATE" => "N", // Игнорировать свой шаблон
"LIST_URL" => "", // Страница со списком результатов
"SEF_MODE" => "N", // Включить поддержку ЧПУ
"SUCCESS_URL" => "", // Страница с сообщением об успешной отправке
"AJAX_MODE" => "Y", // режим AJAX
"AJAX_OPTION_SHADOW" => "N", // затемнять область
"AJAX_OPTION_JUMP" => "Y", // скроллить страницу до компонента
"AJAX_OPTION_STYLE" => "Y", // подключать стили
"AJAX_OPTION_HISTORY" => "N",
"USE_EXTENDED_ERRORS" => "N", // Использовать расширенный вывод сообщений об ошибках
"WEB_FORM_ID" => "5", // ID веб-формы
"COMPONENT_TEMPLATE" => ".default",
"VARIABLE_ALIASES" => array(
"WEB_FORM_ID" => "WEB_FORM_ID",
"RESULT_ID" => "RESULT_ID",
)
),
false
);?>
Затем в /bitrix/php_interface/init.php добавить подписку по событию:
<?
include_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/wsrubi.smtp/classes/general/wsrubismtp.php");
function my_onBeforeResultAdd($WEB_FORM_ID, &$arFields, &$arrVALUES)
{
global $APPLICATION;
if ($WEB_FORM_ID == 2){
//$APPLICATION->ThrowException(var_dump($arrVALUES));
$email = $arrVALUES["form_email_6"];
if( $arrVALUES["form_radio_info"] == 11){
$RUB_ID = "4";
}elseif($arrVALUES["form_radio_status"] == 7){
$RUB_ID = "1";
}elseif($arrVALUES["form_radio_status"] == 8){
$RUB_ID = "2";
}elseif($arrVALUES["form_radio_status"] == 9){
$RUB_ID = "3";
}
}
if($email and $RUB_ID){
$subscrube_field = Array(
"FORMAT" => "html",
"EMAIL" => $email,
"ACTIVE" => "Y",
"RUB_ID" => array($RUB_ID),
"CONFIRMED" => "Y",
"SEND_CONFIRM" => 'N'
);
CModule::IncludeModule('subscribe');
$check_sub = CSubscription::GetByEmail($email);
$subscr = new CSubscription;
//ищем подписку, обновлем, если есть
if($arSub = $check_sub->Fetch()){
$subscr->Update($arSub["ID"], $subscrube_field);
}else{
$ID = $subscr->Add($subscrube_field);
}
}
}
AddEventHandler('form', 'onBeforeResultAdd', 'my_onBeforeResultAdd');
AddEventHandler('subscribe', 'OnStartSubscriptionAdd', 'my_OnStartSubscriptionAdd');
function my_OnStartSubscriptionAdd(&$arFields)
{
if($arFields['RUB_ID'][0] == 5){
CModule::IncludeModule("form");
$FORM_ID = 4;
$arValues = array (
"form_text_18" => $arFields['EMAIL']
);
$RESULT_ID = CFormResult::Add($FORM_ID, $arValues);
}
}
?>
Для того, чтобы добавить коментарий, авторизируйтесь.