Здравствуйте.
На сайте под Drupal 8 создан тип материала ПОРТФОЛИО.
Материал с именем СОБАКА данного типа относится к категории СКУЛЬПТУРА.
URL-синоним на категорию СКУЛЬПТУРА прописан как portfolio/sculpture
Установлен Pathauto, Token, CTools.
Пытаюсь в Pathauto создать шаблон синонимов URL, чтобы ссылка получилась типа portfolio/sculpture/sobaka, используя [node:field_category]/[node:title], но в результате получаю sculptura/sobaka.
Нашел схожую тему, но решение там для Drupal 7. Нужно установить модули Entity и Entity tokens и прописать [node:field_category:url:path]/[node:title], но для Drupal 8 нет модуля Entity tokens.
Комментарии
Движуху с токенами обещают в начале мая (т.е. через пару месяцев что-то будет). Пока никто не запрещает создавать свои. Вот специально для тебя (скачать):
<?php /** File /modules/custom/my_tokens/my_tokens.tokens.inc */ use Drupal\Core\Render\BubbleableMetadata; /**
$tokens['field-category-path-url'] = [
$replacements = [];
* Implements hook_token_info().
*/
function my_tokens_token_info() {
'name' => t("URL CATEGORY"),
'description' => t("This is MY TOKENS, sychki"),
'needs-data' => 'node',
];
return [
'tokens' => ['node' => $tokens],];
} /**
* Implements hook_tokens().
*/
function my_tokens_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
if (
$type == 'node' && !empty($data['node'])) {foreach ($tokens as $name => $original) {
switch ($name) {
case 'field-category-path-url':
$replacements[$original] = $data['node']->field_category->entity->url();
break;
}
}
}
return
$replacements;}
?>
Подниму тему, тоже актуально. Прошло полтора года, не появилось готового решения? В списке стандартных токенов ничего похожего на [node:field_category:url:path] так и не могу найти...
Скорей всего проблема для программистов маленькая, поэтому они её быстро закрывают, а модуль делать не когда