Простых добавить комментарий comment. Как правильно внедрить CRM-систему: алгоритм действий и частые ошибки. Комментарии это обратная связь и мотивация

Согласно исследованию компании C5Insight, занимающейся внедрением CRM, в среднем 38% интеграций CRM в бизнес дают результат ниже прогнозируемого. Причина не в плохом IT-продукте, а в том, что компании не знают, как правильно внедрить CRM, допускают ошибки и в итоге теряют свои инвестиции.

Но если переход на CRM пройдет успешно, то инвестиции окупятся более чем в 5 раз. Согласно исследованию аналитической компании Nucleus Research, каждый доллар, вложенный в CRM, приносит 5,6 долларов прибыли.

Окупаемость инвестиций в CRM-продукт для бизнеса по данным аналитической компании Nucleus Research в 2011 г.

Чтобы понять, как должно проходить внедрение IT-продукта, мы рассмотрим основные этапы интеграции, а также типовые ошибки, которые часто допускают предприниматели.

Этапы внедрения

Внедрение CRM проходит по-разному, но в этом процессе всегда присутствуют пять основных этапов. На каждом из них в роли куратора выступает интегратор - представитель CRM-компании, однако не стоит переживать: вам не придется писать «контрольную работу». Нужно просто следовать указаниям интегратора: точно описывать бизнес-процессы и проблемы, которые вы хотите

1. Описание бизнес-процессов

Так как CRM-система позволяет улучшить и автоматизировать уже имеющиеся процессы, для начала их необходимо описать. Эти данные лягут в основу настроек программы:

  • Какова структура компании? Как распределены люди между отделами? Как распределены задачи между сотрудниками?
  • Кто клиенты компании? , как ?
  • Каков алгоритм взаимодействия с клиентами?
  • Как ведётся работа с лояльностью клиентов? Как в общем работает маркетинг?
  • Какие принято использовать в компании?
2. Составление техзадания

Когда бизнес-процессы описаны, нужно проанализировать слабые места. Ведь именно для их устранения и внедряется программа.

Например, ваши менеджеры медленно реагируют на новые заявки с сайта компании - перезванивают клиентам только на следующий день либо вообще забывают о них. В итоге компания теряет потенциальных покупателей. Это нужно указать в техзадании, чтобы интегратор предложил вариант решения проблемы. Но это уже будет происходить на следующем этапе.

3. Формирование карты настроек

Бизнес-процессы описаны, проблемы выявлены, и теперь нужно придумать, как их «победить» при помощи системы: какие процессы можно оптимизировать, ускорить, автоматизировать. Например, можно автоматизировать , выставление счета, и так далее.

На этом этапе ведущая роль отводится специалисту по CRM. Он досконально знает возможности IT-продукта и может предложить такие нюансы, о существовании которых потребитель даже не догадывался. Кроме того, интегратор может посоветовать или усовершенствовать взаимодействие с клиентами - то есть он выступает еще и в роли консультанта.

Если продолжить пример с предыдущего этапа, то интегратор может предложить такой способ борьбы с потерянными клиентами: настроить интеграцию CRM с сайтом, чтобы каждая заявка автоматически фиксировалась в программе и по ней назначался ответственный менеджер. Система автоматически поставит ему задачу позвонить клиенту в течение 15 минут, а если задача будет просрочена, то руководитель отдела продаж моментально узнает об этом через программное уведомление.

4. Настройка CRM, импорт, интеграции

Этот этап является технической реализацией предыдущего. Работа целиком ложится на специалиста по внедрению. Он осуществляет импорт данных, настраивает воронку продаж и чек-листы, создает пользовательские поля, прописывает сценарии автоматизации бизнес-процессов -словом, подстраивает интерфейс системы под ваш бизнес. Кроме того, на этом шаге настраивается интеграция CRM со сторонними сервисами, которые вы используете в работе: почта, сайт компании, сервис sms-рассылок и другие.

5. Подготовка персонала

Нет смысла разбираться, как внедрить CRM в компанию, если сотрудники не смогут с ней грамотно работать. CRM - это только инструмент, который сам по себе не приносит прибыли, поэтому важно объяснить сотрудникам, чем эта непонятная программа , и почему так важно кропотливо фиксировать в ней данные о клиентах и сделках на каждом этапе работы.

