chelwolf: Комментарии

Главные вкладки

28 марта в 13:40

Наследство старой структуры проекта, есть поле списка, второй элемент отвечает за публикацию материала (ответ на вопрос). Если галочка не стоит - вопрос не публикуется. Хотелось бы дополнить этот функционал и запретом индексации всей страницы.

Доступ к метатегу давать не хотят, да и какой смысл ставить дополнительные галочки каждый раз и перегружать админку, если это уже предусмотрено?) Поэтому возникла именно такая задача.

28 марта в 12:21

А как запретить индексацию материала через шаблон? Например есть логическое поле, где модератор ставит галочку "Не индексировать", и как с этим работать далее?

Chat GPT предлагает решение для шаблона ноды:

16 января в 17:00

Оказывается есть ещё один модуль, который позволяет интегрировать сайт с сервисом, и он поддерживает 9 и 10 версию: https://www.drupal.org/project/sendpulse_api

После установки вводите ключи API в настройках модуля, далее в настройках нужной ноды заходите в настройки полей и создаёте поле типа "Sendpulse Api Lists", которое будет видно только администраторам сайта. Далее при создании поля указывайте где храните email-поле, а также ставите нужные галочки, там их всего две и вы сразу все поймёте.

27 ноября 2023 в 11:34

Спасибо, полезная статья. Мне было сложно понять как работает этот модуль, пока я не осознал смысл подхода. Как старый друпалист, работавший ещё с 6 и 7 версией, я думал, что сначала надо делать нужный блок, а потом вставлять в нужное место в конструкторе. Т.е. мне казалось, что модуль нужен больше для построения сетки. На самом деле смысл в другом. Мы делаем типы блоков и создаём для них шаблон, а далее в Layout Builder настраиваем сетку и добавляем в нужные места наши типы блоков, например текст, картинку, цитату и т.п.

27 ноября 2023 в 10:59

Пример работы, когда дата имеет начало и конец: https://uyrgii.ru/calendar-node-field-news-event-date/month

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

27 ноября 2023 в 10:54

Упустил, модуль для 8 версии как раз списан с модуля, который изначально появился для 7 ветки:
https://www.drupal.org/project/calendar

Также посмотрите сюда:
https://www.drupal.org/project/event_calendar

26 ноября 2023 в 14:51

Верно ли я понял, что если на моём хостинге в корне проекта есть три папки:
- cgi-bin
- tmp
- www
То мне нужно пробовать ставить проект в корень командой вида:

composer create-project --no-install drupal/recommended-project .

и далее делать симлинк с www на web?

Если я поставлю все в www командой вида:

24 ноября 2023 в 20:51

Ответил на этот вопрос в этом посте: https://drupal.ru/node/145798#comment-760198

24 ноября 2023 в 20:50

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

  • hook_entity_presave() - добавит при создании материала
  • hook_entity_upadte() - добавит после обновления материала

Либо использовать готовый модуль математических выражений, я использовал вот этот: https://www.drupal.org/project/field_expression

24 ноября 2023 в 20:21

Посмотрите в сторону этого модуля: https://www.drupal.org/project/calendar_view

При включении сможете увидеть в списке представлений views пример календаря, который им генерируется. Детализацию можно настроить по разным параметрам, в том числе и по неделям.

При поморщи создания представления нового типа в календарь сможете вывести любые типы материала у которых есть поле даты.

22 ноября 2023 в 21:46

Почитал (https://drupal.ru/docs/videouroki/drupalbookru/12113-huki-dlya-raboty-s-...), выглядит восхитительно. Получается я могу в .theme файле темы прописать всю логику расчёта, присвоить результат переменной и потом примерно так подставить нужное значение полю?

31 октября 2023 в 9:28

Полезная статья, спасибо.

На нашем сайте мы помечаем рекламу на самих баннерах. Также на мобильной версии у нас есть блоки сторисов, если материал рекламный - выводим там пометку вида "Реклама. ООО Рога и копыта (ОГРН). erid", для этого используем отдельное текстовое поле в типе материала "Сторис".

31 октября 2023 в 9:24

Но если человек из ФАС признает это рекламой, как это оспорить? Вы можете сколько угодно считать пропорции и количество знаков, закон размыт в формулировках, в итоге если захотят - признают. Именно поэтому все сейчас все помечают, на всякий случай. Поскольку штрафы какие-то космические. Также не понятно какие будут тарифы на сервисы, которые выдают erd-токен. Кажется рекламодатели ещё и сами оплатят эти "замечательные" нововведения.

30 мая 2023 в 14:36
1

Логичным развитием темы no-code была бы визуализация сборщика пакетов Composer, чтобы можно было делать все через интерфейс Drupal, в том числе редактировать фал Composer.json при необходимости.

26 мая 2023 в 17:20

Решил так: перенёс в папку с темой шаблон views-view-row-rss.html.twig из модуля View RSS. Т.к. на моём сайте нет других RSS и они не планируются, я изменил этот шаблон, добавив нужное свойство к Item, мой код:

26 мая 2023 в 16:03

Получаю ошибку валидации: в элементе item отсутствует атрибут turbo со значением true. Если в отладке добавить к item свойство turbo="true" - начинает работать в режиме отладки

25 мая 2023 в 14:09

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

9 мая 2023 в 10:47

Для 8 и 9 версии есть модуль, который добавляет токены полей и другую инфу текущей страницы: https://www.drupal.org/project/current_page_entity_tokens

17 апреля 2023 в 12:19

Почитал: https://www.codimth.com/blog/web/drupal/how-create-custom-field-formatte...

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

17 апреля 2023 в 12:13
1

Спасибо больше за обратную связь. Решил вопрос благодаря Twig Extensions, проще говоря написал модуль,который добавляет в twig функцию (расширение), при обращении к которой работает нужная мне логика подсчёта. Мне кажется для моей задачи это наиболее подходящий вариант.

В админке все выглядит вот так:

В коде ноды типа материала "Сотрудник" вывожу так: