Как создать пользовательскую RSS-ленту в WordPress

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

WordPress поставляется со встроенными RSS-каналами по умолчанию. Вы можете настроить каналы по умолчанию, добавив пользовательский контент в ваши RSS-каналы, или даже добавить миниатюры постов в ваши RSS-каналы. Стандартные RSS и Atom каналы достаточны для большинства пользователей, но вы можете захотеть создать собственный RSS канал для доставки определенного типа контента. В этой статье мы покажем вам, как создавать пользовательские RSS-каналы в WordPress.

Обратите внимание, что этот учебник не предназначен для начинающих пользователей WordPress. Если вы новичок и все еще хотите попробовать, то сделайте это на локальной установке.

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

Сказав это, давайте приступим к созданию вашей первой пользовательской RSS-ленты в WordPress.

Предположим, что вы хотите создать новый RSS-канал, который будет отображать только следующую информацию:

  • Заголовок
  • Ссылка
  • Опубликованная дата
  • Автор
  • Выдержка

Первое, что вам нужно сделать, это создать новый RSS-канал в функциях вашей темы.php-файле или в плагине для конкретного сайта:

add_action(‘init’, ‘customRSS’); function customRSS()

Приведенный выше код запускает функцию customRSS, которая добавляет фид. Функция add_feed имеет два аргумента, имя фида и функцию обратного вызова. Имя фида составит ваш новый фид url yourdomain.com/feed/feedname и функция обратного вызова будет вызвана для фактического создания ленты. Запишите имя фида, так как оно понадобится вам позже.

После инициализации фида вам нужно будет создать функцию обратного вызова для создания требуемого фида, используя следующий код в функциях вашей темы.php файл или в плагине для конкретного сайта:

function customRSSFunc()

Код выше использует функцию get_template_part для ссылки на отдельный файл шаблона, однако вы также можете поместить код RSS непосредственно в функцию. Используя get_template_part, мы можем сохранить функциональность отдельно от макета. Функция get_template_part имеет два аргумента, slug и name, которые будут искать файл шаблона с именем в следующем формате, начиная с файла сверху (если она не найдет первый, то перейдет ко второму, и так далее):

  1. wp-content/themes/child/rss-feedname.php
  2. wp-content/themes/parent/rss-feedname.php
  3. wp-content/themes/child/rss.php
  4. wp-content/themes/parent/rss.php

Для целей этого руководства лучше всего установить slug на тип создаваемой ленты (в данном случае: rss), а имя — на имя ленты, настроенное ранее.

После того, как вы указали WordPress искать шаблон фида, вам нужно будет создать его. Приведенный ниже код создаст макет для фида с информацией, которую мы перечислили ранее. Сохраните этот файл в папке вашей темы под именем slug-name.php файл шаблона, настроенный в функции get_template_part.

'; ?> >  - Feed " rel="self" type="application/rss+xml" />              <description><![CDATA[<?php the_excerpt_rss() ?>
</p>
<!-- toc empty -->    </div><!-- .entry-content -->

</article>






    <div class="rating-box">
        <div class="rating-box__header">Оцените статью</div>
		<div class="wp-star-rating js-star-rating star-rating--score-0" data-post-id="1280" data-rating-count="0" data-rating-sum="0" data-rating-value="0"><span class="star-rating-item js-star-rating-item" data-score="1"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span><span class="star-rating-item js-star-rating-item" data-score="2"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span><span class="star-rating-item js-star-rating-item" data-score="3"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span><span class="star-rating-item js-star-rating-item" data-score="4"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span><span class="star-rating-item js-star-rating-item" data-score="5"><svg aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" class="i-ico"><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" class="ico-star"></path></svg></span></div>    </div>


    <div class="entry-social">
		
        		<div class="social-buttons"><span class="social-button social-button--vkontakte" data-social="vkontakte" data-image=""></span><span class="social-button social-button--facebook" data-social="facebook"></span><span class="social-button social-button--telegram" data-social="telegram"></span><span class="social-button social-button--odnoklassniki" data-social="odnoklassniki"></span><span class="social-button social-button--twitter" data-social="twitter"></span><span class="social-button social-button--sms" data-social="sms"></span><span class="social-button social-button--whatsapp" data-social="whatsapp"></span></div>            </div>