Например, позвонил клиенту - записал в его карточке итог переговоров; не дозвонился - поставил себе напоминание перезвонить через 2 часа; закрыл сделку - отметил в CRM, что продажа завершена, и тогда клиенту автоматически придет SMS с просьбой дать отзыв.

Если этого не делать, то отчеты по продажам будут неверными, работать не будет, а база данных превратится в простой набор имен и телефонов.

На самом деле, многие затрудняются сформулировать проблемы, определить слабые места в рабочих делах и понять, какие бизнес-процессы нужно автоматизировать. Для этого лучше сразу обратиться к разработчику и попросить помощи.

Почему не сработало? Разбираем ошибки внедрения

Даже если вы правильно выбрали систему и понимаете, как грамотно внедрить CRM, то вы все равно не застрахованы от . К счастью, можно использовать опыт других компаний, чтобы повысить шансы на успех.

1. Спешка на начальных стадиях внедрения

Ч аще всего допускаются ошибки на ранних этапах внедрения системы. Недочеты при описании бизнес-процессов и «узких мест» в воронке продаж могут привести к тому, что CRM-система не встроится в реальную деятельность компании и уж тем более не поможет в решении проблем.

Откажитесь от спешки и кропотливо выполняйте рекомендации специалиста по CRM. Если у вас небольшая компания из 10-20 человек, то интеграция займет 2-3 недели. Если речь идёт о большой корпорации, то плавный процесс может занять до полугода. Перед тем, как внедрить CRM-систему, обязательно ориентируйтесь на эти сроки.

2. Недостаточные возможности интеграции

Важно, чтобы CRM-система хорошо интегрировалась с другим программным обеспечением, которое использует компания. Иначе вы никогда не добьетесь, чтобы в программе была вся актуальная информация о продажах и чтобы работала без сбоев.

По данным исследования C5Insight, чем больше разных программ используется в компании, тем хуже результаты внедрения. Дело в том, что информация в разных сервисах не синхронизируются, и приходится вручную дублировать одни и те же сведения в несколько программ, например, в CRM и в «Бухгалтерия 1С». В итоге тратится много времени, в данных появляются ошибки, и отчеты перестают «говорить» правду.

Еще на стадии выбора системы составьте список ПО и сервисов, с которыми нужна интеграция, и предоставить его специалисту по внедрению. Одновременно нужно делегировать процессы из других программных продуктов в CRM. Например, отказаться от Outlook и воспользоваться

По данным C5Insight, 35% пользователей CRM называют программную интеграцию ключевой трудностью при переходе на CRM-решения. А если выбранная вами система в принципе не поддерживает необходимые интеграции, то эта трудность станет фатальной.

3. Плохая подготовка сотрудников

CRM-система - это технология, она может помочь команде, но не берёт её работу на себя. Сотрудники должны понимать, иначе «выхлоп» будет минимальным. Устройте ознакомительную презентацию, запишите видео-уроки с подробными инструкциями, проведите мини-экзамен, собственноручно обучите руководителей подразделений, чтобы они по иерархии передали знания подчиненным. Пусть сотрудники понимают, что именно от них зависит, как отобьются ваши инвестиции.

Вместо заключения

Существует известный принцип: 40% эффекта от интеграции достигается за счёт грамотного планирования, 20% - за счёт применения правильных технологий и 40% - за счёт . Поэтому, чтобы избежать ошибок при внедрении IT-продукта, действуйте «с чувством, с толком, с расстановкой», и результат не заставят себя долго ждать.

Хотите узнать больше? Готовы начать внедрение CRM-системы? в удобной программе прямо сейчас, наши специалисты перезвонят и проконсультируют вас по всем интересующим вопросам.

Сейчас стало модным заменять привычную систему комментариев WordPress на комментарии одной из самых популярных социальных сетей Facebook. Ранее мы уже публиковали , но с тех пор прошло много времени, и сейчас эта процедура заметно упростилась благодаря готовому WordPress плагину. Так что на этот раз все будет гораздо проще.

Как внедрить комментарии Facebook на свой сайт мы расскажем немного позже, а для начала попытаемся определить все «за» и «против» такой замены.

