XML Feed Views

20 марта 2023 в 16:06
Аватар пользователя Marin Marin 0 15

Всем привет!
Кто то пользовался данным модулем для создания фида для яндекс-маркета?
Решение хорошее на первый взгляд, но вот свои поля типо:

<price>{{ field_cena }}</price>
<title>{{ title }}</title>
....

воткнуть можно только в Body, а вот в head И footer этого сделать не получается....так же как и вывести дату <yml_catalog date="Y-m-d">

Если пользовались и решили напишите плиз как. Заранее спасибо!

Комментарии

Сейчас использую views для подобных задач. Не успевают часто авторы модулей за развитием различных спецификаций.
Вывожу поля. Переписываю их вывод для обрамления нужными тегами.
Определяю отдельную тему оформления для выврда xml/rss и т.п. страниц, где редактирую html.html.twig, page.html.twig и прочее.

Хотите модуль писать - пожалуйста.

20 марта 2023 в 16:59

Я не спорю, что для своих нужд - писать свой модуль. Но он есть и вполне себе рабочий....видимо нужно просто допилить, но я не программист и многому только учусь...
В любом случае спасибо за ваш ответ.

20 марта 2023 в 17:15

Есть понимание, что стоит больше уделить времени на изучение того же view. К сожалению пока не могу разобраться как сделать фид для маркета только вьюхой....буду разбираться, может быть когда-нибудь).

22 марта 2023 в 14:40

VasyOK wrote: Вы не умеете работать с views?

Умею настолько, насколько было необходимо....но как сделать вьюхой xml файл, а точнее вывести содержимое выше offers не имею представления (с полями всё ясно).

23 марта 2023 в 12:03

Можете вывести необходимые поля? Это уже очень хорошо.

1. Дебаг умеете включать, чтоб смотреть что с какого twig файла выводится и переименовывать эти файлы для своих целей?

Доки:
https://drupal.ru/docs/chastye-voprosy/vklyuchit-otladku-twig-shablonov
https://youtu.be/Ei2UWj5qwJc?t=272 - дал ссылку на время но можете посмотреть все.

2. Задать свою тему оформления можете?
https://meant4.com/blog/create-custom-drupal-theme/
https://www.drupal.org/docs/develop/theming-drupal - довольно сложно написали

просто можно посмотреть что в корневых файлах тем Друпала.

23 марта 2023 в 17:18

VasyOK wrote:1. Дебаг умеете включать

Вот об этом я думала, посмотрю, спасибо.
2. Шаблон у меня свой на базе bootstrap всё с 0 верстала + пару новых блоков добавила... т.е. по сути используются twig основной темы, не было необходимости что-то переписывать.
В шаблоны вьюхи вносила нужные изменения конечно путем копирования шаблона из основной темы, далее переименовать в свою, далее внести необходимые изменения... но сейчас немного не тот случай...знаний не хватает Sad

23 марта 2023 в 17:30

Супер. А вот теперь создайте свою тему без Бутстрапа. Без CSS и JS.
И для xml страниц используйте эту тему например через модуль.theme_switcher

И положите в эту тему (возможно не только):
html.html.twig
container.html.twig
page.html.twig
region.html.twig
views-view-field.html.twig
views-view.html.twig
views-view-unformatted.html.twig

23 марта 2023 в 18:15

VasyOK, спасибо вам за участие), но мне это не поможет в решении задачи....сложно именно с xml. Так то всё понятно с шаблонами. Smile
Буду мучаться дальше...

27 марта 2023 в 17:25

"сложно именно с xml" - а что сложного то?
Да я понимаю мои методы сложноваты. Но допрогрмирововать модуль куда сложнее.

28 марта 2023 в 14:00

Доброго!
Есть вот такое решение (пример для друпал 7), но оно кривоватое и костыльное, но на views
https://pro-self.ru/blog/vygruzka-tovarov-dlya-yandeksmarketa-yml

Есть для д9/10 посвежее - https://www.drupal.org/project/yandex_yml
Приоритетно разобраться с ним.

28 марта 2023 в 7:10

VasyOK wrote:
"сложно именно с xml" - а что сложного то?
Да я понимаю мои методы сложноваты. Но допрогрмирововать модуль куда сложнее.

Потому что на выходе, даже с пустым своим шаблоном это та же Html страница... повторюсь я не программист (даже чуть чуть).

29 марта 2023 в 11:55

Так html.html.twig надо привести к виду:

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:media="http://search.yahoo.com/mrss/"
    xmlns:atom="http://www.w3.org/2005/Atom"
    xmlns:georss="http://www.georss.org/georss">
    <channel>
        <title>Название сайта</title>
        <link>https://sitename.ru</link>
        <language>ru</language>        
        {{ page }}
    </channel>
</rss>
29 марта 2023 в 16:19