партнер компании 1с-битрикс
сайт фрилансера Сергея Эстрина
Войти как пользователь
Вы можете войти на сайт, если вы зарегистрированы на одном из этих сервисов:
Универсальная галерея - модуль для битрикс

Интеграция сайта с сервисом iiko для кафе и ресторанов

Модуль интеграции с iiko предоставляет возможность ресторанам и кафе, автоматизация рабочего процесса которых основана на системе iiko, организовывать предзаказы и заказы на доставку блюд с сайта на 1С-Битрикс.

Читать подробнее...

Быстрая загрузка бесплатных изображений на сайт

Владельцы сайтов и коллеги-битриксоиды! Хочу представить свой новый модуль "Подбор бесплатных изображений". Эту штука может очень пригодится тем, кто ежедневно наполняет сайт контентом. Модуль позволяет выбирать и загружать картинки на сайт, не покидая админку битрикса и не загружая файлы на компьютер.

Читать подробнее...

Сушка носков при помощи Mac Mini, пошаговая инструкция

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

Читать подробнее...

Универсальные свойства привязки - обзор версии 2.0

Теперь собственные источники данных можно размещать как в папке "/bitrix/php_interface/garin.links", так и в "/bitrix/php_interface/garin.links" (причем последняя имеет приоритет, т.е. при наличии одинаковых источников в обоих папках, будет использоваться источник из папки local)

Читать подробнее...

Свойства-таблицы - обзор версии 4.0

Аллоха! В версии 4.0 модуля "Свойства-таблицы", помимо мелких исправлений, присутствует одно большое нововведение - тип колонки "Файл" (загружаемый).

Читать подробнее...

Используем и дорабатываем "умный" фильтр

Компонент "Умный фильтр" (catalog.smart.filter) - безусловно хороший и удобный, но если использовать его вне стандартного шаблона комплексного компонента "catalog", на первый взгляд может показаться, что он недоделан (например, отказывается нормально работать без указания раздела и др.), но это не совсем так. В этой статье я расскажу как использовать его скрытые возможности и как вносить некоторые изменения в ЧПУ фильтра.

Читать подробнее...

Установка "1с базовая" на Mac - пошаговая инструкция

 Если вы решили полностью отказаться от использования операционной системы Windows, то кроме устаревшего банковского ПО, вы можете также встретить сопротивление в лице продуктов компании 1С, если вы по каким-то причинам не можете отказаться от их использования. К сожалению, установка 1с предприятия  на компьютерах Mac хоть и возможна, но не лишена трудностей. Но если вы все же решились на это, то в этой статье я по шагам расскажу как это сделать на примере установки базовой версии 1с.

Читать подробнее...

Меню 2.0 (управление вложенными меню и параметрами)

При разработке сайта часто возникает ситуация нехватки штатных средств управления меню, например, встроенных средств управления многоуровневыми меню, можно сказать, нет. Вариант с вложенными уровнями в подразделах часто не подходит, если нужно сделать многоуровневое меню для страниц с ЧПУ, а структура меню не соответствует структуре инфоблока и т.д. Параметры для пунктов меню существуют, но редактируются только через расширенный режим в административной части. Модуль Меню 2.0 (управление вложенными меню и параметрами) позволяет решить обе эти проблемы, причем без замены штатных компонентов "bitrix:menu" на какие-то другие.

Читать подробнее...

Простой адаптивный форум: обзор версий 2.0 и 2.5 (Schema.org, рейтинги, файлы)

В этих версиях модуля Простой адаптивный форум (обсуждения) было сделано несколько больших доработок. И если с загрузкой картинок и файлов все понятно, это необходимый функционал, который должен был быть реализован (описано в конце статьи), то на остальном я остановлюсь подробнее.

Читать подробнее...

Управление правами доступа к форумам в модуле grain.forum

Штатно распределения прав доступа по отдельным форумам в модуле grain.forum (Простой адаптивный форум) нет. На мой взгляд, это избыточный функционал для большинства сайтов, и это было бы излишним усложнением интерфейса. Если же вам нужно просто скрыть форумы, для этого существует галочка активности. Однако, если вам необходимо управлять правами доступа (видимостью) отдельных форумов, это можно сделать без вмешательства в программный код модуля или компонентов, используя события.

