форум общения русскоязычных пользователей CMS Текстпаттерн
Вы не зашли.
Есть у меня секция "disenger" форма этой секции под таким кодом :
<h4><txp:permlink><txp:title /></txp:permlink></h4>
<p>
<txp:excerpt /> <txp:permlink>(read more..)</txp:permlink>
</p>
Что бы к примеру ввести фотографию в описание статьи в этой форме я прописываю <txp:article_image />.....
Вопрос???
В секцию "disenger" я буду помещать очень много статей с картинками, естественна для каждого описания статьи с картинкой мне нужно создавать новую форму, а если этих статей будет 100!мне нужно каждый раз создавать форму ??? если какой нибудь код что бы не создавать постоянно новые формы?
Неактивен
Не совсем понятно, для чего создавать форму для _каждой_ статьи
Форму для одного типа статьи достаточно создать один раз, а потом использовать эту форму в тегах типа <txp:article form="имя_формы" />. Статей может быть хоть 10000, но ТИПОВ статей - не думаю, что будет много. Формы же нужно использовать для вывода статей определенного ТИПА, а не конкретных статей (хотя тоже можно, но накладно).
Неактивен
Ну вот к примеру http://community.livejournal.com/foto_d … tml#cutid1
То есть есть показательная фото к статье , нажимаешь далее открывается полностью статья с фотографиями
Вот такая схема мне нужна
Неактивен
Если вы не разбираетесь в Текстпаттерне, последующий текст будет трудноват, у меня мало времени обьяснять все в деталях. Но может, коллеги помогут еще.
1) Опишем примерно задачу:
1а) В секции идет вывод выдержек статей (excerpt). В каждой выдержке есть одна фотография (не больше).
1б) По переходу на статью (по permlink) выводится полная версия статьи, с остальными фотографиями.
Для реализации достаточно создать "под себя" две формы - одну для вывода выдержки (foto-article-excerpt), другую для вывода полной статьи (foto-article-full).
В коде шаблона нужной секции достаточно "расширить" тег <txp:article /> до такого вида:
... <txp:article listform="foto-article-excerpt" form="foto-article-full" /> ...
Это даст нам следующее:
а) При входе в секцию мы увидим список статей "выдержками" - за это отвечает форма foto-article-excerpt, имя которой мы прописали в атрибуте listform.
б) При "входе" в конкретную статью мы увидим результат работы формы foto-article-full, имя которой мы прописали в атрибуте form.
2) Для того, чтобы это все начало работать, формы нужно создать. По минимуму, для быстрой проверки работоспособности, достаточно создать формы с таким кодом:
2а) foto-article-excerpt:
<h4><txp:permlink><txp:title /></txp:permlink></h4> <div class="article-body"> <txp:excerpt /> <p><txp:permlink>(read more..)</txp:permlink></p> </div>
2б) foto-article-full:
<h4><txp:permlink><txp:title /></txp:permlink></h4> <div class="article-body"> <txp:body /> </div>
3) Теперь нужно решить вывод картинок.
3а)Чтобы увидеть нужную фотографию в выдержке, нужно добавить (вы это уже знаете, наверное) в текст выдержки тег <txp:image /> с нужным id загруженной фотографии. А лучше не <txp:image />, а <txp:thumbnail /> - это будет экономнее для конечного посетителя. В итоге картинка будет выведена за счет работы тега <txp:excerpt />, который выведет текст выдержки, и заодно фотографию.
3а-1) Если картинка в выдержке всегда одна, можно сделать немного по-другому. Указать при редактировании статьи в дополнительном поле "Картинка для статьи" (или типа этого, не помню точно название) код нужной фотографии - просто число. А в форме вывода выдержки (foto-article-excerpt) добавить в нужном месте тег <txp:article_image /> с указанием нужного ID (и активацией thumbnail вместо полной фотографии, если нужно). Этот способ проще для редактора статей, так как не нужно добавлять постоянно тег <txp:image /> в текст выдержки, а достаточно указать одно число в дополнительном поле. В этом случае текст выдержки будет выведен тегом <txp:excerpt />, а фотография - тегом <txp:article_image />, "независимым" от того, что написано в тексте выдержки. Недостаток способа - больше одной фотографии не подставить, т.к. дополнительное поле только одно (но есть еще 10 custom-полей ).
3б) В полной же статье все как обычно - добавляем <txp:image /> в нужных местах текста. Текст и фотографии будут выведены тегом <txp:body />.
Уфф. Вроде все. Если что, коллеги поправят
Отредактированно marazmus (30-04-2007 23:10:02)
Неактивен
Большое спасибо за подробное описание
Все легко понимается и читается.
Сделал все как вы написали вроде бы получилось.
Но есть одна непонятка
Что касается полной статьи на которую надо переходить куда публиковать полную статью ?
Именно есть форма для выдержки и форма для полной статьи
(форму "a" я использую для выдержки статьи
форму "б" для полной
Все в одной секции )
Отредактированно Tommy (01-05-2007 00:22:33)
Неактивен
Публиковать статьи нужно в ту секцию, с которой мы работаем. Если вы читали статью о семантике Текспаттерна на textpattern.ru, то вспомните, что основная работа происходит с секциями. Это место, "куда" публикуются статьи. При вводе новой статьи и правке старой через админку нужно указать, в какую секцию "положить" статью. В нашем случае это секция disenger (как указано в первом посте). Раз у вас все получилось, значит и шаблон вы правили тот, который нужно (каждой секции, кстати, можно указать свой шаблон). Теперь достаточно опубликовать статью в этой секции, чтобы она появилась в списке, который формирует тег <txp:article />, указанный в коде шаблона для этой секции. Уфф, че-то я совсем "записался" Как-то попроще нужно бы...
p.s. Кстати, выдержка (то, что вы вводите в поле ввода для выдержки) есть просто часть статьи. "Физически" - это часть статьи, одна строка в БД, но разные поля. Так что - в какую секцию опубликована статья, к той же относится и ее часть - выдержка этой статьи. Этим фактом мы пользуемся, когда указываем тегу <txp:article /> через атрибуты form и listform - какими формами выводить части статьи. Атрибут listform работает, когда Текстпаттерн находится в режиме списка статей. Атрибут form работатет, когда Текстпаттерн выводит конкретную статью.
Отредактированно marazmus (01-05-2007 00:48:06)
Неактивен
Спасибо тебе огромное действительно очень помог. Спасибо.
Отредактированно Tommy (01-05-2007 02:26:01)
Неактивен
например
на главной я вывожу новости. с картинками или без.
форма вывода для всех одна. картинка <txp:article_image /> обернута например в div с отступами. если картинки нет то отступы работают, что очень не есть гут!
есть ли решения? или плагины
спасибо!
Неактивен
Зачем тогда оборачивать картинку в div? Присвой классу картинки свойство display: block; и там же пропиши отступы.
Неактивен
когда-то делал подобное.
для выдержки выводил тумбу(маленькое изображение), а в статье уже нормальное.
использовал плагин upm_image. он позволяет в поле article_image хранить сколько угодно изображений и выводить или тумбы или полные картинки.
для наглядности я к каждой выдержке выводил первые две тумбы, а в статье уже все полноразмерные изображения.
Неактивен
У меня вопрос про статьи и картинки. Нужно сделать, чтоб у каждой статьи была свая фоновая картинка. Подскажите пожалуйста как это можно сделать.
Еще проблема вот какая: Выдержка статьи отображается, а вся статья не хочет(((
Отредактированно CJVodkin (12-04-2009 16:04:08)
Неактивен
Есть у меня одна проблемка.
Как убрать из статей разделительную полосу типа <hr> ?
Неактивен
Открыть форму, которая выводит статьи и убрать оттуда ненужный теги <hr>. Обычно статьи выводятся формой default, если не указана другая форма в теге <txp:article />
Неактивен
<txp:feed_link label="XML" flavor="rss" />
Как сделать вместо текста-ссылки "RSS" изображение-ссылку на эту RSS?
Неактивен
Вопрос снимается...
Прошу пращения за флуд.
Неактивен