Свои токены

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

Аватар пользователя g78knl6cvxf0 g78knl6cvxf0 5 февраля 2012 в 17:43

Есть отличный модуль Custom Tokens. С его помощью можно клипать собственные токены (/admin/structure/token-custom), например для использования при формировании пути в pathauto.

Пример 1.
Есть тип материала "Новость" с полем, где указывается дата, с которой эта новость связана.

Цель: выводить новость по пути /news/year/month/day/art-nid

Решение:

1. Создать токен:

Token type: Материалы [needs:node]

Код:

<?php
$fieldDateNews 
$data['node']->field_date_news['und'][0]['value'];
$aDateNews getdate($fieldDateNews);
return 
$aDateNews['year']. "/" $aDateNews['mon'] . "/" $aDateNews['mday'];
?>

2. Снять в настройка удаление "/"

3. Указать в шаблоне для материала новости [node:path-date-news]/art-[node:nid]

— — — — — —

Пример 2.

Путь к материалам формируется на основе их иерархии (пример)

Цель: для материалов, у которых используемое для ЧПУ поле пустое брать значение из title
Решение:

1. Создать токен:

Token type: Материалы [needs:node]

Код:

<?php
$sef 
$data['node']->field_sef_title['und'][0]['value'];
if(
$sef=="")$sef $data['node']->title;
return 
$sef;
?>

2. Указать в шаблоне для нужных материалов [node:nodehierarchy:parent:url:path]/[node:safesef]

Комментарии

Аватар пользователя dakanca dakanca 25 июня 2012 в 16:30

ДВ

Модуль не появляется на странице модулей, побывал чз кнопку "Установить новый модуль". Тоже не работает.

Установка модуля стандартная?

upd: Поставил. Очистил кэш и заработало. Хотя странно это.

Аватар пользователя ssjmp7 ssjmp7 10 декабря 2012 в 19:04

Добавлю сниппет для таксономии:

<?
$node = $data['node'];
$term = taxonomy_term_load($node->field_rate_term['und'][0]['tid']);
return $term->name;
?>

field_rate_term - имя поля CCK

выбрал в модуле "Custom Tokens" пункт "needs:node"

Аватар пользователя vvr vvr 19 февраля 2014 в 14:15

Подскажите код для создания токена относительного URL текущего материала. В дальнейшем токен используется в pathauto в качестве указателя URL материнской ссылки меню [node:menu-link:parent:tokenexample].
Заранее спасибо. Пытаюсь адаптировать примеры из руководства модуля, но не срабатывает.

Аватар пользователя Sipth Sipth 3 декабря 2015 в 0:16

Если не сложно то помогите сделать такое:

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

Соответственно если определить все правильно то это изображение должно будет подставляться в тизерах размещаемых в соц сетях.

Есть токен [node:field_image] который выводит ссылки на все изображения материала через запятую. Причем это оригиналы изображений без наложенных фильтров вотермарок и уменьшений (превью)

А надо что бы какой то токен или еще что то вывело только ссылку на первую превью к данному материалу.

Помогите пожалуйста или направьте куда копать.