Читать подробнее...

Работа с событиями в d7 на примере модуля grain.forum

В этой статье я покажу на примерах как работать с событиями в ядре d7 на примере модуля grain.forum (Простой адаптивный форум). Будет показано и как создавать обработчик события с возможностью и изменения данных с позиции разработчика сайта, и как вызываются обработчики событий внутри модуля. Это статья не про ORM-события (т.е. события, связанные с хранением данных в базе, и где используется более стандартизованный подход), а про обычные события, которые могут использоваться для чего угодно.

Читать подробнее...

Пользователи, группы и связи между ними в ядре d7

В этой статье я покажу на примерах, как работать, т.е. получать информацию по группами пользователей, пользователям, привязкам пользователей к группам, используя d7 и ORM.

Читать подробнее...

Обработчики платежных систем в битрикс d7

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

Читать подробнее...

Инфоблок с одним элементом

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

Читать подробнее...

Универсальная галерея - публикация галерей с помощью визуального редактора или макросов

Конечно, в маркетплейсе битрикса и так достаточно различных слайдеров, каруселей и прочих свистелок и прибамбасов, даже бесплатных. Тема весьма избитая. Однако, чего на мой взгляд не хватало, так это удобного инструмента для размещения галерей с помощью визуального редактора или же напрямую из кода.

Читать подробнее...

Простой лайтбокс на jQuery

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

Читать подробнее...

Простой лайтбокс на bitrix js api

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

Читать подробнее...

Шпаргалка по bitrix js api

Предлагаю вашему вниманию шпаргалку по функциям javascript-фреймворка битрикса в формате pdf.

Читать подробнее...

Рассылка собственными силами и средствами битрикса, или как не попадать в SPAM

Казалось бы, произвести рассылку со своего сайта дело нехитрое - в битриксе давно уже есть модуль рассылок, а сейчас появился и еще один - с модным названием "E-mail маркетинг". Но постойте... Почему же тогда до сих пор процветают различные сервисы рассылок, а компании ими активно пользуются?

Читать подробнее...

Простой адаптивный форум

Коллеги-разработчики и пользователи продуктов 1С-Битрикс! Сегодня я хочу представить модуль "Простой адаптивный форум".

Сразу отмечу, что это не надстройка над стандартным модулем форумов и не шаблон для него, а самостоятельный модуль, который может работать даже на редакции "Первый сайт".  

Читать подробнее...

Тонкости композитного режима кеширования в битрикс

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

Читать подробнее...

Аналоги php функций в битрикс

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

Читать подробнее...

Запуск долгих скриптов на php

Хотя запуск долгих скриптов на php (от 5 мин и более) по разным причинам обычно считается нежелательным, в некоторых ситуациях это может выручить. Простой пример: при xml-импорте инфоблока в битриксе с 500 свойствами и 10000 элементами, стандартного максимального времени выполнения может быть недостаточно - хотя скрипт и выполняется по шагам, но может, например, зависнуть, на создании вспомогательных индексов.

Читать подробнее...

Векторные иконки при разработке в среде Xcode

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

Читать подробнее...

AppleScript для Mac программиста

AppleScript - это язык, позволяющий автоматизировать рутинные действия в системе OS X. Он работает с помощью встроенного в систему интерпретатора и имеет собственный редактор (в русскоязычной OS X он называется "Редактор скриптов"). Хотя язык является для своих задач достаточно мощным, казалось бы, для разработки собственных приложений в XCode под OS X, он может показаться бесполезным. Но это не совсем так.

Читать подробнее...

Примеры работы с массивами в Objective-C (XCode)

Для работы с массивами в Objective-C/Cocoa предусмотрены несколько классов: NSArray, NSMutableArray, NSDictionary, NSMutableDictionary. NSMutableArray и NSMutableDictionary отличаются от NSArray и NSDictionary тем, что они не могут быть изменены после создания (как и любые другие типы, имеющие в названии "Mutable"). NSArray и NSMutableArray - это массивы с числовыми индексами, NSDictionary и NSMutableDictionary - массивы с символьными индексами (ключами).

