Все записи категории ‘Программирование’

Модификация тела письма перед отправкой в Drupal
 9 Июн, 2023

Рассмотрим два варианта, как зацепиться к отправляемым письмам и внести туда свои изменения.

Читать далее »
Задача о неперекрывающихся интервалах
 7 Июн, 2023

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

Формулируется задача так: дан массив интервалов, каждый из которых определен двумя числами — [начало интервала, конец интервала]. Требуется удалить минимальное число элементов, чтобы интервалы не перекрывали друг друга.

Читать далее »
301 редирект на PHP
 6 Июн, 2023

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

Читать далее »
Поиск выхода из лабиринта
 3 Июн, 2023

Продолжаем разбор классических задач по программированию. На этот раз лабиринтовая задача, которая формулируется так — дан плоский лабиринт в виде двумерного массива, где стенка отмечена 1, а свободный участок как 0. Также дана начальная позиция игрока, точка входа — [row, column] — как координаты в лабиринте.

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

Читать далее »
Добавляем свой фильтр в TWIG на Drupal
 1 Июн, 2023

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

Читать далее »
Анти CSRF в WP
 31 Май, 2023

В поддержку по плагину Inactive User Deleter недавно написали, что Wordfence считает мой плагин уязвимым к CSRF.

Читать далее »
Сделать перенос каждого слова на новую строку CSS
 29 Май, 2023

Иногда дизайн требует, чтобы все слова заголовка или слогана были с новой строки. Можно добавить <br /> после каждого слова, но можно и обойтись изменениями в CSS.

Читать далее »
Игра в камни
 27 Май, 2023

Серия задач StoneGame на leetcode — образец игры, где требуется просчитать оптимальную стратегию. Выигрыш/проигрыш начинающего партию предопределен, и второй участник лишь может надеяться на ошибку первого.

Читать далее »
Ошибка обновления metatag remove_robots_noydir_noodp
 24 Май, 2023

Если у вас собран Drupal + Commerce, то, возможно, при обновлении модуля метатегов возникает ошибка.

Читать далее »
Транслитерация имени файла при создании медиа entity программно в Drupal
 21 Май, 2023

При импорте изображений возникает задача транслитерации. Картинки, например, могут содержать буквы национальной кодировки (кириллицы) и/или иметь несовместимые с файловой системой сервера символы.

Drupal (начиная с 8.2) объявляет специальный интерфейс, который формализует эту задачу:
сore/lib/Drupal/Component/Transliteration/TransliterationInterface.php.

Читать далее »