Иногда возникают ситуации, когда нет пароля от учетной записи администратора, но есть ftp. В этом случае можно использовать простенький скрипт, который авторизует пользователя и удаляет себя, для исключения потенциальных дыр в безопасности.
<? require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/header.php");
global $USER;
$USER->Authorize(1);
@unlink(__FILE__);
LocalRedirect("/bitrix/admin/");
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>
Доброго времени суток ) Решил таки опубликовать модуль для подключения доктрины к битриксу - ссылка на , инструкция по установке и использованию там же.
Пара слов зачем это нужно и кому может пригодиться. Я с этим модулем делал два крупных проекта, сейчас делаю сайт турфирмы - в базе на текущий момент уже 12 таблиц со сложными связями, которые невозможно реализовать на инфоблоках, а orm битрикса сильно проигрывает по удобству и функционалу doctrine orm.
Для php довольно давно существует менеджер зависимостей под названием composer, который позволяет одной командой устанавливать и обновлять библиотеки вместе с зависимостями. Подробно о нем можно прочитать здесь: . я же в этом посте хочу показать как подключить его к битриксу на примере одного пакета, который использую в каждом проекте.
Я работаю под линуксом, поэтому примеры команд привожу для него, для windows думаю отличий будет немного.
Итак. Сначала необходимо установить composer. В корне проекта выполняем команду:
curl -sS https://getcomposer.org/installer | php
либо скачиваем с официального сайта и копируем в корень проекта.
Теперь можно приступать к установке пакетов. В этом посте для примера будем использовать пакет для вывода отладочной информации - leeoniya/dump-r. Устанавливаем его командой:
В корне проекта появилась папка vendor, в которую composer скачивает библиотеки, также там расположены служебные файлы и автозагрузчик классов, который необходимо подключить в /bitrix/php_interface/init.php:
Для пакета dump-r так же лучше добавить следующий код, который упрощает его использование в дальнейшем:
use dump_r\Core;
if (!function_exists('dump_r')) {
function dump_r($raw, $depth = 1000, $expand = 1, $ret = false) {
return Core::dump_r($raw, $depth, $expand, $ret);
}
}
Теперь можно его использовать в любом месте проекта через функцию dump_r($arr), выглядит это вот так: Вывод массива организован в виде дерева, с возможностью сворачивать/разворачивать узлы, подсветкой и прочими плюшками. jquery не требуется.
Таким же образом можно подключать любые другие библиотеки, например phpexcel:
php composer.phar require phpexcel/phpexcel 1.7.7
И использовать в любом месте проекта без лишних телодвижений (автозагрузчик классов, который мы добавили в init.php сделает все за нас).
Последнее время на меня валится большое количество шаблонных проектов и становится скучно. Приходится развлекаться на стороне =) Сразу оговорюсь - подключение к битриксу шаблонизатора это скорее теоретические изыскание, на практике нигде не применял, поэтому особенно интересно мнение сообщества - какие вы видите в этом плюсы и минусы. Также цель поста - попиарить проект =)
Сижу, никого не трогаю, в очередной тысяча-первый раз пишу $APPLICATION->AddHeadScript(), и вдруг phpstorm его перечеркивает... Разработчики битрикса наконец-то узнали о тэге "deprecated" и определение этого метода выглядит как /** @deprecated use Asset::getInstance()->addJs($src, $additional) */ function AddHeadScript($src, $additional=false)
Что же, отрадно, неужели и правда жизнь налаживается? =)
Доброго времени суток. Набросал на коленке сервис генерации прокси-классов для работы с SOAP (генерация производится на основе wsdl). Сервис основан на доработанной .
Как водится кратко - зачем, почему, и какая польза =) 1. Прокси-классы предоставляют удобный ООП интерфейс 2. У всех soap-функций работает автодополнение в любой IDE 3. Возвращаемые данные также оборачиваются в соответствующие классы.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».