Blog Sections Open

Making RSS Feeds Use Absolute URLs for Yandex Turbo Pages

A feed-output note for Evolution CMS projects where Yandex Turbo pages reject relative links and require fully qualified absolute URLs in RSS content.

Yandex Turbo Pages are strict about feed content. Relative URLs that are perfectly acceptable in a normal site template may be rejected or ignored inside the Turbo feed. If your RSS feed is built with DocLister, you need to normalize links before the XML is generated.

The core issue

Article content often contains links and images like /assets/image.jpg or /news/post. Turbo expects full absolute URLs such as https://example.com/assets/image.jpg.

What to do

  • prepare feed content separately from the normal page output
  • replace relative paths with absolute ones before rendering the RSS item
  • treat links and image sources separately if your markup is mixed
<?php
$base = 'https://example.com';
$content = preg_replace('~href="/(?!/)~', 'href="' . $base . '/', $content);
$content = preg_replace('~src="/(?!/)~', 'src="' . $base . '/', $content);
?>

Why a feed-specific layer helps

You usually do not want to rewrite every stored article manually just for one export channel. A dedicated RSS preparation step keeps your site content clean while making the Turbo feed valid.

Newer post

Preventing Relative Links in Chunks from Turning into Absolute URLs

Why relative links inside chunk output can become absolute in Evolution CMS and how to keep frontend markup predictable.

Older post

Fixing ?q= Duplicate URLs in Evolution CMS

How to eliminate duplicate ?q= and index.php?q= URLs in Evolution CMS, keep friendly URLs canonical, and avoid avoidable SEO duplication.