Комментарии с Facebook: «за» и «против»

К тому же, исчезает фактор так называемой анонимности . Маловероятно, что с Facebook будут добавляться спам комментарии, так как все они привязаны к реальным аккаунтам пользователей.

Но вместе с тем можно найти и минусы такой системы. Многие пользователи предпочитают анонимность и совсем не потому, что они хотят написать что-то плохое или оставить спам. Нет. Дело исключительно в психологическом моменте и в чувстве дискомфорта и смущения, которое они испытывают, высказываясь публично. Этот фактор может сократить активность пользователей.

В отличие от других систем комментариев, как например Disqus, комментарии Facebook не синхронизируются с родными комментариями WordPress. Они полностью их заменяют. Если в старых записях уже есть комментарии WordPress, то они будут отображаться до или после новых комментариев, добавленных через форму Facebook.

Вот, пожалуй, и все плюсы и минусы Facebook-комментариев.

Если вы еще не передумали установить их на своем сайте WordPress, то читайте ниже, как это сделать.

Плагин Facebook Comments для WordPress

Для начала установим и активируем плагин Facebook Comments и настроим его в появившемся меню в разделе Настройки → Комментарии Facebook.


Чтобы начать использовать комментарии на сайте, нужно для сначала создать приложение Facebook.

Если вы ранее уже создавали приложение, то можете использовать его данные ID прямо сейчас. Иначе вам придется создать новое на странице Facebook Apps :

В панели управления только что созданного приложения отобразится его ID, которое нужно скопировать и вставить в настройки плагина. Но перед этим настройте приложение на своем сайте в «Настройках» с помощью кнопки «Add Platform».

Появится новое окно, в котором нужно кликнуть на веб-сайт и выбрать его в качестве своей платформы.

Так на странице настроек приложения появится новый раздел «Веб-сайт», в котором можно указать адрес своего сайта.

Сохраните изменения, скопируйте ID приложения и разместите его в настройках плагина своего сайта.

Если вы не разобрались с настройкой приложения Facebook, то вот еще одна краткая инструкция на английском языке с примером для нашего сайта:

Этот плагин Facebook-комментариев имеет очень много параметров для настроек. Стандартные настройки должны работать с большинством сайтов. Однако можно их изменить на собственное усмотрение и сохранить изменения.

Теперь можете протестировать, корректно ли работает новая система комментариев на вашем сайте.

Модерация комментариев

Так как у вас есть админские права, вам будут приходить уведомления о новых комментариях. Вы можете ими управлять и решать, публиковать их или нет.

А еще в настройках можно добавить нового модератора:

Надеемся, эта инструкция внесла ясность и помогла вам самостоятельно установить комментарии Facebook для вашего сайта не WordPres.

На этот раз мы делаем простую AJAX систему добавления комментариев. Этот позволит продемонстрировать, как добиться эффективного взаимодействия между JQuery и PHP / MySQL с помощью JSON. Система работает таким образом, что добавляемые комментарии помещаются на страницу без её полной перезагрузки, давая ощущение работы сайта только на компьютере пользователя, тем самым избегая необходимости ждать некоторое время, необходимое для повторной загрузки страницы с добавленным комментарием.

Вот примерная демонстрация того, что мы планируем реализовать:

Шаг 1 - XHTML

Во-первых, давайте взглянем на разметку комментариев. Этот код генерируется PHP в комментарии, который мы собираемся посмотреть в одно мгновение.

Demo.php Имя 30 июля 2010

Комментарий

В Div-е класса avatar содержиться гиперссылка соответсвенно с аватаром (если пользователь указал действительную ссылку на аватар при отправке комментария), допустим из gravatar.com. Ну мы еще вернемся к этому когда будем работать с PHP. Наконец, у нас есть имя и время также в DIV-ах, а также комментарий то есть сам текст в параграфе.

Другим важным элементом в части XHTML является сама форма отправки комментария (все поля, кроме поля URL обязательны для заполнения).

Demo.php

Добавить комментарий

Ваше имя? Вашь Email? Ваш аватар? (не обязательно) Что вы хотели сказать?

Шаг 2 - PHP

