Производство фотообоев в Новосибирске. Интернет магазин фотообоев. Изготовление - один день! Каталог 10 000 изображений!
18 Ноябрь 2021

PHP скрипт поиска изменённых файлов

В текущей разработке сделал скриптик, может кому пригодиться 🙂

Ищет изменённые файлы по маске «*.php» в рутовой директории, за исключением [«bitrix», «upload», «local»] за последние сутки.

Две доки по find с хорошими примерами
https://www.dmosk.ru/miniinstruktions.php?mini=search-linux
https://masterpro.ws/forum/6-linux/4710-kak-nayti-nedavno-modificirovannye-fayly-v-linux

рубрики: Bitrix, PHP | Комментарии (0)

2 Ноябрь 2021

MYSQL Убираем дубли из таблицы — есть ID и нет ID

MYSQL Убираем дубли из таблицы если есть поле ID

MYSQL Убираем дубли из таблицы если нет поля ID

на примере таблицы b_user_access_check
В текущей версии 1С Битрикс айдишника нет и пишут они туда без какого либо контроля на дубли, в результате чего у одного из клиентов 80 млн. записей и 8 гигабайт «вес» файла таблицы, всё это «добро» от включенной галочки «Сохранять историю изменения полей профиля пользователя:» и нулём в «Сколько дней хранить историю».
Собственно, штатных методов почистить не нашел и саппорт тоже ничего не подсказал, поэтому убираем дубли напрямую запросом:

рубрики: Bitrix, MYSQL | Комментарии (0)

28 Июнь 2021

Полная очистка кеша memcashe

Чистка напрямую — соединяемся на порт и чистим командой

php вариант

рубрики: Bitrix | Комментарии (0)

17 Июнь 2021

Быстрое удаление файлового кеша на сайте Битрикс.

Выполнить команду в php-командной строке

>————— код ——————-
$obCache = new CPHPCache();
$obCache->CleanDir();
>—————————————

Все файлы кеша маркируются на удаление.
Потом на сервере

>————— код ——————-
rm -rf /home/bitrix/www/bitrix/cache/*.~*
>—————————————

PS
Это официальная информация от саппорта 1С-Битрикс (вообще Битрикс не рекомендует чистить кеш каким либо методом, кроме как из панели управления).
Запрос делал в связи с тем, что на одном крупном проекте файловый кеш — и чистится он из админки более 2х часов …
Надеюсь клиент согласится перевести кеш на memcache…

рубрики: Bitrix | Комментарии (0)

19 Май 2021

Битрикс — при изменении свойств элемента не отрабатывает OnBlockElementUpdate

Есть модуль по загрузке в Битрикс, где меняются свойства элемента инфоблока, НО OnBlockElementUpdate не отрабатывал.
Меняю с админки — пашет!

Ответ прост — в модуле для обновления свойств использовали не обновление элемента, а именно обновление свойств.
Поставил обработчик на OnIBlockElementSetPropertyValuesEx — вуайля, событие поймалось!

рубрики: Bitrix | Комментарии (0)

17 Май 2021

Битрикс «Миграции» — скрипт для переноса изменений БД

Очень полезная штука по сабжу
https://marketplace.1c-bitrix.ru/solutions/sprint.migration/

Автор молодец — всё чётко, понятно, удобно!

Добавлю к себе в инструментарий полезных модулей.

рубрики: Bitrix | Комментарии (0)

21 Апрель 2021

Не работают Cookie на ядре D7 Битрикс

Писать совсем некогда! Работа в веб-студии это прям тема — времени нет ни на что 🙂
Но всё же этот пост не могу не опубликовать, если бы мне такое попалось — экономия 1-2 часа 🙂
(да, да — именно столько я не мог «воткнуть» почему не работают примеры из документации)

Сегодня чуть мозг себе не взорвал, пока пытался понять, почему не работает механизм куков на ядре D7 Битрикс.
Всё делаю как в примерах — не пашет!
https://dev.1c-bitrix.ru/api_d7/bitrix/main/web/cookie/index.php
https://estrin.pw/bitrix-d7-snippets/s/cookie/
https://www.intervolga.ru/blog/projects/d7-analogi-lyubimykh-funktsiy-v-1s-bitriks/#section12
и только в блоге Антона К. дошел до истины!

ВНИМАНИЕ на странице обязательно должен быть подключен
require($_SERVER[‘DOCUMENT_ROOT’] . ‘/bitrix/footer.php’);
или
require($_SERVER[«DOCUMENT_ROOT»].BX_ROOT.»/modules/main/include/epilog_after.php»);
т.к. куки d7 добавляются именно в эпилоге.
(там вызывается метод Bitrix\Main\HttpResponse::flush() )

рубрики: Bitrix, Битрикс D7 | Комментарии (0)

6 Апрель 2021

Битрикс D7 — cоздание своего модуля

От слов к делу — начнём потихоньку заполнять пробелы в необходимых знаниях по Битрикс программированию …

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

Для освоения ядра D7 знакомство с модулями я начну стразу, собственно используя стиль программирования нового ядра.

Подход к всему новому у меня всегда один — от простого к сложному. Для начала я решил найти самый простой шаблон модуля, просто чтобы запустить своими руками без какой либо конкретной задачи — обозначить пространство для вставки полезного кода в шаблоне, так же освежил знания из курса Разработчик Bitrix Framework и вооружился официальной документацией по D7

За основу я взял статейку с сайта веб студии BRAINKIT 1С:Битрикс пример создания модуля D7

Всё бы ничего, но видимо никто из компании не удосужился проверить работоспособность выложенного на гите модуля (и хорошо — хоть поковырялся, так сказать минизадача по правке работоспособности модуля).
Итак, прочитав статью, я сразу пошел по ссылке в гит, клонировал проект bitrix-d7-module и закинул его в ./local/modules/ файловой структуры сайта.

Далее интересней — идём в Доступные решения для установки модуля — там пусто!

Пора и заглянуть в код 🙂
Читать полностью »

рубрики: Bitrix | Комментарии (0)

15 Март 2021

Битрикс — как получить ссылки на изменение элемента

Продолжаем работу с сайтом по производству фотообоев в Новосибирске — решил добавить в свой компонент ссылки на редактирование элемента.

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

Далее в блоке, в котором будет располагаться содержимое элемента, добавляем уникальный id для управления элементом:

Готово!

рубрики: Bitrix | Комментарии (0)

2 Февраль 2021

Битрикс — постраничная навигации в своей компоненте без PAGEN_1

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

Какие задачи ставились для пагинации
1. ЧПУ ссылки вида https://dekorimage.ru/3D-foto-oboi/stereoskopicheskie/page5/ без стандартного битриксовского ?PAGEN_1=5
2. AJAX обновление пагинации — при нажатии «показать ещё» страничка в пагинации так же должна перескакивать на следующую страничку

Первое реализуется с помощью буферизации вывода компонента bitrix:system.pagenavigation (за основу взял шаблон round) и замены ссылок формата PAGEN_1 на нужные нам ЧПУ ссылки

Для реализации второго — параметры $total $per_page и $page передаются в такой же скрипт но уже AJAX запросом.
Для обработки AJAX запроса в компонент я добавил полную очистку буфера вывода

В принципе из интересного всё — остальное дело техники.

И ещё момент — чтобы AJAX скрипт формировал правильный адрес, в компонент я передаю BASE_LINK

рубрики: Bitrix | Комментарии (0)