PHPackages                             private-it/yandex-turbo-pages-constructor - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. private-it/yandex-turbo-pages-constructor

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

private-it/yandex-turbo-pages-constructor
=========================================

RSS Feed constructor for Yandex turbo pages

2162PHP

Since Jan 17Pushed 8y ago2 watchersCompare

[ Source](https://github.com/private-it/yandex-turbo-pages-constructor)[ Packagist](https://packagist.org/packages/private-it/yandex-turbo-pages-constructor)[ RSS](/packages/private-it-yandex-turbo-pages-constructor/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependenciesVersions (1)Used By (0)

yandex-turbo-pages-constructor
==============================

[](#yandex-turbo-pages-constructor)

RSS Feed constructor for Yandex turbo pages

Installation
============

[](#installation)

```
composer require private-it/yandex-turbo-pages-constructor:dev-master
```

Usage
=====

[](#usage)

```
include realpath(__DIR__ . '/vendor/autoload.php');

use \PrivateIT\Yandex\rss\Root;
use \PrivateIT\Yandex\rss\Root\Channel;
use \PrivateIT\Yandex\rss\Root\Channel\Item;
use \PrivateIT\Yandex\rss\Root\Channel\Item\RelatedYandex;
use \PrivateIT\Yandex\rss\Root\Channel\Item\ContentTurbo;
use \PrivateIT\Yandex\rss\Root\Channel\Item\Content\Menu;
use \PrivateIT\Yandex\rss\Root\Channel\Item\Content\Header;
use \PrivateIT\Yandex\rss\Root\Channel\Item\Content\Image;
use \PrivateIT\Yandex\rss\Root\Channel\Item\Content\ImageGallery;
use \PrivateIT\Yandex\rss\Root\Channel\Item\Content\Share;

$posts = [
    [
        'url'         => 'https://lot-of-travels.ru/places?test&page=10',
        'name'        => 'Интересные места Алтая & Монголии',
        'created_at'  => date('Y-m-d H:i:s'),
        'author'      => 'Admin of "lot-of-travels.ru"',
        'preview'     => 'https://lot-of-travels.ru/storage/2018/01/01/d0df6be87c6f953d1395865b2d646caef51eb870_medium.jpeg',
        'body'        => 'Туры на > Алтай и в Монголию!',
        'picture'     => 'https://lot-of-travels.ru/storage/2018/01/01/cf24f2943a3ef1ab22cb4bc0e36d0a1667b6c12f_medium.jpeg',
        'attachments' => [
            ['url' => 'https://lot-of-travels.ru/storage/2018/01/08/faddb42ed3d026567f4b6ca94b66d252e3d25fe4.jpg'],
            ['url' => 'https://lot-of-travels.ru/storage/2018/01/01/32facf0864a27c65069e612fd040647ba2fa4fdd.jpg'],
            ['url' => 'https://lot-of-travels.ru/storage/2018/01/08/faddb42ed3d026567f4b6ca94b66d252e3d25fe4.jpg'],
            ['url' => 'https://lot-of-travels.ru/storage/2018/01/01/32facf0864a27c65069e612fd040647ba2fa4fdd.jpg'],
        ],
    ],
];

$rss = Root::make()
    ->children(
        Channel::make()
            ->language('ru')
            ->link('https://lot-of-travels.ru/')
            ->title('A lot of Travels Много путешествий здесь')
            ->description('Портал о путешествиях в такие места как Алтай, Монголия')
            ->children(
                array_map(
                    function ($post) {
                        return Item::make()
                            ->turbo(true)
                            ->link($post['url'])
                            ->source($post['url'])
                            ->topic($post['name'])
                            ->pubDate($post['created_at'])
                            ->author($post['author'])
                            ->children([
                                ContentTurbo::make()
                                    ->children(
                                        [
                                            Menu::make()
                                                ->items([
                                                    [
                                                        'url'  => '/',
                                                        'text' => 'Главная',
                                                    ],
                                                ]),
                                            Header::make()
                                                ->h1('Header.h1')
                                                ->img('Header.picture'),
                                            Root\Simple\Tag::html($post['body'] . 'HTML.body'),
                                            Image::make()
                                                ->src('Image.src')
                                                ->title('Image.title'),
                                            ImageGallery::make()
                                                ->header('ImageGallery.header')
                                                ->images(
                                                    array_map(
                                                        function ($image) {
                                                            return $image['url'];
                                                        },
                                                        $post['attachments']
                                                    )
                                                ),
                                            Share::make()
                                                ->make()
                                                ->vkontakte()
                                                ->facebook()
                                                ->telegram()
                                                ->odnoklassniki(),
                                        ]
                                    ),
                                RelatedYandex::make()
                                    ->type('infinity')
                                    ->links([
                                        [
                                            'text' => 'Текст ссылки',
                                            'url'  => 'https://example.com/?page=2',
                                        ],
                                    ]),
                            ]);
                    },
                    $posts
                )
            )
    );

print $rss->toXML();
```

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/18c4519b58d8c087048d75058e947d0ece3b60eb465ecd1792693fe1b0e906be?d=identicon)[private-it](/maintainers/private-it)

---

Top Contributors

[![Rendol](https://avatars.githubusercontent.com/u/2122240?v=4)](https://github.com/Rendol "Rendol (2 commits)")

### Embed Badge

![Health badge](/badges/private-it-yandex-turbo-pages-constructor/health.svg)

```
[![Health](https://phpackages.com/badges/private-it-yandex-turbo-pages-constructor/health.svg)](https://phpackages.com/packages/private-it-yandex-turbo-pages-constructor)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
