add_feed()
Додає новий тип RSS стрічки на кшталт /atom1/ .
Функція додає правила перезапису (ЧПУ) та реєструє хук на основі зазначеної функції фіда.
Хуків немає.
Повертає
Строку
. Ім’я хука створеного фіда.
Використання
add_feed($feedname, $callable);
-
$feedname
(string) - Ім’я (склад) нової RSS стрічки.
-
$callable
(callable) - Колбек, що виводить розмітку фіда.
Приклади
#1 Створення власної RSS-стрічки
<?php add_action( 'init', function(){ add_feed( 'my_feed', 'my_feed_markup'); }); function my_feed_markup(){ do_action( 'my_before_feed'); header( 'Content-Type: ' . feed_content_type( 'rss' ) . '; charset=' . get_option( 'blog_charset' ), true ); status_header(200); echo '<?xml version="1.0" encoding="UTF-8"?>'; ?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" > <channel> <title>example.com</title> <link> http://example.com/my_feed</link> <description>My new feed</description> <lastBuildDate>Tue, 28 Feb 2017 13:00:41 +0000</lastBuildDate> <language>ru-RU</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <item> <title>Hello world text</title> <pubDate>Tue, 28 Feb 2017 13:00:41 +0000</pubDate> <description><![CDATA[<p></p> Hello World</a> ]]></description> </item> </channel> </rss> <?php exit; }
нотатки
- Global. WP_Rewrite. $wp_rewrite WordPress rewrite component.
список змін
З версії 2.1.0 | Введено. |
Код add_feed() add feed WP 6.0.2
function add_feed( $feedname, $function ) { global $wp_rewrite; if ( ! in_array( $feedname, $wp_rewrite->feeds, true ) ) { $wp_rewrite->feeds[] = $feedname; } $hook = 'do_feed_'. $feedname; // Remove default function hook. remove_action($hook, $hook); add_action($hook, $function, 10, 2); return $hook; }