Перейти к содержимому


Проблема с установкой Метрики и Analytics


  • Вы не можете ответить в тему
Сообщений в теме: 11

#1 Mc_Crush

    Новичок

  • Пользователи
  • Pip
  • 4 сообщений
Репутация: 0
Начинающий

Отправлено 31 March 2015 - 10:47 PM

Подскажите пожалуйста, как устанавливать данные счетчики!? в какой файл прописывать!? помогите новичку!!
  • 0

#2 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 31 March 2015 - 11:18 PM

Подскажите пожалуйста, как устанавливать данные счетчики!? в какой файл прописывать!? помогите новичку!!

В index.tpl.html.
Не забыть при этом {literal} - http://www.smarty.ne...ion.literal.tpl
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#3 Mc_Crush

    Новичок

  • Пользователи
  • Pip
  • 4 сообщений
Репутация: 0
Начинающий

Отправлено 01 April 2015 - 08:33 AM

Огромное спасибо !! всё получилось))

Очередной вопрос ) строка ( Email для отправки уведомлений о заказах) как сделать чтоб уведомления отправлялись на несколько почтовых адресов !?
  • 0

#4 namer

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 45 сообщений
Репутация: 16
Начинающий
  • ГородКрасноярск

Отправлено 01 April 2015 - 10:55 AM

Грубо, но эффективно в core/functions/order_functions.php найти функцию _sendOrderNotifycationToAdmin,
в ней после строк
		if (!CONF_ACTIVE_ORDER) xMailTxtHTMLDATA(CONF_ORDERS_EMAIL, STRING_ORDER." #".$orderID." - ".CONF_SHOP_NAME, $html);
		else  xMailTxtHTMLDATA(CONF_ORDERS_EMAIL, STRING_ORDER." #".$orderID." (".ADMIN_SEND_INACT_ORDER.") - ".CONF_SHOP_NAME, $html);
добавить код
		if (!CONF_ACTIVE_ORDER) xMailTxtHTMLDATA('second_mail@domen.ru', STRING_ORDER." #".$orderID." - ".CONF_SHOP_NAME, $html);
		else  xMailTxtHTMLDATA('second_mail@domen.ru', STRING_ORDER." #".$orderID." (".ADMIN_SEND_INACT_ORDER.") - ".CONF_SHOP_NAME, $html);
где вместо second_mail@domen.ru вставить нужный адрес.
Таким образом можно отправить неограниченное кол-во сообщений, но я этого бы не рекомендовал.

Существуют более элегантные способы решения вашей задачи, но они и сложнее технически, поэтому ограничусь данным решением.
  • 1
Установка, настройка
доработка функционала
Изображение

#5 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 01 April 2015 - 11:06 AM

как сделать чтоб уведомления отправлялись на несколько почтовых адресов !?

Смотря где и как Вы собираетесь задавать эти несколько адресов.
В используемом для отправки почты классе phpmailer есть возможность задавать не только to:, но также cc: и bcc:
Ну а как конкретно это реализовать - вопрос программиста.
Оно не сложно, но вариант весьма не один.

Я бы задавал эти адреса в строке "общих настроек", где штатно задается один адрес. Через запятую.
А в функции отправки почты используя explode() разбирал строку в массив адресов и первый элемент массива прописывал в to: (как штатно и сделано), а остальные в сс: или bcc:
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#6 namer

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 45 сообщений
Репутация: 16
Начинающий
  • ГородКрасноярск

Отправлено 01 April 2015 - 06:05 PM

Я

Ну а как конкретно это реализовать - вопрос программиста.

Я думаю, если бы человек понимал о чем вы говорите, он не задавал бы таких вопросов
  • 0
Установка, настройка
доработка функционала
Изображение

#7 Mc_Crush

    Новичок

  • Пользователи
  • Pip
  • 4 сообщений
Репутация: 0
Начинающий

Отправлено 01 April 2015 - 06:49 PM

Я бы задавал эти адреса в строке "общих настроек", где штатно задается один адрес. Через запятую.

когда пропысывать через запетую вообще не приводит не на одну почту)

namer,
Я новичок в данном деле ) немного начал разбираться. Но как сделать соображаю, пока не знаю какой файл и за что отвечает )
  • 0

#8 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 01 April 2015 - 07:50 PM

