Сделал модуль для экспорта ленты сайта в Яндекс.новости.
Для views, с гибкими настройками маппинга полей. Под семерку.
Просьба потестить и рассказать про результаты проверки Яндексом ваших лент.
Баги - в issue tracker модуля, но можно и сюда.
Экспорт в Яндекс.Новости
Главные вкладки
Лучший ответ
Актуальная информация по выгрузке в Яндекс Новости тут
Комментарии
Блин, а что только под 7ку?(((
Под 6-ку есть модуль, правда не на Drupal.org а тут на ru
ну, попросили сделать по семерку, вот и сделал под семерку
если у кого-то есть желание отконвертить под шестерку - всегда пожалуйста, дам прав мейнтейнера, или можете проспонсировать.
Сабскрайбинг.
Я так понимаю в Яндекс.Новости далеко не каждый сайт пускают... Или я не прав?
Именно так.
к чему изврат с модулем, если всё это делается через шаблон обычной RSS
«Андрей, здравствуйте.
Оказывается я вас немного дезинформировал о существовании возможности передать координату в Яндекс.Новости. На данный момент такой возможности нет. Но мои коллеги очень заинтересовались возможностью принимать новости вместе с координатой и стоит ожидать, что в ближайшее время эту возможность реализуют.
Я вам сообщу о появлении такого функционала.
--
Вадим Францев
Менеджер по маркетингу API Яндекс.Карт
»
палю тему
как вы настроите, например, enclosure через шаблон RSS? я имею ввиду, не для своего сайта, зная какие поля надо вывести, а вообще - для всех сайтов.
В шестерке заработало с небольшим хаком ynews_style_plugin.inc
include (drupal_get_path('module', 'views').'/plugins/views_plugin_style.inc');
}
не работает «author» если мапить термин таксономии, показывает значение node.vid вместо имени термина. Как побороть?
Появилось желание с потребностью:) Портировал под 6-ку. См. прикрепленный файл.
У кого нибудь получилось настроить модуль?
Все четко работает
Установили у клиента — полёт нормальный.
закоммитил в шестую ветку файлы от комрада molfar с мелкими фиксами, спасибо!
Установил на D7
Рубрики новостей у меня сделаны словарем.
Добавил поле Содержимое:Рубрика
В настройках item:category выбрал свое поле
Но в файл почему то выводится не содержимое моего поля (Рубрика новости), а NID новости (214)
сделайте экспорт вьюса, погляжу
Сделал экспорт
restyler, что-то решилось по моей проблеме?
Огромное спасибо, restyler и molfar!
Сейчас же буду тестить модуль 6-ку (а то я так понял еще никто...)
Что-то не хотят поля в соответствующие теги обертываться и ядреные теги не выводятся: http://kazandoctor.ru/yandex-news.xml, хотя в предпросмотре views все отлично.
ПС Модуль скачивал с орга.
У меня модуль работает, но саппорт яндекса написал, что есть замечания:
«Единственное замечание есть к тегам : из них необходимо исключить ссылки на иллюстрации.
Для трансляции иллюстраций нужно использовать теги . Если в сообщении содержится несколько иллюстраций, или иллюстрация и видеофайл, элемент повторяется.
Пример: »
И как это исправить?
фильтр на , или не пихать картинки в тело ноды. Сделать для этого отдельное поле.
не пихать картинки в тело ноды. Сделать для этого отдельное поле.
Для картинок есть отдельное поле, но иногда пресс-служба вставляет изображения непосредственно в текст статьи, если это требуется по каким-то причинам.
фильтр на изображение
можно вот этот пункт подробнее, как мне отфильтровать изображения, содержащиеся внутри ноды?
поподробнее тут http://www.books.ru/books/regulyarnye-vyrazheniya-3-e-izdanie-592346/
не пихать картинки в тело ноды. Сделать для этого отдельное поле.
Для картинок есть отдельное поле, но иногда пресс-служба вставляет изображения непосредственно в текст статьи, если это требуется по каким-то причинам.
фильтр на изображение
можно вот этот пункт подробнее, как мне отфильтровать изображения, содержащиеся внутри ноды?
Проблема как и у sashken, вместо категории - id. Яндекс отказывается принимать такую ленту.
Так. Дополню немного. Яндекс не воспринимает вообще лишний html код, точнее не желательны теги и изображения. Поэтому можно просто в настройках поля выбрать "Перезаписать результаты" и поставить галочку "Удалить html теги".
Так же решил проблему с выводом id, вместо названия категории. Для исправления этого "бага" потребуется в файле ynews/includes/ynews.views.inc
Строчки:
<?phpif ($options['category']) {
$alias = $fields[$options['category']]->field_alias;
$ynews_item['category'] = isset($row->$alias) ? yml_safe($row->$alias) : NULL;
}?>
Заменить на:
<?phpif ($options['category']) {
$alias = $fields[$options['category']]->field_alias;
$ynews_item['category'] = yml_safe($view->style_plugin->get_field($key, $options['category']));
}?>
Views RSS: Yandex Elements
Все здорово, но. В ynews появился баг с пустой первой строчкой (что смертельно для Яндекс-новостей), а в Yandex Elements вообще не предусмотрен обязательный для Я-Н image.
Что-то надо поправить, но что?
Можно поподбробней, что за обязательный image, где про него написано?
В Техрегламенте Яндекс-новостей http://partner.news.yandex.ru/tech.pdf указано, что в channel обязательный элемент - image с логотипом сайта. То есть
<url>http://www.rossiyskie-novosti.ru/logo.gif</url>
<title>Российские новости</title>
<link>http://www.rossiyskie-novosti.ru/</link>
</image>
У вас его в модуле нет, к сожалению, а попытка вставить во вьюсе в свободное текстовое поле ничего не дает.
Хм... так он есть в модуле Views RSS, для которого Views RSS: Yandex Elements является дополнительным, добавляющим только специфические для Яндекса поля...
Вот пример выдачи - http://www.computerbild.ru/yrss.xml - с элементом image:
<title>Computer Bild</title>
<link>http://www.computerbild.ru/</link>
<width>100</width>
<height>47</height>
</image>
Спасибо за наводку! Оказывается, я просто не полностью активировал Views RSS.
Все работает!
Модуль работает, но есть 2 проблемы:
1. Кодировка. На сайте и в RSS фиде указывается utf-8, но на деле в RSS кодировка отображается некорректно, сплошные иероглифы.
2. В RSS фиде отображаются только заголовки, краткое содержание не отображается, хотя в xml коде оно присутствует.
Подскажите, пожалуйста, как исправить данные баги?
Как исправить?
1. Понять, что именно происходит и где.
2. Описать это понятным для других языком, желательно со ссылками на где это происходит.
1. Насколько я понял, в RSS фид по каким-то причинам данные отдаются не в utf-8.
PS: БД в кодировке utf-8, в .htaccess так же прописана utf-8.
2. В RSS фиде мы видем только заголовки статей. Если же открыть xml код страницы RSS фида - мы видим и заголовки и анонсы статей ().
Что за модуль вы используете? Я могу помочь вам только по Views RSS: Yandex Elements (который сам и написал)
То, что вы описываете в пункте 2 - стандартные читалки RSS не поддерживают теги яндекса, поэтому обрезают всё то, что находится в тегах yandex:full-text
Как я понял - это тема модуля ynews, по нему у меня и вопросы.
Ваш модуль "Views RSS: Yandex Elements" я тоже видел, но, к сожалению, не смог сходу разобраться как им пользоваться (ynews в этом плане более приятный).
Может быть у вас есть подробные инструкции по использованию вашего модуля? Мне хотелось бы протестировать и ваш модуль.
После того, как я включаю ваш модуль и иду во вкладку "views" я не вижу в ней 'Yandex.News'. Я что-то упустил?
Спасибо, у меня были такие подозрения, вы их подтвердили.
Документацию по Views RSS можно найти тут - https://drupal.org/node/1344136
Мой модуль только добавляет специальные теги для Яндекса
duozersk, у вашего модуля родительским указан модуль Views RSS. А для того, чтобы появилась возможность интеграции с Яндекс.Новости вам нужно наследоваться от Views RSS: Core Elements, который входит в состав Views RSS. Ну или указать в своем модуле, что необходимо включить Views RSS: Core Elements, т.к. недостающие элементы находятся именно там.
Good-good - закоммитил http://drupalcode.org/project/views_rss_yandex.git/commit/cb3cb63
11 февраля я получила письмо от info@news.yandex.ru
Яндекс.Новости: изменения в технических требованиях к экспорту
Уважаемые партнёры!
Мы планируем изменить формат отображаемых на страницах нашего сервиса логотипов партнёрских сайтов для того, чтобы пользователю легче было найти заголовок предпочитаемого издания на странице сюжета. Фавиконки, которые мы показываем рядом с названием агентства, будут заменены на логотипы.
В этой связи мы немного меняем требования к экспортному файлу.
В должен быть добавлен элемент yandex:logo, предназначенный для передачи квадратного логотипа.
Пример:
<yandex:logo type="square">http://example.net/square_logo.png</yandex:logo>
Атрибут type может быть только square. Рекомендуется для передачи стандартного логотипа использовать тот же элемент yandex:logo, но без атрибута type. Т.е. вместо элемента лучше писать:
<yandex:logo type="square">http://example.net/square_logo.png</yandex:logo>
Минимальный размер логотипа, передаваемого посредством yandex:logo type="square" - 180 на 180 пикселей, его ширина и высота должны быть одинаковыми. Дополнительных требований к стандартному логотипу не накладывается.
Старая схема с передачей логотипов в пока тоже поддерживается (как отдельно, так и совместно с yandex:logo type="square").
Даже если вы решите использовать один и тот же логотип в качестве квадратного и стандартного, его всё равно необходимо в экспорте указать в двух элементах - yandex:logo и yandex:logo type="square".
-
С уважением,
Яндекс.Новости
______________________________________________________________________-
Будут ли внесены соответствующие изменения в модуль? Когда ждать обновления?
Ну как бы вот - https://www.drupal.org/node/2425029 - это для Views RSS: Yandex Elements
Я не знаю, как установить патч(
Я руками дописала в модуле
<url><?php print $image_url; ?></url>
<title><?php print $title; //print yml_safe(variable_get('site_name', '')); ?></title>
<link><?php print $GLOBALS['base_url'] . $GLOBALS['base_path']; ?></link>
</image>
<yandex:logo type="square"><?php print $image_url; ?></yandex:logo>
Вы, скорее всего, говорите про модуль http://drupal.org/project/ynews
Я писал про https://www.drupal.org/project/views_rss_yandex - для него достаточно скачать -dev релиз.
А подскажите пожалуйста где найти в views_rss_yandex поля для вывода yandex:logo и yandex:logo type="square". В дев ветке на 7ке не нашел ;( скрин
Так точно, я про ynews.
Специально для вас добавил скриншот - https://www.drupal.org/files/project-images/views_rss_yandex_channel.png
Находятся они точно там же, где и настройки всех других маппингов для Views RSS.
Яндекс требует, чтобы дата была в формате RFC822
а в экспортном файле Thu, 14 Apr 16 16:15:59 +0300
выводится Apr 16 , а надо Apr 2016
я уже в представлении пробовала менять, в форматах данных, не помогает
в самом модуле
<?php if(isset($row['pubdate'])): ?>
<?php print $row['pubdate']; ?>
<?php endif; ?>
я не знаю, что тут менять
Единственное, что смогла изменить - саму дату экспортного файла
Поменяла
<?php print date(DATE_RFC822); ?> (выводился год 16)
на
<?php print date('D, d M Y H:i:s O'); ?> (стал выводиться 2016)
Актуальная информация по выгрузке в Яндекс Новости тут