[не актуально] Вывод термина в ноде

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

Комментарии

Аватар пользователя vortex vortex 29 января 2014 в 19:16

А как это вообще выглядит? Можно сделать через position absolute и обтеканием текста... Хотя я явно не понимаю идеи Smile

Аватар пользователя MasterTrend MasterTrend 29 января 2014 в 19:36

Есть код:
<?php
if ( arg(0) == 'node' && is_numeric(arg(1)) ) {
$vid = 4;// ID словаря
$terms = taxonomy_node_get_terms_by_vocabulary($node, $vid);
if ($terms) {
foreach ($terms as $term) {
print l($term->name, 'taxonomy/term/'.$term->tid);
}
}
}
?>

если его вставить в node.tpl, то он выведет выведет термины в ноде, соответствующие $vid = 4;// ID словаря

Но мне нужно вывести его в произвольном месте содержимого ноды. Не знаю как..

Аватар пользователя Im Im 29 января 2014 в 22:11

можно в теле ноды ввести спец символ, потом эксплойдить массив содержимого, точка биения - спец символ, и между двумя частями выводить ваши термины, это в теории Smile
к примеру: в теле содержимого в тексте вставляете <br/>. в шаблоне

<?php
$body_node = strip_tags(render($content['fields_body']), "<br/><p>");
$result = explode("<br/>", $body_node);
print $result[0];
print "ваши теги";
print $result[1];
?>
Аватар пользователя MasterTrend MasterTrend 29 января 2014 в 22:39

Интересная идея, но работать не хотит..
Код вставил в node.tpl.php шаблона, в текст содержимого - <br/> , в результате "ваши теги" не отобразилось.., но слетели стили.

Аватар пользователя MasterTrend MasterTrend 29 января 2014 в 22:40

а модуль views это не сделает - (вывести термины определенного словаря (связанные с нодой) в произвольном месте текста ноды)?

Аватар пользователя Im Im 30 января 2014 в 8:36

"MasterTrend" wrote:
но слетели стили.

стили "слетели" потому, что мы очищаем текст от всех тегов кроме тех которые указы "<br/><p>", то есть все оберточные дивы мы фильтруем. Если выводится содержимое, и чстит стили, то значит конструкция работает, значит должен выводить и "ваши теги" они могут быть прикреплены в массе основного текста, так разрыва строки не стоит между выводами.
"MasterTrend" wrote:
а модуль views это не сделает

мне не известны способы заставить сделать его такое.