Перейти к основному содержанию

Работа с шаблонизатором Twig

Отправлено said от вт, 08/08/2017 - 11:25

Подключение отдельного шаблона

{% include directory ~ '/path_to_template_from_theme/header.html.twig' %}

Вывод текущей даты

{{ 'now'|date('Y') }}

Вывод даты создания ноды с использованием формата даты заданного в админке

{{ node.getCreatedTime()|format_date('medium') }}

Вывод урла ноды

<a href="{{ path('entity.node.canonical', {'node': node.nid}) }}">link</a>

В шаблоне node.twig.html

Вывод title в шаблоне ноды

Теги

Настраиваемый список значений поля автодополнение в поле типа Entity Reference

Отправлено said от чт, 07/13/2017 - 10:42

Алгоритм действий

1. Устанавливаем модуль entityreference_view_widget
2. Создаю представление нужного типа (нода, если в поле автодополнения нужно выбирать ноду, либо пользователь и т.п.). В это представлении создаю display Entity Reference
3. Создаю поле типа Entity Reference и в его настройках включаю режим views

 

Теги

Присоединение поля из любой сущности к кастомной форме

Отправлено said от ср, 07/05/2017 - 12:05
function  mymodule_custom_form($form, $form_state) {
  $node = new stdClass();
  // тип материала с которого берется поле
  $node->type = 'claim';

  // подготавливаю массив поля в форме
  $form['uc_product_image'] = array();
  // присоединяю поле uc_product_image со всеми настройками, 
  // так как бы оно было при создании нового материала типа claim
  field_attach_form('node', $node, $form['uc_product_image'], $form_state, NULL, array(
    'field_name' => 'uc_product_image'
  ));

  $form['submit'] = array(
    '#type' => 'submit',
    '#value' =>

Шаблон пути ноды построенный на основе дерева категорий

Отправлено said от ср, 04/26/2017 - 18:26

Если нужно построить урл материала на основе дерева категорий из таксономии то можно использовать подобный шаблон.
Это я про модуль pathauto

katalog/[node:taxonomy-catalog:parents:join-path]/[node:title]

если же товар может быть привязан к нескольким терминам, то используем

katalog/[node:taxonomy-catalog:0:parents:join-path]/[node:title]

где
katalog - корень каталога
[node:taxonomy-catalog:0:parents:join-path] - объединенные сегменты пути родительских терминов
[node:title] - имя ноды

Теги

Запрос в базу данных с выводом пагинатора

Отправлено said от вт, 04/18/2017 - 12:31

Так делается запрос

$query = db_select('my_table', 'i');
$query = $query->extend('PagerDefault')->limit(10);
$query->orderBy('i.createtime', 'DESC');
$query->fields('i');
$res = $query->execute();

Так выводится пагинатор

print theme('pager');

 

Программное создание сущности при помощи entity_metadata_wrapper

Отправлено said от ср, 04/12/2017 - 12:53

Создание термина таксономии

$data = array(
  'name' => 'имя теримна',
  'vid' => GM_VID,
  'description' => 'Описание',
);
$term = entity_create('taxonomy_term', $data);
$wrapper = entity_metadata_wrapper('taxonomy_term', $term);
$wrapper->save();

// теперь сохраняю поля
$wrapper->field_some_field = 'data';
$wrapper->save();

Создание ноды с коллекцией полей

Использование rtf-файла в качестве шаблона

Отправлено said от пн, 02/27/2017 - 10:30

Предварительно в шаблоне rtf файла нужно расставить плейсхолдеры. В примере использую один - fio.
Далее для подставновки в rtf файл своих значений использую следующий код:

Теги