А кто скажет, нахрена синонимы нужны? возможность есть, а нигде не используется. Какие модули используют синонимы и для чего они вообще? Есть подозрение, что они для что-то типа pathauto? но как точно узнать? Не зря же таблица в базе аж создается...
Ну когда редактрор не выбирает термин словаря при составлении материала а вводит этот термин.
ТО:
Если Вы указали синонимы для термина например СПОРТ такие как ФИЗКУЛЬТУРА и ЗДОРОВЫЙ ОБРАЗ ЖИЗНИ, то все они будут указывать на один и тот же термин словаря если редактор введет один из них.
Синонимы это вроде из описания term в каком либо vocabulary....
А вот зачем они там действительно нужны..
Может кто описать их реальную применимость?
--
С уважением, Аркадич
[b]SadhooKlay[/b]
Ничего не понял.Кто куда вводит и где отображается? Проблема в том, что в коде НИГДЕ( я запускал поиск по всем файлам Друпала) нету использовыания полученного значения, то есть да, оно сохранятся, редактируется, но не ИСПОЛЬЗУЕТСЯ! Можно немного поконкретнее?
Тоже столкнулся с такимже вопросом
Для себя его решил следующим образом.
Кроме того что написал SadhooKlay синонимы нужны для того, чтобы по ним осуществлялся поиск.
Например, если есть статья, которая принадлежит к термину Море. А у термина Море есть синонимы: Пляж, Солнце и т.д.
В поиске человек вводит слово Солнце ему должны найтись статьи про Море, так как это сиснонимы.
Однако когда я начал реально смотреть как это работает понял, что в Drupal 5 "в коде НИГДЕ( я запускал поиск по всем файлам Друпала) нету использовыания полученного значения, то есть да, оно сохранятся, редактируется, но не ИСПОЛЬЗУЕТСЯ!".
Чтобы это заработало пришлось сделать следующее:
в файле node.module в метод function node_update_index() добавить несколько срочек:
foreach ($extra as $t) {
/* EDITED: Add Term Synonyms to Search Index */
$getTerms = taxonomy_node_get_terms($node->nid);
foreach($getTerms as $nodeTerm) {
$text .= ' '. $nodeTerm->name .' ';
$childSynonyms = taxonomy_get_synonyms($nodeTerm->tid);
foreach($childSynonyms as $childSynonym){
$text .= $childSynonym .' ';
}
$parents = taxonomy_get_parents($nodeTerm->tid);
foreach($parents as $parent) {
$text .= ' '. $parent->name .' ';
$synonyms = taxonomy_get_synonyms($parent->tid);
foreach($synonyms as $synonym){
$text .= $synonym .' ';
}
}
}
/* end-EDITED */
$text .= $t;
}
После этого при перестройке индекса будут учитываться и синонимы к терминам.
т.е. чтобы функционал заработал - нужно курочить ядро??? Может я чего-то не понял.. Вопрос по синонимам конечно интересный, только ничего внятного нигде об этом нет. Может Аксель прояснит
Насколько я знаю, на практике синонимами пользуются разве что сторонние модули типа glossary
---
---
All content management systems suck, Drupal just happens to suck less. -- Boris Mann at DrupalCON Amsterdam, August 2005.
да, так я и думал - возможность встроили, но потом забыли, для чего. Думаю, что скорее всего буду использовать для ссылок - модифицирую pathauto и собственным именем назову - хоть какая-то польза будет, а поиск и так выживет нормально
Комментарии
Синонимы очень полезная штука.
Сначало я запутался в терминологии...
Ну когда редактрор не выбирает термин словаря при составлении материала а вводит этот термин.
ТО:
Если Вы указали синонимы для термина например СПОРТ такие как ФИЗКУЛЬТУРА и ЗДОРОВЫЙ ОБРАЗ ЖИЗНИ, то все они будут указывать на один и тот же термин словаря если редактор введет один из них.
Вот для этого синонимы и нужны.
Синонимы это вроде из описания term в каком либо vocabulary....
А вот зачем они там действительно нужны..
Может кто описать их реальную применимость?
--
С уважением, Аркадич
[b]SadhooKlay[/b]
Ничего не понял.Кто куда вводит и где отображается? Проблема в том, что в коде НИГДЕ( я запускал поиск по всем файлам Друпала) нету использовыания полученного значения, то есть да, оно сохранятся, редактируется, но не ИСПОЛЬЗУЕТСЯ! Можно немного поконкретнее?
Тоже столкнулся с такимже вопросом
Для себя его решил следующим образом.
Кроме того что написал SadhooKlay синонимы нужны для того, чтобы по ним осуществлялся поиск.
Например, если есть статья, которая принадлежит к термину Море. А у термина Море есть синонимы: Пляж, Солнце и т.д.
В поиске человек вводит слово Солнце ему должны найтись статьи про Море, так как это сиснонимы.
Однако когда я начал реально смотреть как это работает понял, что в Drupal 5 "в коде НИГДЕ( я запускал поиск по всем файлам Друпала) нету использовыания полученного значения, то есть да, оно сохранятся, редактируется, но не ИСПОЛЬЗУЕТСЯ!".
Чтобы это заработало пришлось сделать следующее:
в файле node.module в метод function node_update_index() добавить несколько срочек:
foreach ($extra as $t) {
/* EDITED: Add Term Synonyms to Search Index */
$getTerms = taxonomy_node_get_terms($node->nid);
foreach($getTerms as $nodeTerm) {
$text .= ' '. $nodeTerm->name .' ';
$childSynonyms = taxonomy_get_synonyms($nodeTerm->tid);
foreach($childSynonyms as $childSynonym){
$text .= $childSynonym .' ';
}
$parents = taxonomy_get_parents($nodeTerm->tid);
foreach($parents as $parent) {
$text .= ' '. $parent->name .' ';
$synonyms = taxonomy_get_synonyms($parent->tid);
foreach($synonyms as $synonym){
$text .= $synonym .' ';
}
}
}
/* end-EDITED */
$text .= $t;
}
После этого при перестройке индекса будут учитываться и синонимы к терминам.
ужос
т.е. чтобы функционал заработал - нужно курочить ядро??? Может я чего-то не понял.. Вопрос по синонимам конечно интересный, только ничего внятного нигде об этом нет. Может Аксель прояснит
Насколько я знаю, на практике синонимами пользуются разве что сторонние модули типа glossary
---
---
All content management systems suck, Drupal just happens to suck less. -- Boris Mann at DrupalCON Amsterdam, August 2005.
да, так я и думал - возможность встроили, но потом забыли, для чего. Думаю, что скорее всего буду использовать для ссылок - модифицирую pathauto и собственным именем назову - хоть какая-то польза будет, а поиск и так выживет нормально
Короче, лучше тэги вместо синонимов использовать? nodewords?
да НЕ используются синонимы НИГДЕ!! Что вы заменять собрались?