Частые вопросы

Перенос сайта на локальный сервер
Перенос сайта с WordPress на Drupal 8
Перенос сайта с Joomla на Drupal 8
Полезные сайты

Добавить кастомный js-код на сайт (различные метрики и др.)

Довольно часто у владельцев сайтов возникает потребность разместить на сайте кастомный js-код. Это могут быть различные метрики или вспомогательные скрипты. Рассмотрим наиболее популярные варианты.

 

Способ 1: кастомный блок

  1. Идем в "Схему блоков -> Пользовательские блоки"
  2. Создаем новый блок
  3. Переключаем редактор в режим "источник" и размещаем код
  4. Идем в "Схему блоков" и размещаем блок в регион

Плюсы данного метода:

Отключить сжатие (агрегацию) CSS и JS

У новичков часто бывает задача исправить пару стилей CSS. В инспекторе браузера они видят, что нужные им селекторы находятся в файле css_SSbXBxdF4y1677yhsoiQ6zTnHTd_3JrUSP8QaEPVsx0.css в каталоге /sites/default/files/css Даже, если несмотря на "кашу" в этом файле всё равно удается внести изменения, то через некоторое время они пропадают.

Защита от спама

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

1) CAPTCHA + reCAPTCHA. Первое, что приходит на ум. Но капча уже давно не панацея, т.к. давно уже есть толпы индусов, который сидят и вручную проходят капчу для своих заказчиков.

Два варианта создания простого слайдшоу/слайдера

Я хочу рассмотреть два варианта создания простых слайдшоу/слайдеров. Статья написана для Drupal 8, но эти же модули есть и для Drupal 7.

Восстановление пароля администратора

1. Если есть drush и доступ к нему.
а) Получить одноразовую ссылку для входа:
drush uli
б) Установить пароль для юзера
drush user:password someuser "somepassword"
Вы также можете использовать id юзера, т.е. для администратора:

Правильные права на файлы и каталоги

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

Включить отладку twig-шаблонов

Если вы начали верстать тему оформления для Drupal 8, то вам нужно знать как называть свой шаблон, если какой-то регион/блок и т.д. нужно переопределить

Обе эти проблемы решаются включением отладки twig:

1) Идем в каталог sites/default и копируем default.services.yml -> services.yml
2) Ищем и редактируем

twig.config:
debug: true

Сбрасываем кэш и вуаля

Сбросить кэш, если сайт «упал»

Если в процессе разработки сайта он упал, а изменения закэшировались, то даже исправив код вы можете обнаружить, что сайт не поднялся. Чтобы сбросить кэш есть несколько способов:

  1. запустить /update.php
  2. выполнить drush cc all (для Drupal 7) или drush cr (для Drupal 8)*

* разумеется, drush должен быть установлен у вас на сервере

Стать администратором сайта имея доступ к FTP/SSH

Если у вас есть доступ на сервер/хостинг, то можно стать админом даже не заходя в БД.

Нужно создать в корне сайта файл login.php со следующим содержимым:

Для Drupal 7:

Отключить форму восстановления пароля

Зачем это может понадобиться? Есть несколько причин.

1) если у вас сайт без регистрации пользователей, то и форма восстановления пароля вам не нужна

2) в последнее время участились случаи атак на сайты через форму восстановления пароля. Даже если у вас установлены все последние обновления ядра, отключить форму всё равно не помешает.

Отключить форму регистрации пользователя

Если ваш сайт не предполагает регистрацию пользователей или вы забыли регистрацию отключить и обнаружили на сайте 100500 зарегистрированных "ботов", то вам нужно зайти в "Настройки учетной записи" (admin/config/people/accounts) и переключить "Кто может создавать учетные записи?" в "Только администраторы"

Drupal 8: webform/node в модальном окне

Задача: быстро сделать форму "заказать звонок" для сайта

Можно использовать контактную форму, но мне больше нравится webform

1) Создаем вебформу с нужными полями

2) Задаем ей алиас, например /call_me

3) Делаем ссылку вида

Drupal 8.6, модуль media и oEmbed провайдеры

Для того, чтобы в модуле media работал тип медиа "remote video", в который можно вставлять ссылки на https://youtube.com и https://vimeo.com, необходим доступ к файлу https://oembed.com/providers.json. Но в РФ этот сервер... забанен РосКомПозором.

Как определить, что ваш сайт взломали

За последнее время я лечил множество сайтов от drupalgeddon2 и почти все они имели идентичные признаки взлома. Если вы хотите понять был ли взломан ваш сайт, то в первую очередь загляните в файл index.php в корне вашего сайта:

screenshot

Если в нем присутствует странная строка, значит вас взломали:

Как создать подтему (sub-theme) Drupal 7 и для чего это нужно

Добрый день в этом посте я вам расскажу, как создать подтему (англ. sub-theme) для Drupal 7 и для чего это нужно. Чтоб не читать сей длинный опус предлагаю посмотреть видео:

Ну а для тех, кто лучше воспринимает информацию визуально вот некая расшифровка видео.

Panels - использовать или нет?

Пожалуй, нет ни одного другого модуля под drupal, о котором мнения разработчиков будут так же диаметрально различаться, как о Panels. То, что модуль гибок и функционален, не вызывает сомнений ни у кого, но вот целесообразность его использования многие ставят под вопрос. Я долгое время избегал использования панелей, чтобы не перегружать сайт лишними (как мне казалось) модулями. Старался обходиться блоками, но со временем стал замечать всё больше и больше недостатков и ограничений блочной системы Drupal.

Как исправить предупреждения "The following module is missing from the file system..."

Если на вашем сайте вы видите предупреждения PHP, такие как "The following module is missing from the file system..." (Модуль отсутствует в файловой системе ..."), (или аналогичные), на этой странице Вы найдете узнаете как это исправить.

http://image.prntscr.com/image/e646aabbb62c4778af95491445d70f38.png