Подскажите пожалуйста!
Есть термин с кучей нод. Этому темину я добавил описание(стандартными средствами), которое отображается между заголовком термина и самими нодами. Но беда состоит в том, что это описание дублируется на всех страницах термина (*?page=1, *?page=2, *?page=3 и т.д.) Т.е. получается куча дублированного контента, да и в плане удобства тоже не совсем приятно...
Как сделать что бы описание отображалось только на первой странице термина?
Заранее спасибо!
Комментарии
[ru-api=theme_taxonomy_term_page]theme_taxonomy_term_page[/ru-api]
Спасибо за направление, CSoft)
Но можно поподробнее, что именно нужно менять в коде? В PHP не силен, к сожалению...
Нашел решение с таким кодом:
<?php
if (!isset($_GET['page'])) {
$category = taxonomy_get_term(arg(2));
echo "{$category->description}";
}
?>
Но не могу понять как его вставить не криво.. Ткните пожалуйста..(
В целом - да, оно. Но сделайте проще - в строке "if (!empty($description))" правите условие на !isset($_GET['page']) && !empty($description) и больше ничего не нужно.
Переопределяете в своей теме в template.php эту функцию темизации и дело в шляпе.
С первой частью кажется всё понял, а вот с переопределением функций за пару лет работы с друпал пока не сталкивался... Помогите(
Хотя, работает и без переопределения) Или без него будет коряво?
CSoft, огромное спасибо! Выручили)
Почитайте / посмотрите уроки по темизации в Drupal. Например, функции с префиксом theme_ можно переопределять в своих темах оформления сайта и выводить то, что нужно. Как это в нашем случае - меняем строку.
В Вашей теме нужно в файле template.php переопределить функцию theme_taxonomy_term_page, имя уже будет НАЗВАНИЕ-ТЕМЫ_taxonomy_term_page или phptemplate_taxonomy_term_page, копируете туда код с оригинальной функции, правите наше условие, очищаете кэш, радуетесь результату.
Так делать нельзя. Нужно обязательно переопределять функцию в своей теме. Объясняю почему: выйдет новая версия Drupal, затрёте старые файлы и все Ваши старания просто исчезнут.
В своей теме создаёте файл taxonomy-term.tpl.php
<?php <div id="taxonomy-term-<?php print $term->tid; ?>" class="<?php print $classes; ?> <?php if (isset($_GET['page'])): ?>taxonomy-term-nopage<?php endif; ?>">
<?
php if (!$page): ?><h2><a href="<?php print $term_url; ?>"><?php print $term_name; ?></a></h2>
<?php endif; ?>
<div class="content">
<?php if (isset($_GET['page'])) { hide($content['description']);} ?>
<?php print render($content); ?>
</div>
</div>
?>
Только что прочитал, что надо для 6, ссори - это для 7
А как $_GET['page'] засунуть в подвал или в заголовок вьюхи (D7) ?
блин, не в той теме ответил