Собственно имею словарь Запчасти и хочу в него из ноды с названием запчасть добавлять автоматически название ноды: после добавление материала в словаре таксономии должно появится что-то типа:
Двигатель
Стартер
КПП
Приборная панель
Подушка двигателя
Опора трансмии
Выжимной подшипни и т.д.
Как это сделать просто не понятно? Перерыл модуль autotag но так и не понял как им пользоваться.
С ув., Алексей
Комментарии
Два варианта - либо Теги (отметьте галочку в настройках словаря)
либо модуль Taxonomy Other - если хотите более качественно региулировать термины.
В обоих случаях, вводить название новых терминов придется самостоятельно.
Не нужно тупо чтобы было так название ноды -> проверка термина в словаре -> если нет в словаре то добавляем термин. Желательно с Exposed фильтром. То есть как бы создаем термин, автоматически для словаря без всяких таков и т.д.
написать маленький модуль и hook_nodeapi($op = 'presave') или insert к примеру
Согласен написать, а где копать?
switch($op){
case insert:
if(!taxonomy_get_term_by_name($node->title)) {
$term = array(
тут массив термина...
где 'name' => $node->title
'vid' = ваш словарь
)
}
)
}
Примерно так, исправите где надо и допишите привязку термина к ноде, если требуется. Есть ещё вариант, на ССК сделать, я его позже распишу
Ок. Спасибо. Интересно!
У меня стоит CKK а как с помощью его?
Ставите:
CCK
Content Taxonomy
Automatic nodetitles или как он там
Token
1. Добавляете к материалу поле таксономии со свободным вводом для словаря "Запчасти".
2. В Automatic nodetitles прописываете в правило генерации тайтла, генерацию на основе значения поля из шага #1
3. В Automatic nodetitles скрываете тайтл.
4. Профит!!!
Спасибо. То что нужно.
С ув., Алексей
Подниму тему:
делаю все как написал RxB:
в настройках Pattern for the title прописываю: [term]
При этом термин создается, а тайтл материалу не присваивается. Таким образом присваиваются только уже существующие термины.(причем как то странно: если редактирую статью задавая новый термин ей присваивается предыдущий)
Что я делаю не так?