<meta itemscope itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" itemid="https://studiowebd.ru/kak-sozdat-polzovatelskuyu-rss-lentu-v-wordpress/" content="Как создать пользовательскую RSS-ленту в WordPress">
    <meta itemprop="dateModified" content="2022-04-06">
<div itemprop="publisher" itemscope itemtype="https://schema.org/Organization" style="display: none;"><meta itemprop="name" content="StudioWebd.ru"><meta itemprop="telephone" content="StudioWebd.ru"><meta itemprop="address" content="https://studiowebd.ru"></div>
<div id="comments" class="comments-area">

    	<div id="respond" class="comment-respond">
		<div id="reply-title" class="comment-reply-title">Добавить комментарий <small><a rel="nofollow" id="cancel-comment-reply-link" href="/kak-sozdat-polzovatelskuyu-rss-lentu-v-wordpress/#respond" style="display:none;">Отменить ответ</a></small></div><form action="https://studiowebd.ru/wp-comments-post.php" method="post" id="commentform" class="comment-form" novalidate><p class="comment-form-author"><label class="screen-reader-text" for="author">Имя <span class="required">*</span></label> <input id="author" name="author" type="text" value="" size="30" maxlength="245"  required='required' placeholder="Имя" /></p>
<p class="comment-form-email"><label class="screen-reader-text" for="email">Email <span class="required">*</span></label> <input id="email" name="email" type="email" value="" size="30" maxlength="100"  required='required' placeholder="Email" /></p>
<p class="comment-form-comment"><label class="screen-reader-text" for="comment">Комментарий</label> <textarea id="comment" name="comment" cols="45" rows="8" maxlength="65525" required="required" placeholder="Комментарий" ></textarea></p><p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes" /> <label for="wp-comment-cookies-consent">Сохранить моё имя, email и адрес сайта в этом браузере для последующих моих комментариев.</label></p>
<p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="Отправить комментарий" /> <input type='hidden' name='comment_post_ID' value='1280' id='comment_post_ID' />
<input type='hidden' name='comment_parent' id='comment_parent' value='0' />
</p></form>	</div><!-- #respond -->
	

    
</div><!-- #comments -->

            </main><!-- #main -->
        </div><!-- #primary -->

        
<aside id="secondary" class="widget-area" itemscope itemtype="http://schema.org/WPSideBar">
    <div class="sticky-sidebar js-sticky-sidebar">

        
        <div id="block-2" class="widget widget_block widget_search"><form role="search" method="get" action="https://studiowebd.ru/" class="wp-block-search__button-outside wp-block-search__text-button wp-block-search"><label for="wp-block-search__input-1" class="wp-block-search__label" >Поиск</label><div class="wp-block-search__inside-wrapper " ><input type="search" id="wp-block-search__input-1" class="wp-block-search__input wp-block-search__input" name="s" value="" placeholder=""  required /><button type="submit" class="wp-block-search__button wp-element-button"  >Поиск</button></div></form></div><div id="block-3" class="widget widget_block"><div class="is-layout-flow wp-block-group"><div class="wp-block-group__inner-container"><h2>Свежие записи</h2><ul class="wp-block-latest-posts__list wp-block-latest-posts"><li><a class="wp-block-latest-posts__post-title" href="https://studiowebd.ru/9-luchshih-servisov-konferents-svyazi-2023-goda-v-sravnenii-s-besplatnymi-optsiyami/">9 лучших сервисов конференц-связи 2023 года в сравнении (с бесплатными опциями)</a></li>
