Программное создание статьи с переводом в Drupal

Допустим, вы получаете следующие данные — заголовок, текст статьи, и теги. При этом данные поставляются на двух языках — ‘ru’ и ‘en’. Вам требуется программно сохранить статью и её перевод.

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

Теги

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

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

Нам нужно собрать айди этих тегов в одном списке.

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

Интересно взглянуть на саму функцию. Я её оформил в виде трейта, чтобы удобнее было подключать в разные классы.

Так мы создадим теги в таксономии с переводами и получим их список для создания сущности статьи.

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

Мало букафф? Читайте есчо !

Настройка ЧПУ в Drupal 10: path_alias, Pathauto и Token

Июль 2, 2025 г.

Drupal — мощная, гибкая и в то же время довольно сложная CMS. Один из важных аспектов SEO и удобства пользователей — это ЧПУ (человекопонятные URL). В ...

Читать

The installed version of the /Имя модуля/ module is too old to update

Октябрь 9, 2024 г.

При выполнении drush updb вы можете увидеть такое сообщение. Обычно это связано с обновлением модуля до следующей major версии. Тогда в модуле может быть прописан hook_update_last_removed, где прописан номер hook_update, ниже которого номерные ...

Читать

Делаем выгрузку xml для яндекс маркет

Сентябрь 23, 2023 г.

Ключевая особенность в том, что данные выгружаются из Drupal Commerce. Первое, что понадобится - это настроить какой то route, а потом мы напишем для него контроллер. Маршрут можно добавить в какой то кастомный модуль, выглядеть он может следующим ...

Читать

Проверить роль пользователя в twig

Август 16, 2023 г.

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

Читать
 

Комментарии к «Программное создание статьи с переводом в Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



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