Итак, я собрал в кучку наиболее частые ошибки в настройке, которые допускают клиенты и решил написать простой скрипт, он будет находит эти ошибки и предлагать исправить. Это сэкономит вам время и освободит вечер от "увлекательного" чтения документации.
Бросаем скрипт на сервер, где установлен Битрикс с модулем интернет-магазина, валют и каталога. Запускаем. Интерфейс скрипта предельно прост:
На панели "Поехали" выбираем сайт и что диагностировать:
- - Всё
- Типы плательщиков
- Платёжные системы
- Доставки
- Местоположения
- Валюты
Для начала теста нужно либо осуществить "дабл-клик" на нужном пункте либо выбрать пункт и нажать "СТАРТ". Результат проверки выглядит примерно так:
О значении цвета сообщений говорить, наверно, не стоит, тем не менее скрипт предоставляет "легенду".
Если в результате скрипт выдал ошибку некорректной настройки, то рядом появляется ссылка на страницу административной части сайта, где можно исправить ошибку. Страница откроется в отдельном окне, исправляем ошибку, проводим тест снова и надеемся, что там будет всё зелёное.
В дополнение сделаны разделы "Доставки" и "Полезности". В разделе "Доставки" можно подсчитать стоимость автоматизированной доставки(пока только для "Почта России"), используя местоположения, которые у вас есть на сайте. В отличие от стандартного компонента оформления заказа данный скрипт будет полностью возвращать форму с сервера почты, так можно определить причину проблемы неработоспособности доставки и написать в ТП со знанием дела. Раздел "Полезности" включает несколько полезных функций, которые решают некоторые актуальные мини-задачи для магазина на Bitrix или позволяют автоматически исправить ошибки, возникшие в результате некорректных действий клиента/пользователя/администратора.
Используй скрипт, Люк!
Как пример возмём реальную проблему - не появляется платёжная система WebMoney при оформлении заказа. Запускаем скрипт, выбираем "Платёжные системы" и жмём "СТАРТ".
Нет активных платёжных систем.
Переходим по ссылке "исправить" на страницу списка платёжных систем. WebMoney создана, но не активна, активируем её.
Возвращаемся на страницу теста и кликаем ссылку "обновить" в окне "Платёжные системы".
Система появилась, но тест выдал одну ошибку и одно замечание:
Валюта системы не соответствует валюте сайта и не указана кодировка. Валюта сайта указывается в настройках модуля магазина на вкладке права на заказы, именно в этой валюте оформляются заказы сайта и платёжная система должна работать именно с этой валютой. Кодировка используется при получении информации об оплате от сервера платёжной системы. Переходим по ссылке "исправить" на страницу редактирования платёжной системы WebMoney, исправляем валюту с USD на RUB и указываем кодировку windows-1251. Обновляем тест:
Всё в порядке и система должна появляться при оформлении заказа. Если не появляется, и проблема в другом, значит скрипт это не учитывает либо нужно, в данном случае, провести все остальные тесты и исправить ошибки
Да прибудет с тобой документация!
На странице теста есть раздел "Пища для размышления", содержание данного раздела подгружается из текстового файла на dev.1c-bitrix.ru. Здесь содержатся ссылки на документацию, выдержки из документации и FAQ, возможно, даже информация об обновлениях скрипта и др. Чтобы содержимое этого блока не подгружалось, нужно запустить скрипт с параметром NO_HELP=Y.
Скрипт будет исправляться и совершенствоваться(при желании обновления будут выкладываться сюда). Техподдержке можно предъявлять результаты теста при решении соответствующих проблем.
Скрипт качаем тут:
Фото:
В том числе выдало:
Почта России
Fatal error: Call to undefined method CDeliveryRUSSIANPOST::__IsMoscow() in /home/a/public_html/bitrix/admin/bitrix_sale_test.php on line 557
Сейчас уже задумываюсь что дальше делать и в каких еще модулях обновления недоставились.
Снести все поставить чистый битрикс .... Напоминает переустановку винды
"Магазин находится не в Москве - исправить?"
Система даже это может исправить
Попробую ваш скрипт.
UPD: Скрипт отработал отлично, ошибок в самом скрипте не обнаружено. К счастью, все настройки (за исключением кодировок в платежных системах) сделал:) Отдельное спасибо за ссылки на ФАК!
Теперь данные перед выводом перекодируются в windows-1251, как это делается в стандартном обработчике доставки.
Скрипт говорит, что указаны не все значения - не указано местоположение. Список местоположений пустой (не могу ничего выбрать). Сами местоположения в базе есть, но без индексов. Видимо, из-за этого скрипт их не подгружает?
UPD. Я закончил тупить:) Подгрузил местоположения, все рассчиталось корректно! Спасибо!
Хотя сам Битрикс продолжает говорить про неверный ответ сервера...
UPD: Накатил бету магазина - все заработало. Спасибо!
Я так понял вы про параметр 'siteid'. Исправил.
Спасибо)
Это ошибка или так оно пока и есть?
if (@$_REQUEST['NO_HELP']<>'Y')
$help=file_get_contents('https://www.1c-bitrix.ru/upload/examples/sale_help.txt');
if ($help)
{
if (ENCODING=='UTF-8') $help=$GLOBALS['APPLICATION']->ConvertCharset($help, 'windows-1251', 'utf-8');
echo $help;
}
else echo 'Не удалось загрузить справочную информацию :(';
может вы и винду не любите? тогда уж и 1с надо тоже ненавидеть заодно...
уж извините ругаться хочется по этому поводу - пришлось файрфокс ставить мать его так раз тудыть.
Винду люблю, 1с ненавижу.
Сделаю, чтобы работал и в IE.
Для начала сделать так, чтобы Битрикс умела и могла работать корректно с большинством браузеров. Возьмем тот же Firefox'е, в данный момент в нем нельзя толком в Битриксе оформить детальную новость, так как курсора не видать. Я понимаю, что это глюк Firefox, но этому глюку уже много месяцев и этот глюк есть почему-то только для CMS Битрикс. Видимо Битриксу нужно подстраиваться под браузеры, а не наоборот. Поэтому альтернативы IE в работе с CMS Битрикс вообще пока не вижу, а это не есть гуд.
Ну а по теме, скрипт классный, сейчас попробовал – супер, спасибо.
С битриксом общаюсь недавно, а результаты нужну, уже сейчас!!!!
Добавлена возможность создания профилей экспорта в раздел "Полезности"
Добавлена возможность проверки каталога в раздел "Полезности"
Сделаю пошаговость, перезалью скрипт.
Нажимаю исправить - появляется пустое окно, фиг с ним, иду в /bitrix/admin/sale_pay_system.php - а там ВСЁ активно.
Что делать? Как дальше жить?
Спасибо.