Добрый вечер!
Нужна ваша помощь.
Возможно ли реализовать задуманное?
Оформление тизера и полного просмотра материала значительно отличается, описывать долго, в прикрепленных файлах видно, что именно задумано. Картинки что в тизере, что в полном просмотре одни и те же.
Посоветуйте, как мне это сделать?
ВСЕМ СПАСИБО!
Комментарии
Можно. Легко. Темизацией.
Плюс облегчит жизнь CCK/Views
Айдар, спасибо! Что темизировать нужно я догадываюсь, но что именно и где пока не соображу. Не мог бы чуть подробнее? И как мне тут views может помочь?
Каждый элемент ноды заключаете в CCK-поле, выводите нужные элементы во views, дальше правите css для оформления.
Уже подумал, что решил задачу, а оказалось что не тем путем..
Что я сделал:
создал node-моя-тема.tpl.php в котором разделил тизер и страницу со всем материалом с помощью условия
<?php if($teaser):?>
<?php print $node->title;?>
<img src="<?php print $node->field_image[0]['filepath'];?>">
<?php print $node->content['body']['#value'];?>
<?php else:?>
тут полная нода
<?php endif;?>
и оформил как было нужно.
Но, в этом случае, в тизере будет выводиться вся статья целиком, а нужно только определенное кол-во символов. Стал выводить через views.
Вот здесь я и остановился. node-моя-тема.tpl.php с условием if($teaser) тут уже не работает, нужно тизер оформлять другими методами. Понял, что вывод содержимого находится в $fields, но не могу докопаться до внутренностей, чтобы по-своему оформить.
Неужели никто не может помочь? Я уже голову сломал!!
Поля выводятся в views-view-fields.tpl.php с помощью <?php print $field->content; ?>
Нужно как-то попасть внутрь $field->content; и написать условие при котором в тизере будет выводиться не больше 3 картинок и там же оформить вывод..
Сделал так:
views
Стиль строки: Материал
Оформил с помощью node-моя-тема.tpl.php конструкцией <?php if($teaser): тизер else: материал; ?>
Так как Стиль строки:Материал, поля недоступны, соответственно для поля Материал:Содержимое не смог установить требуемую длину. Пришлось делать с помощью
<php substr($node->content['body']['#value'], 0, 30);?>
Все хорошо, кроме того, что слово обрезается посередине (хочется чтобы обрезалось после слова) и в конце откуда-то берется символ �
Блин.. хоть с этим помогите