<li><a class="wp-block-latest-posts__post-title" href="https://studiowebd.ru/chto-takoe-bekend-v-razrabotke-obyasnenie-na-prostom-angliyskom/">Что такое бэкенд в разработке</a></li>
<li><a class="wp-block-latest-posts__post-title" href="https://studiowebd.ru/kak-razreshit-polzovatelyam-stavit-layk-ili-ne-nravitsya-v-kommentariyah-wordpress/">Как разрешить пользователям ставить «лайк» или «не нравится» в комментариях WordPress</a></li>
<li><a class="wp-block-latest-posts__post-title" href="https://studiowebd.ru/kak-izmenit-url-slog-poiska-po-umolchaniyu-v-wordpress/">Как изменить URL-слог поиска по умолчанию в WordPress</a></li>
<li><a class="wp-block-latest-posts__post-title" href="https://studiowebd.ru/16-luchshih-plaginov-dlya-uluchsheniya-kommentariev-wordpress-2023/">16 лучших плагинов для улучшения комментариев WordPress (2023)</a></li>
</ul></div></div></div>
        
    </div>
</aside><!-- #secondary -->

    
    <div id="related-posts" class="related-posts fixed"><div class="related-posts__header">Вам также может понравиться</div><div class="post-cards post-cards--vertical">
<div class="post-card post-card--related post-card--thumbnail-no">
    <div class="post-card__title"><a href="https://studiowebd.ru/9-luchshih-servisov-konferents-svyazi-2023-goda-v-sravnenii-s-besplatnymi-optsiyami/">9 лучших сервисов конференц-связи 2023 года в сравнении (с бесплатными опциями)</a></div><div class="post-card__description">Вы ищете лучшую службу онлайн конференц-связи для вашего бизнеса?</div><div class="post-card__meta"><span class="post-card__comments">0</span><span class="post-card__views">45</span></div>
</div>

<div class="post-card post-card--related post-card--thumbnail-no">
    <div class="post-card__title"><a href="https://studiowebd.ru/chto-takoe-bekend-v-razrabotke-obyasnenie-na-prostom-angliyskom/">Что такое бэкенд в разработке</a></div><div class="post-card__description">В WordPress бэкэнд - это административная часть сайта</div><div class="post-card__meta"><span class="post-card__comments">0</span><span class="post-card__views">37</span></div>
</div>

<div class="post-card post-card--related post-card--thumbnail-no">
    <div class="post-card__title"><a href="https://studiowebd.ru/kak-razreshit-polzovatelyam-stavit-layk-ili-ne-nravitsya-v-kommentariyah-wordpress/">Как разрешить пользователям ставить «лайк» или «не нравится» в комментариях WordPress</a></div><div class="post-card__description">Вы хотите добавить функцию "нравится" или "не нравится"</div><div class="post-card__meta"><span class="post-card__comments">0</span><span class="post-card__views">32</span></div>
</div>

<div class="post-card post-card--related post-card--thumbnail-no">
    <div class="post-card__title"><a href="https://studiowebd.ru/kak-izmenit-url-slog-poiska-po-umolchaniyu-v-wordpress/">Как изменить URL-слог поиска по умолчанию в WordPress</a></div><div class="post-card__description">Хотите ли вы изменить стандартный URL-слог поиска в</div><div class="post-card__meta"><span class="post-card__comments">0</span><span class="post-card__views">31</span></div>
</div>

<div class="post-card post-card--related post-card--thumbnail-no">
    <div class="post-card__title"><a href="https://studiowebd.ru/16-luchshih-plaginov-dlya-uluchsheniya-kommentariev-wordpress-2023/">16 лучших плагинов для улучшения комментариев WordPress (2023)</a></div><div class="post-card__description">Вы ищете лучшие плагины для улучшения комментариев</div><div class="post-card__meta"><span class="post-card__comments">0</span><span class="post-card__views">31</span></div>
</div>

<div class="post-card post-card--related post-card--thumbnail-no">
    <div class="post-card__title"><a href="https://studiowebd.ru/pushengage-luchshee-programmnoe-obespechenie-dlya-push-uvedomleniy-v-internete/">PushEngage — лучшее программное обеспечение для Push-уведомлений в Интернете</a></div><div class="post-card__description">PushEngage - это мощный инструмент веб-уведомлений</div><div class="post-card__meta"><span class="post-card__comments">0</span><span class="post-card__views">30</span></div>
