Срочно нужна помощь! DLE – RSS
Ребята, кто может, помогите, пожалуйста! Дело такое: в DLE есть 3 формата экспорта новостей, в том числе под Яндекс-новости. Но… как оказалось на практике, отсутствует отправка изображений. Вот что написал мне по этому поводу Яндекс:
«Для иллюстрирования Ваших сообщений необходимо использовать тег <enclosure> - элемент для иллюстраций, аудио и видеофайлов. Принимаются иллюстрации с шириной не менее 100 и не более 600 пикселов. Для изображений параметр type должен совпадать с тем, что отдаётся по указанному URL. пример: <enclosure url="http://www.rossiyskie-novosti.ru/2003/03/25/yandex.jpg" type="image/jpeg"/>» Насколько я понял, прописать это дело нужно в файле rss.php скорее всего вот в этом месте: $tpl->template = <<<XML <item> <title>{title}</title> <link>{rsslink}</link> <description>{short-story}</description> <category>{category}</category> <author>{rssauthor}</author> <pubDate>{rssdate}</pubDate> <yandex:full-text>{full-story}</yandex:full-text> </item> XML; Но как это сделать??? |
добавь тэг <enclosure>{img}</enclosure>
только в этом случае в {img} нужно будет отдать картинку отдельно. В ДЛЕ нет такой штатной возможности, прийдеться добавлять $tpl->set('{img}',$img); где $img - зарание сформированный урл на картинку, кго можно получить например разобрав short-story в поиске первого тэга <img src="">, или еще проще - взять из таблицы files первую картинку для новости. В общем вопрос решаемый. |
lay, спасибо!
Цитата:
Я пробовал разобраться, как это реализовано во встроенном в DLE полном варианте RSS, но не разобрался... |
Подробно разбираться времени нет, но примерный путь покажу:
1. В rss.php в шаблон отвечающий за экспорт на яндекс, вставляете <enclosure>{rssimg}</enclosure> 2. В show_short.php, в блоке if ($view_template == "rss") {} определяете тэг {rssimg} $tpl->set('{rssauthor}', $rss_img); но перед этим формируете переменную $rss_img например так: $news_id=$row['id'];//забираем номер новости в переменную $rss_img_row=$db->super_query("SELECT images FROM ".PREFIX."_images WHERE news_id='$news_id');//получаем перечень всех картинок загруженных для новости $rss_img_arr=explode("|||",$rss_img_row['images']);//разбиваем по разделителю ||| $rss_img=$rss_img_arr[0];//Выбираем первую картинку из загруженных ([1] - соотв. 2-я, и т.д.) Теперь в $rss_img лежит имя файла картинки на сервере, добавляем к нему урл, включая путь до папки в которой он храниться. Смысл такой, в реализации могут быть косяки, писал на коленке. |
lay, спасибо! Попробую...
|
Еще вопрос в тему настройки RSS...
Как сделать, чтобы в RSS поступали новости только из избранных категорий? |
способ предложенный не работает
|
апну темку ... $rss_img_arr=explode("|||" - тут ошибку дает ... в версии 9.5 .. впринципе все реализовано кроме картинок. Спасибо заранее
|
Апну тему. Помогите с решением проблемы. Отблагадарю денежкой. Имеется в наличии DLE 10.4. Картинка которую надо поставить в теги <enclosure>{img}</enclosure> первая картинка из полной новости. Заранее спасибо!!!!
|
Часовой пояс GMT +3, время: 03:20. |
Работает на vBulletin® версия 3.8.7.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
SAPE.RU — система купли-продажи ссылок с главных и внутренних страниц сайтов.