Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Тематические форумы > TypoScript практикум

Ответ
 
Опции темы Опции просмотра
Старый 26.08.2010, 17:26   #1
_Ra
Новенький
 
Регистрация: 20.08.2008
Адрес: Ukraine
Сообщений: 20
Question Вырезать часть контента новости

Подскажите, с помощью какой функции вырезать теги и часть текста из новости для експорта в RSS. Сейчас новость в таком виде пишет редактор:
Код:
<p>Полный текст новости.</p>
<object width="425" height="344">...код видео с youtube...</object>

Отмеченое красным необходимо удалить. Это нужно для експорта в рсс-поток для Яндекс.Новости (Технические требования Яндекса:http://partner.news.yandex.ru/tech.pdf)
Експорт делаю так:
Код:
yandexnews = PAGE
yandexnews {
  typeNum = 110
  10 >
  10 < plugin.tt_news
  10 {
        useHRDates = 1
        useHRDatesSingle = 1
        dontUseBackPid = 1
        general_stdWrap >
        displayXML {
          rss2_tmplFile = путь/rss_2_yandex.tmpl
          subheader_stdWrap.crop >
        }
  }
  10.pid_list >
  10.pid_list = 43
  10.singlePid = 42
  10.defaultCode = XML

  config {
    disableAllHeaderCode = 1
    additionalHeaders = Content-type:text/xml
    no_cache = 1
    xhtml_cleaning = 0
  }
}
В шаблоне:
Код:
<yandex:full-text>###NEWS_CONTENT###</yandex:full-text>
_Ra вне форума   Ответить с цитированием
Старый 26.08.2010, 20:23   #2
Valery Romanchev
Administrator
 
Аватар для Valery Romanchev
 
Регистрация: 23.08.2003
Адрес: Moscow, Russia
Сообщений: 1,926
Отправить сообщение для Valery Romanchev с помощью Skype™
По умолчанию

у PAGE есть stdWrap
можно передавать контент своему PHP скрипту
который прицеплятеся к
stdWrap (см доку по stdWrap, дале гугле за примером TS и PHP кода)

пример

в TS

page.includeLibs.user_textWrap = fileadmin/templates/xxx.php
page.stdWrap.preUserFunc = user_textWrap

PHP код

function user_textWrap($retstr,$conf ) {
if ($GLOBALS['TSFE']->id != 1) $retstr = str_replace('align="center"', 'class="to-center"', $retstr);
return $retstr;
}
__________________
Веб-студия ТТЛАБ
www.ttlab.ru
Valery Romanchev вне форума   Ответить с цитированием
Старый 27.08.2010, 15:05   #3
_Ra
Новенький
 
Регистрация: 20.08.2008
Адрес: Ukraine
Сообщений: 20
По умолчанию

Спасибо за ответ! К сожалению, я не силен в php. Задачу решил таким образом:
Код:
yandexnews = PAGE
yandexnews {
  typeNum = 110

  10 >
  10 < plugin.tt_news
  10 {
        useHRDates = 1
        useHRDatesSingle = 1
        dontUseBackPid = 1
        general_stdWrap.stripHtml = 1

        displayXML {
          rss2_tmplFile = путь/rss_2_yandex.tmpl
          subheader_stdWrap.crop >
        }
  }
  10.pid_list >
  10.pid_list = 43
  10.singlePid = 42
  10.defaultCode = XML

  config {
    disableAllHeaderCode = 1
    additionalHeaders = Content-type:text/xml
    no_cache = 1
    xhtml_cleaning = 0
  }
}
rss_2_yandex.tmpl :
Код:
<!-- ###TEMPLATE_RSS2### begin -->###XML_DECLARATION###
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:yandex="http://news.yandex.ru">
	<channel>
		<!-- ###HEADER### begin -->
		<title>###SITE_TITLE###</title>
		<link>###SITE_LINK###</link>
		<description>###SITE_DESCRIPTION###</description>
		###SITE_LANG###
		<image>
			<title>###SITE_TITLE###</title>
			<url>###IMG###</url>
			<link>###SITE_LINK###</link>
			<width>###IMG_W###</width>
			<height>###IMG_H###</height>
			<description>###SITE_DESCRIPTION###</description>
		</image>
		###NEWS_LASTBUILD###
		<!-- ###HEADER### end -->
		<!-- ###CONTENT### begin -->
		<!-- ###NEWS### begin -->
		<item>
			<title>###NEWS_TITLE###</title>
			<link>###NEWS_LINK###</link>
			<description>###NEWS_SUBHEADER###</description>
			<yandex:full-text>###NEWS_CONTENT###</yandex:full-text>
                                  ###NEWS_CATEGORY###
			<pubDate>###NEWS_DATE###</pubDate>
			###NEWS_RSS2_ENCLOSURES###
		</item>
		<!-- ###NEWS### end -->
		<!-- ###CONTENT### end -->
	</channel>
</rss><!-- ###TEMPLATE_RSS2### end -->
Посмотрим, примет ли Яндекс такой поток
_Ra вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставка элементов контента в tt_news dmartynenko Новости TYPO3-разработки 20 10.05.2012 21:30
Выбор вариантов оформления контента Exkawator Общие вопросы 6 07.05.2009 18:06
Доступ к полю контента legato.di Общие вопросы 4 04.07.2008 01:34
Новости, проблема ivfrogy TypoScript практикум 4 18.01.2007 09:26
Не стандартный вывод контента Василий Мосийчук Общие вопросы 3 27.10.2005 22:39


Часовой пояс GMT +4, время: 18:44.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория