Алексей Баранов

Обо мне

Cover Image for Автопостинг в VK через RSS feed

Автопостинг в VK через RSS feed

Заметил в настройках сообщества в VK интересную настройку Импорт RSS.

А так как я теперь кое-что знаю про RSS, то я сразу же решил её опробовать.

То как VK обрабатывает фид - тайна за семью печатями. В документации я не нашёл никаких подробностей. Там даже описания этой функции нет.

Настройка просто есть, кому надо - тот разберётся.

Мне надо, я начал разбираться 🙂

Тестируем настройку

Итак, выставляем настройку следующим образом:

Настройка импорта RSS

Теперь выкладываем фид и ждём.

Через несколько минут получаем результат!

Первый результат

На этом можно было бы и остановиться, но...

Что там было про "Публиковать в виде статьи"?

Тестируем настройку "Публиковать в виде статьи"

Меняем настройки:

Настройка импорта RSS

И получаем следующий результат:

Результат со статьёй

При этом если кликнуть на статью, то она пустая внутри:

Пустая статья

Добавляем содержимое статьи

Статья пустая внутри, потому что я не пишу в RSS фид содержимое статьи.

Это легко исправить. Добавляем в код для генерации фида содержимое:

allPosts.forEach((post) => {
  console.log(`Adding rss item for post ${post.slug}`);
  feed.addItem({
    // ...
    content: post.content,
  });
});

Снова проверяем результат:

Результат со статьёй

Кажется что-то пошло не так. А что с содержимым статьи?

Содержимое статьи

Становится очевидно что причина в том, что markdown не поддерживается

Значит попробуем добавлять в фид HTML разметку.

Снова меняем код генерации фида:

for (const post of allPosts) {
  console.log(`Adding VK item for post ${post.slug}`);

  const content = await markdownToHtml(post.content);

  feed.addItem({
    //..
    content: content,
  });
}

Проверяем результат:

Результат со статьёй

А что с содержимым статьи?

Содержимое статьи

Видимо VK не поддерживает якорные ссылки...

А что ещё он не поддерживает?

Добавляем ещё больше разного содержимого в статью:

  • Изображения с относительным путём;
  • Изображения с абсолютным путём;
  • Блоки кода;

Результат:

Содержимое статьи

Выводы:

  • Изображения с относительным путём - работают;
  • Изображения с абсолютным путём - работают;
  • Блоки кода - не работают;

С этим можно жить 🙂

На этом всё, примеры автопостинга, вы всегда можете посмотреть в моём сообществе во Вконтакте! 🎉

А ещё подписывайтесь на мой YouTube канал, Telegram.

Поделиться

Вам может быть интересно:

Cover Image for Добавляем RSS-фид к статическому Next.js приложению

Добавляем RSS-фид к статическому Next.js приложению

Сам я не пользуюсь RSS фидами, но так как формат ещё жив, решил добавить фид и для этого блога...

Cover Image for Hello, VK!

Hello, VK!

Запустил своё сообщество в VK...