PHP обрабатывает связи с базой данных MySQL и создает разметку комментарий. Кроме того, на приёме в конце стоит AJAX и вставляет комментарий в таблицу комментариев. Вы можете увидеть код, который выводит комментарии к странице, ниже.

Demo.php /* / Выбрать все коммнтарии и заполнить массив $comments */ $comments = array(); $result = mysql_query("SELECT * FROM comments ORDER BY id ASC"); while($row = mysql_fetch_assoc($result)) { $comments = new Comment($row); }

MySQL запрос выбирает все записи из базы данных и заполняет массив $comments с объектом класса комментарий, который вы видите ниже. Этот массив выводится после выполнения скрипта.

Demo.php /* / Выводим комментарии один за другим */ foreach($comments as $c){ echo $c->markup(); }

Каждый комментарий имеет markup() метод, который генерирует HTML код для печати страницы. Вы можете увидеть этотот метод и класс ниже.

Класс принимает строку из базы данных (fetched with mysql_fetch_assoc()) и сохраняет его в переменной $data. Она доступна только для методов этого класса и не может быть доступна извне.

Comment.class.php – Шаг 1 class Comment { private $data = array(); public function __construct($row) { /* / Конструктор */ $this->data = $row; } public function markup() { /* / Этот метод выводит разметки XHTML комментарий */ // Создание псевдонима, так что мы не должны писать // $this->data данные каждый раз: $d = &$this->data; $link_open = ""; $link_close = ""; if($d["url"]){ // Если человек заполнил URL при //добавлении комментария // Определяем гиперссылку $link_open = ""; $link_close = ""; } // Преобразование времени $d["dt"] = strtotime($d["dt"]); // Необходим для изображений Gravatar по умолчанию: $url = "http://".dirname($_SERVER["SERVER_NAME"]. $_SERVER["REQUEST_URI"])."/img/default_avatar.gif"; return " ".$link_open." ".$link_close." ".$link_open.$d["name"]. $link_close." 1, "html"=>$insertedComment->markup())); } else { /* Вывод сообщений об ошибках */ echo "{"status":0,"errors":". json_encode($arr)."}"; }

submit.php получает данные комментария в виде запроса AJAX. Она проверяет его и выдает JSON объект либо разметки XHTML который успешно выведен, или список сообщений об ошибках. JQuery использует статус собственности определить, следует отображать сообщения об ошибках или добавить комментарий разметки страницы.

Вы можете увидеть два примера ниже.

Шаг 1 - XHTML

Сначала посмотрим на разметку комментария. Данный код генерируется PHP с классом Comment .

demo.php Имя пользователя 30 Jun 2010

Текст комментария

div avatar содержит ссылку (если пользователь ввел правильный URL при размещении комментария) и изображение аватара, которое мы получаем с gravatar.com . Мы вернемся к формированию разметки на шаге PHP. В завершении следуют div name div time и текст комментария.

Другим важным элементом в XHTML является форма комментария. Она отправляется с помощью POST . Все поля, кроме URL, должны быть заполнены.

demo.php

Добавить комментарий

Имя Email Вебсайт (не обязательно) Содержание комментария

Форма отправляется с помощью AJAX. Проверка выполняется в фоновом режиме в submit.php . Каждое поле имеет соответствующий элемент label , с установленным атрибутом for .

Шаг 2 - PHP

PHP обрабатывает коммуникацию с базой данных MySQL и генерирует разметку для комментария. Он также получает окончание запроса AJAX и вставляет данные комментария в таблицу comments .

demo.php /* / Выбираем все комментарии и наполняем массив $comments объектами */ $comments = array(); $result = mysql_query("SELECT * FROM comments ORDER BY id ASC"); while($row = mysql_fetch_assoc($result)) { $comments = new Comment($row); }

Запрос MySQL выбирает все записи из таблицы и заполняет массив $comments объектами класса comment . Данный массив выводится далее при выполнении скрипта.

demo.php /* / Вывод комментариев один за другим: */ foreach($comments as $c){ echo $c->markup(); }

Каждый комментарий имеет метод markup() , который генерирует правильный HTML код, готовый для вывода на страницу. Ниже приведены определения класса и метода.

Класс получает строку из базы данных (получаемую с помощью mysql_fetch_assoc() ) и сохраняет ее в переменной $data . Она доступна только методу класса.

comment.class.php - Часть 1 class Comment { private $data = array(); public function __construct($row) { /* / Конструктор */ $this->data = $row; } public function markup() { /* / Данный метод выводит разметку XHTML для комментария */ // Устанавливаем псевдоним, чтобы не писать каждый раз $this->data: $d = &$this->data; $link_open = ""; $link_close = ""; if($d["url"]){ // Если был введн URL при добавлении комментария, // определяем открывающий и закрывающий теги ссылки $link_open = ""; $link_close = ""; } // Преобразуем время в формат UNIX: $d["dt"] = strtotime($d["dt"]); // Нужно для установки изображения по умолчанию: $url = "http://".dirname($_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"])."/img/default_avatar.gif"; return " ".$link_open." ".$link_close." ".$link_open.$d["name"].$link_close." ".date("d M Y",$d["dt"])."

".$d["body"]."

"; }

Скрипт использует gravatar для представления аватара в комментариях. Gravatar - это очень полезный сервис, который устанавливает соответствие аватара с email адресом. Изображение аватара может быть легко получено с помощью передачи кодированного функцией md5() вашего email адреса на gravatar.com.

Скрипт определяет адрес URL, на котором выполняется, и определяет точный адрес изображения default_avatar.gif . Данное изображение передается на параллельно с хэшем md5, и если никакого аватар не было найдено для переданного email адреса, то будет выведено альтернативное изображение.

comment.class.php - Часть 2 public static function validate(&$arr) { /* / Данный метод используется для проверки данных отправляемых через AJAX. / / Он возвращает true/false в зависимости от правильности данных, и наполняет / массив $arr, который преается как параметр либо данными либо сообщением об ошибке. */ $errors = array(); $data = array(); // Используем функцию filter_input, введенную в PHP 5.2.0 if(!($data["email"] = filter_input(INPUT_POST,"email",FILTER_VALIDATE_EMAIL))) { $errors["email"] = "Пожалуйста, введите правильный Email."; } if(!($data["url"] = filter_input(INPUT_POST,"url",FILTER_VALIDATE_URL))) { // Если в поле URL был введн неправильный URL, // действуем так, как будто URL не был введен: $url = ""; } // Используем фильтр с возвратной функцией: if(!($data["body"] = filter_input(INPUT_POST,"body",FILTER_CALLBACK,array("options"=>"Comment::validate_text")))) { $errors["body"] = "Пожалуйста, введите текст комментария."; } if(!($data["name"] = filter_input(INPUT_POST,"name",FILTER_CALLBACK,array("options"=>"Comment::validate_text")))) { $errors["name"] = "Пожалуйста, введите имя."; } if(!empty($errors)){ // Если есть ошибки, копируем массив $errors в $arr: $arr = $errors; return false; } // Если данные введены правильно, подчищаем данные и копируем их в $arr: foreach($data as $k=>$v){ $arr[$k] = mysql_real_escape_string($v); } // email дожен быть в нижнем регистре: $arr["email"] = strtolower(trim($arr["email"])); return true; }

Метод validate() (также часть класса) определен как static . Это означает, что его можно вызвать непосредственно с помощью конструкции Comment::validate() , без создания объекта класса. Данный метод проверяет данные, которые передаются через AJAX.

Метод использует новую функцию фильтра, которая стала доступна в PHP 5.2.0 . Таким образом мы можен легко проверить и отфильтровать данные, которые передаются скрипту. Например, filter_input(INPUT_POST,’url’,FILTER_VALIDATE_URL) означает, что мы проверяем, является ли $_POST["url"] правильным адресом URL. Если это так, то функция возвращает значение переменной, в другом случае она возвращает значение false .

До использования такой функции нужно было использовать регулярные выражения для проверки данных (с задействованием серии конструкций if ). Дополнительным преимуществом является то, что мы получаем данные до проведения каких-либо специфических преобразований.

Также возможно задать функцию, которая будет проводить дополнительные модификации данных.

comment.class.php - Часть 3 private static function validate_text($str) { /* / Данный метод используется как FILTER_CALLBACK */ if(mb_strlen($str,"utf8")