Отображение в тизере и в полном

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

Аватар пользователя proxxs proxxs 28 сентября 2011 в 0:02

Добрый вечер!

Нужна ваша помощь.

Возможно ли реализовать задуманное?

Оформление тизера и полного просмотра материала значительно отличается, описывать долго, в прикрепленных файлах видно, что именно задумано. Картинки что в тизере, что в полном просмотре одни и те же.

Посоветуйте, как мне это сделать?

ВСЕМ СПАСИБО!

ВложениеРазмер
Иконка изображения тизер22.93 КБ
Иконка изображения полный21.8 КБ

Комментарии

Аватар пользователя proxxs proxxs 28 сентября 2011 в 13:13

Айдар, спасибо! Что темизировать нужно я догадываюсь, но что именно и где пока не соображу. Не мог бы чуть подробнее? И как мне тут views может помочь?

Аватар пользователя Айдар Айдар 28 сентября 2011 в 14:32

Каждый элемент ноды заключаете в CCK-поле, выводите нужные элементы во views, дальше правите css для оформления.

Аватар пользователя proxxs proxxs 8 октября 2011 в 16:01

Уже подумал, что решил задачу, а оказалось что не тем путем..

Что я сделал:

создал 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, но не могу докопаться до внутренностей, чтобы по-своему оформить.

Аватар пользователя proxxs proxxs 9 октября 2011 в 16:34

Неужели никто не может помочь? Я уже голову сломал!!

Поля выводятся в views-view-fields.tpl.php с помощью <?php print $field->content; ?>

Нужно как-то попасть внутрь $field->content; и написать условие при котором в тизере будет выводиться не больше 3 картинок и там же оформить вывод..

Аватар пользователя proxxs proxxs 10 октября 2011 в 22:48

Сделал так:
views
Стиль строки: Материал

Оформил с помощью node-моя-тема.tpl.php конструкцией <?php if($teaser): тизер else: материал; ?>

Так как Стиль строки:Материал, поля недоступны, соответственно для поля Материал:Содержимое не смог установить требуемую длину. Пришлось делать с помощью <php substr($node->content['body']['#value'], 0, 30);?>

Все хорошо, кроме того, что слово обрезается посередине (хочется чтобы обрезалось после слова) и в конце откуда-то берется символ �

Блин.. хоть с этим помогите Biggrin