Читать подробнее...

Хитрости при работе с компонентами Битрикс

Два разных вида кеширования в компонентах

В большинстве стандартных компонентов битрикс используется одновременно кеширование массива $arResult и html-кода. Однако при написании собственных компонентов это не всегда бывает удобным, часто бывает, что в шаблоне необходимо выполнять какой-то код на каждом хите, поэтому кешировать лучше только данные в $arResult. Ниже я привел 2 примера кеширования (для component.php) - с кешированием html-кода и без. Обратите внимание, во втором варианте подключение шаблона производится после блока кеширования, а его место занимает $this->EndResultCache().

Читать подробнее...

Переход с php на Objective-C (XCode)

В начале изучения любого языка программирования, если вы не любите читать объемные книги "для чайников", наверно чаще всего возникают вопросы типа "Что это?", или "Зачем оно?" и подобные. В этом конспекте я постараюсь насколько возможно кратко дать ответы на некоторые самые глобальные из подобных вопросов, которые возникали у меня в процессе ознакомления с XCode, Objective-C, Cocoa, Cocoa Touch и т.д. после многолетней работы только с веб-программированием. Хотя, возможно, данная статья будет полезна и не только тем, кто знаком с php, Javascript и Html. Эта статья очень поверхностная, однако, возможно, позволит вам прояснить некоторые моменты.

Читать подробнее...

Настройка Ubuntu Server для работы с битрикс

Итак, вы решили для какой-то цели использовать вместо готовой настроенной виртуальной машины битрикса Ubuntu Server. Тому могут быть разные причины, например, система контроля версий Mercurial не работает с Cent OS и пр. В этой котороткой статье я расскажу что необходимо настроить для работы Ubuntu Server с сайиами на 1С-Битрикс. Cтатья короткая именно потому, что настраивать нужно немного, а затрагивать процесс установки системы в этой статье я не буду, т.к. по этой теме, думаю, найдется немало материалов. Отмечу только, что при установке я выделил галочки компонентов LAMP (это Apache, Mysql, Php) и OpenSSH. Данные рекомендации, конечно же, можно использовать не только  настройки сервера для Битрикс, но и других CMS.

Читать подробнее...

События highload-инфоблоков

В этой статье я покажу на примерах один из вариантов работы с событиями модуля highload-инфоблоков. Хотя это и не обязательно, стараясь соответствовать новым веяниям в битриксопрограммировании, я использовал функции с пространствами имен (если считаете, что сделал я что-то неправильно, пожалуйста, отпишитесь в комментариях). По задумке, в следующих примерах "Partner" должно быть заменено на ваш идентификатор партнера в marketplace (если он у вас есть, либо используйте любое слово), а "Myentity" - на название сущности вашего highload-инфоблока (то, что вы указываете при его создании).
 

Читать подробнее...

Ядро Bitrix d7 - краткий конспект

Презентация нового ядра Bitrix d7 - это почти двухчасовой доклад на партнерской конференции 2013 года. Если вы не смогли осилить его просмотр, то предлагаю вам котороткий конспект о самом главном - какие преимущества принесет новое ядро, и основы работы с ним.

Читать подробнее...

Обзор библиотеки Foundation для разработки сайтов с адаптивным дизайном

Foundation - это библиотека (framework) для разработки сайтов с адаптивным (responsive) дизайном. Она включает в себя как css, так и js код. JavaScript код сделан на основе jQuery и различных плагинов, которые можно включать в код библиотеки по желанию, в зависимости от технического задания на конкретный проект.

Читать подробнее...

Дополнительные настройки 2.0 + теперь бесплатно

одуль "Дополнительные настройки" предназначен для быстрого создания административной страницы с набором нужных параметров, которые можно использовать по своему усмотрению при разработке сайта. В версии 2.0 модуля добавлен новый тип параметра "Привязка".  Он будет доступен при наличии модуля "Универсальные свойства привязки" и позволяет сделать выбор значения из списка.