Я думаю, если бы человек понимал о чем вы говорите, он не задавал бы таких вопросов

Возможно. Но это не личка, вопрос достаточно спросовый и мне было интересно на него ответить ДЛЯ ВСЕХ. В том числе и для тех, кто вполне способен понять ответ. Будет не лень - напишу конкретное решение. Будет лень, соответственно, не напишу :).

когда пропысывать через запетую вообще не приводит не на одну почту

Естественно. Надо же не только два-три-пять адресов прописать в админке через запятую, а еще и как-то обработать этот финт в коде :).

Будет не лень - напишу конкретное решение

Кстати, если рассылка по нескольким емейлам нужна потому, что разными товарами занимаются разные админы, то я не так давно выкладывал решение, где в зависимости от категории товара уведомление о заказе отсылается разным админам - http://vsupport.club...а-есть-решение/
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#9 Mc_Crush

    Новичок

  • Пользователи
  • Pip
  • 4 сообщений
Репутация: 0
Начинающий

Отправлено 01 April 2015 - 08:03 PM

namer, спасибо! установил всё работает !!
  • 0

#10 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 01 April 2015 - 09:43 PM

Будет не лень - напишу конкретное решение.

В поле "Email для отправки уведомлений о заказах" можно вписывать несколько адресов, разделенных запятой.
Типа: aaa@domain.ru,bbb@domain.ru,ccc@example.com
Главное, не переусердствовать, т.к. под хранение сеттингов в shopCMS отводится поле длиной 255 символов :).

function xMailTxtHTMLDATA($_Email, $_Subject, $_Text, $castmail = CONF_GENERAL_EMAIL, $castname = CONF_SHOP_NAME)
{

if (!$_Email) return 0;

include_once ("core/classes/class.phpmailer.php");
$mail = new PHPMailer();
if (!CONF_MAIL_METHOD) $mail->IsSMTP();
else $mail->IsMail();
$mail->Host = CONF_MAIL_HOST;
$mail->Username = CONF_MAIL_LOGIN;
$mail->Password = CONF_MAIL_PASS;
$mail->SMTPAuth = true;
$mail->From = $castmail;
$mail->FromName = $castname;
$mail->CharSet = DEFAULT_CHARSET;
$mail->Encoding = "8bit";
$mail->SetLanguage("ru");
$mail->AddReplyTo($castmail, $castname);
$mail->IsHTML(true);
$mail->Subject = $_Subject;
$mail->Body = $_Text;
$mail->AltBody = ERROR_NO_TEXT_IN_MAILDATA;

# BEGIN отсылка уведомления по нескольким адресам
/*
if (preg_match("/^[_\.a-z0-9-]{1,20}@(([a-z0-9-]+\.)+(com|net|org|mil|edu|gov|arpa|info|biz|inc|name|[a-z]{2})|[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})$/is",
$_Email))
{
$mail->ClearAddresses();
$mail->AddAddress($_Email, '');
return $mail->Send();
}
else return false;
*/
$emails = array();
foreach (explode(',',$_Email) as $email) if (filter_var($email, FILTER_VALIDATE_EMAIL) !== false) $emails[] = $email;
foreach ($emails as $key => $email)
{
if ($key = 1) $mail->AddAddress($email, '');
else $mail->AddCC($email, '');
}
return $mail->Send();
# END отсылка уведомления по нескольким адресам
}

  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#11 makki

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 148 сообщений
Репутация: 7
Начинающий

Отправлено 18 May 2015 - 03:32 PM

Подскажите пожалуйста, как устанавливать данные счетчики!? в какой файл прописывать!? помогите новичку!!

В index.tpl.html.
Не забыть при этом {literal} - http://www.smarty.ne...ion.literal.tpl


почему не в head.tpl.html перед закрывающимся тегом </head> как рекомендует гугл?
  • 0

#12 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 22 May 2015 - 02:13 PM

почему не в head.tpl.html перед закрывающимся тегом как рекомендует гугл?

Да просто по привычке. Да и рекомендация у гугла раньше была именно такая - перед закрывающим тэгом body, насколько я помню.
Сейчас, когда у гугля аналитик несколько разных, то если используется ga.js (старая), то без разницы.
А если новая - analytics.js - то, конечно, в head.tpl.html, иначе вызовы ga(...) просто не будут работать, т.к. будут вызываться раньше загрузки библиотеки.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)