</div>

<div class="post-card post-card--related post-card--thumbnail-no">
    <div class="post-card__title"><a href="https://studiowebd.ru/22-luchshie-temy-wordpress-dlya-startapov-2023/">22 Лучшие темы WordPress для стартапов (2023)</a></div><div class="post-card__description">Вы ищете темы WordPress для стартапа для вашего сайта?</div><div class="post-card__meta"><span class="post-card__comments">0</span><span class="post-card__views">26</span></div>
</div>

<div class="post-card post-card--related post-card--thumbnail-no">
    <div class="post-card__title"><a href="https://studiowebd.ru/kak-otobrazit-kruglye-izobrazheniya-gravatara-v-wordpress/">Как отобразить круглые изображения граватара в WordPress</a></div><div class="post-card__description">Недавно мы показали вам, как стилизовать макет комментариев</div><div class="post-card__meta"><span class="post-card__comments">0</span><span class="post-card__views">30</span></div>
</div>
</div></div>

</div><!--.site-content-inner-->


</div><!--.site-content-->





<div class="site-footer-container ">

    

    <footer id="colophon" class="site-footer site-footer--style-gray full">
        <div class="site-footer-inner fixed">

            
            
<div class="footer-bottom">
    <div class="footer-info">
        © 2023 StudioWebd.ru    </div>

    </div>
        </div>
    </footer><!--.site-footer-->
</div>


    <button type="button" class="scrolltop js-scrolltop"></button>

</div><!-- #page -->

<script>var pseudo_links = document.querySelectorAll(".pseudo-clearfy-link");for (var i=0;i<pseudo_links.length;i++ ) { pseudo_links[i].addEventListener("click", function(e){   window.open( e.target.getAttribute("data-uri") ); }); }</script><script>document.addEventListener("copy", (event) => {var pagelink = "\nИсточник: https://studiowebd.ru/kak-sozdat-polzovatelskuyu-rss-lentu-v-wordpress";event.clipboardData.setData("text", document.getSelection() + pagelink);event.preventDefault();});</script><script  src='https://studiowebd.ru/wp-content/plugins/mihdan-lite-youtube-embed/assets/dist/js/frontend.js' id='mihdan-lite-youtube-embed-js'></script>
<script type='text/javascript' id='reboot-scripts-js-extra'>
/* <![CDATA[ */
var settings_array = {"rating_text_average":"\u0441\u0440\u0435\u0434\u043d\u0435\u0435","rating_text_from":"\u0438\u0437","lightbox_display":"1","sidebar_fixed":"1"};
var wps_ajax = {"url":"https:\/\/studiowebd.ru\/wp-admin\/admin-ajax.php","nonce":"7a1f523f20"};
/* ]]> */
</script>
<script  src='https://studiowebd.ru/wp-content/themes/reboot/assets/js/scripts.min.js' id='reboot-scripts-js'></script>
<script  src='https://studiowebd.ru/wp-includes/js/comment-reply.min.js' id='comment-reply-js'></script>
		<script id="kama_spamblock">
			(function(){

				const catch_submit = function( ev ){

					let sbmt = ev.target.closest( '#submit' );

					if( ! sbmt ){
						return;
					}

					let input = document.createElement( 'input' );
					let date = new Date();

					input.value = ''+ date.getUTCDate() + (date.getUTCMonth() + 1) + 'uniq9065';
					input.name = 'ksbn_code';
					input.type = 'hidden';

					sbmt.parentNode.insertBefore( input, sbmt );
				}

				document.addEventListener( 'mousedown', catch_submit );
				document.addEventListener( 'keypress', catch_submit );
			})()
		</script>
		


</body>
</html><!--
Performance optimized by Redis Object Cache. Learn more: https://wprediscache.com

Получено 1525 объектов (227 КБ) от Redis через PhpRedis (v5.3.7).
-->