Читать подробнее...

Установка Foundation из командной строки

Вы можете спросить - для чего устанавливать foundation таким образом, устанавливая массу дополнительного ПО, если его можно просто скачать на сайте разработчиков? Все просто - только этот метод гарантирует правильную сборку foundation при кастомизации sass переменных (при использовании которой возможности настройки библиотеки под себя возрастают многократно), т.к. является рекомендованным разработчиками методом. К сожалению, редко при установке всех зависимостей все проходит гладко, поэтому если какие-то необходимые скрипты не получается установить описанным методом, попробуйте другой, интернет вам в помощь.

Читать подробнее...

Локализация приложений на Objective-C (XCode)

Добавление языка

Для добавления языка локализации перейдите в настройки проекта и нажмите на кнопку "+" в списке языков на вкладке "Info", затем выберите язык в выпадающем списке.

Читать подробнее...

Свойства-таблицы - обзор версии 3.0

Главное нововведение этой версии - это тип колонки таблицы "Привязка". Возможно, я этим кого-то разочарую, но доступен он будет только при наличии дополнительного (также платного) модуля Универсальные свойства привязки. Однако, я полагаю, вы не будете разочарованы функционалом, который этот модуль предоставляет.

Читать подробнее...

Свойства-таблицы - обзор версии 3.0

Тип колонки "Привязка"

Главное нововведение этой версии - это тип колонки таблицы "Привязка". Возможно, я этим кого-то разочарую, но доступен он будет только при наличии дополнительного (также платного) модуля Универсальные свойства привязки. Однако, я полагаю, вы не будете разочарованы функционалом, который этот модуль предоставляет - привязки возможны практически к чему угодно (от элементов инфоблоков до курсов и уроков модуля обучения, всего на данный момент 29 стандартных источников данных + возможность легко написать собственный источник, используя описание api).

Читать подробнее...

CDialog и CAdminDialog - диалоговые окна в битрикс средствами системы

В данной статье я на небольших примерах покажу как использовать стандартные JavaScript классы CDialog и CAdminDialog для вывода модальных диалоговых popup окон а административной и публичной частях проекта на 1С-Битрикс.

Читать подробнее...

Универсальные свойства привязки (свойства привязки к чему угодно)

Коллеги программисты! Этот модуль разрабатывался 3 года, много раз переделывался и переосмысливался. За время разработки различные его версии были опробованы на множестве проектов, и сегодня я хочу представить вам финальную версию.

Итак, модуль называется "Универсальные свойства привязки", и позволяет создавать свойства привязки не только к разделам, элементам инфоблоков, блогам, форумам, опросам, валютам, а вообще к чему угодно. Как - я поясню далее.

Читать подробнее...

Универсальные свойства привязки (свойства привязки к чему угодно)

Коллеги программисты! Этот модуль разрабатывался 3 года, много раз переделывался и переосмысливался. За время разработки различные его версии были опробованы на множестве проектов, и сегодня я хочу представить вам финальную версию.

Итак, модуль называется "Универсальные свойства привязки", и позволяет создавать свойства привязки не только к разделам, элементам инфоблоков, блогам, форумам, опросам, валютам, а вообще к чему угодно. Как - я поясню далее.

Читать подробнее...

Настройка параметров mysql для битрикс

Производительность базы данных - одна из наиболее важных составных частей общей производительности проекта на 1С-Битрикс. С помощью настройки параметров базы данных можно иногда получить немалый прирост скорости загрузки страниц сайта, которая, как показывает практика, очень сильно влияет на общее впечатление о сайте и его конверсию. Многие посетители вообще не дожидаются загрузки страницы, если она грузится слишком долго, и раньше закрывают вкладку браузера или возвращаются на предыдущую страницу.

Читать подробнее...

Классы функций модуля опросов

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

Читать подробнее...

Медиабиблиотека - работа через api

Работа с элементами и коллекциями медиабиблиотеки продуктов 1С-Битрикс осуществляется с помощью двух классов функций - CMedialibItem и CMedialibCollection, но сначала необходимо инициализировать медиабиблиотеку с помощью функции CMedialib::Init:

