Помогите с RSS

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО

Не корректно обрабатывается RSS

#1 13 июля 2015 в 22:11
Прошу помощи и у знающих людей. Сайт приняли в яндекс новости, но RSS не проходит корректность. Постоянно вылазит ошибка "Слишком мало слов в документе". Подскажите куда копать!
#2 14 июля 2015 в 10:58
Насколько я понял, вообще не подтягивается поле description. То есть есть, название новости, url и дата, самого текста вообще нет. Кто может подправить? не за бесплатно конечно.
#3 14 июля 2015 в 17:05
Обязателен новостной и аналитический характер экспортируемых в Яндекс.Новости материалов. В них не должны содержаться сообщения неновостного характера (прогнозы погоды, списки и расписания, сообщения блогов и форумов, анонсы предстоящих событий, реклама, стихи, анекдоты, фельетоны, гороскопы, художественные произведения).
Что там можно тогда публиковать? если даже реклама запрещена?
Или они расчитаны на альтруистов? или только яндекс реклама?
#4 14 июля 2015 в 18:51
В двойке проверьте настройки компонента
Компоненты -> Генератор RSS -> Поля элементов ленты -> Описание элемента -> поставьте "Текст новости"

В первой ветке поле <description> в RSS заполняется почему-то из Анонса статьи.
Поле анонс заполнено description в RSS есть, не заполнено нету
#5 14 июля 2015 в 18:56


В двойке проверьте настройки компонента
Компоненты -> Генератор RSS -> Поля элементов ленты -> Описание элемента -> поставьте "Текст новости"

В первой ветке поле в RSS заполняется почему-то из Анонса статьи.
Поле анонс заполнено description в RSS есть, не заполнено нету

Василий Сергеевич

Все проверил, текст яндекс не видит
#6 14 июля 2015 в 18:57
Вот что прислали с яндекса -Игорь,
в Вашем экспортном файле теги <yandex:full-text> не содержат текста:
<yandex:full-text>Текст новости</yandex:full-text>
Хочу напомнить, что полный текст сообщения необходим для индексирования поисковым роботом и на Яндекс.ру размещаться не будет.
Пожалуйста, поместите в теги <yandex:full-text> полный текст материалов.
#7 14 июля 2015 в 19:00
Fuze помог советом, подсказал где копать. Тег <yandex:full-text>Текст новости</yandex:full-text> нужно дописать в файле \templates\шаблон\controllers\rss\feed.tpl.php, но что впихнуть в тег вместо слова "Текст новости"?
#9 14 июля 2015 в 19:11
Сейчас попробую
#10 14 июля 2015 в 19:14
Вернее так:
В <item></item>

Вставить:

<?php if(!empty($feed['mapping']['description'])) { ?>
<yandex:full-text><?php html($item[$feed['mapping']['description']]); ?></yandex:full-text>
<?php } ?>
#11 14 июля 2015 в 19:17
Ну вот этот кусок, не подскажете куда воткнуть?
<?php if(!empty($feed['items'])) { ?>
<?php foreach($feed['items'] as $item){ ?>
<item>
<?php if(!empty($feed['mapping']['title'])) { ?>
<title><?php html($item[$feed['mapping']['title']]); ?></title>
<?php } ?>
<?php if(!empty($feed['mapping']['description'])) { ?>
<description><?php html($item[$feed['mapping']['description']]); ?></description>
<yandex:full-text><?php html($item[$feed['mapping']['description']]); ?></yandex:full-text>
<?php } ?>
<?php if(!empty($feed['mapping']['pubDate'])) { ?>
<pubDate><?php html(date('r', strtotime($item[$feed['mapping']['pubDate']]))); ?></pubDate>
<?php } ?>
<?php if(!empty($feed['mapping']['image'])) { ?>
<?php $image = cmsModel::yamlToArray($item[$feed['mapping']['image']]); ?>
<?php if (!empty($image[$feed['mapping']['image_size']])){ ?>
<enclosure url="<?php echo cmsConfig::get('upload_host_abs'). '/'. $image[$feed['mapping']['image_size']]; ?>" />
<?php } ?>
<?php } ?>
<link><?php echo href_to_abs($feed['ctype_name'], $item['slug'].'.html'); ?></link>
<guid><?php echo href_to_abs($feed['ctype_name'], $item['slug'].'.html'); ?></guid>
</item>
<?php } ?>
<?php } ?>
#12 14 июля 2015 в 19:22
Это Вам Fuze отправил?

от тега <item> до </channel>

вставляйте с заменой
#13 14 июля 2015 в 19:25
Нет, он ничего мне не отправлял, просто подсказал какой файл за это отвечает. Это кусок кода из моего файла. Я не понял, от item до channel убрать весь код и вставить это? <?php if(!empty($feed['mapping']['description'])) { ?>
<yandex:full-text><?php html($item[$feed['mapping']['description']]); ?></yandex:full-text>
<?php } ?>
#14 14 июля 2015 в 19:25
Стоп.
Здесь ошибка:

<?php if(!empty($feed['mapping']['description'])) { ?>
<description><?php html($item[$feed['mapping']['description']]); ?></description>
<yandex:full-text><?php html($item[$feed['mapping']['description']]); ?></yandex:full-text>
<?php } ?>

Полностью содержимое файла меняйте на:

Группе, к которой вы принадлежите, запрещено просматривать этот скрытый текст
#15 14 июля 2015 в 19:27
Пробую
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.