Читать подробнее...

Свойства-таблицы 2.0 - сортировка строк и фильтрация по столбцам

В версии модуля Свойства-таблицы 2.0, помимо мелких доработок, реализовано 2 важных нововведения:

1. Сортировка строк (для множественных таблиц)
2. Фильтрация по столбцам таблицы, как в фильтре в административной части, так и с помощью API.

Читать подробнее...

Об автозапуске бизнес-процессов

Автозапуск бизнес-процессов при создании и изменении элемента - вещь полезная и нужная. Однако, работает не всегда. Например, не работает при создании и изменении элементов в публичных компонентов где бизнес-процессы не предусмотрены. Поэтому, если вы, например, в административной части ставите галочку "Запускать при изменении", и затем сохраняете элемент в публичной части через компонент "Изменение элементов инфоблока", то бизнес-процесс не запустится.

Читать подробнее...

Сортировка в модуле "Свойства-таблицы"

Новые шаблоны компонента "grain:table.edit" с возможностью сортировки строк для множественных таблиц можно скачать на форуме.

Эти шаблоны войдут в следующую версию модуля.

Читать подробнее...

Модуль "Быстрая отписка от рассылки"

Модуль "Быстрая отписка от рассылки" позволяет перейти к управлению подпиской без авторизации прямо по ссылке из письма.

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

Читать подробнее...

Универсальные списки - использование для простого добавления элементов с модерацией

Модуль "Универсальные списки" - достаточно мощный и функциональный. Его можно с успехом использовать для предоставления пользователям сайта возможности добавлять и редактировать свои элементы инфолока в публичной части. Однако принцип работы с ним сильно отличается от того, к чему мы привыкли, работая, например, с компонентом "Добавление элементов инфоблока". Прежде всего это касается настройки прав доступа. В этой статье я расскажу как настроить модуль для выполнения задачи, аналогичной той, которая раньше решалась с помощью компонента "Добавление элементов инфоблока", т.е. чтобы пользователь мог добавлять элементы инфоблока, и редактировать элементы, но только добавленные им самим, с возможностью модерации редактором сайта.

Читать подробнее...

Обзор модуля "Свойства-таблицы" от Романа Забродина

Писал обзор для конкурса, но его опубликовали в сильно урезанном виде. По этому, публикую у себя в блоге :-)

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

Читать подробнее...

Если не хватает стандартных действий для бизнес-процесса...

При разработке бизнес процесса в 1С-Битрикс часто возникает ситуация, когда стандартных действий не хватает.

Из такой ситуации могут быть 2 выхода:

Читать подробнее...

Facebook: как правильно настроить постинг

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

Для начала разберемся, как работает считывание информации со страницы сайта - картинок, заголовков и прочего.

Читать подробнее...

Перенос инфоблоков Битрикс при помощи XML экспорта-импорта

Интерфейс экспорта-импорта инфоблоков посредством XML в продуктах 1С-Битрикс выглядит очень просто. Достаточно выбрать инфоблок, файл для загрузки-выгрузки, несколько дополнительных параметров, и казалось бы, дело сделано. Но на деле эта простота является немного обманчивой, и последствия от незнания некоторых аспектов, такие, как, например, загрузка данных не в тот инфоблок при импорте, создание дополнительных свойств вместо загрузки данных в существующие, могут выбить из колеи даже достаточно опытного пользователя или программиста, и заставить его на долгое время забыть об использовании этого мощного инструмента. Я постараюсь рассказать вам об этих аспектах.

Читать подробнее...

Еще один placeholder

Мне пришлось перепробовать несколько решений для создания подсказок в полях ввода. К сожалению, ни одно из них не работало до конца, во всех браузерах и т.п., либо появлялись какие-то проблемы, например, задержка при вводе текста в IE 8. Поэтому я решил сделать свой плагин jQuery, имитирующий работу атрибута placeholder, который пока поддерживают только браузеры webkit (Safari, Chrome).

Читать подробнее...