Как добавить рекламу в конец RSS на WordPress?
Вопрос
Я добавил функцию в файл function.php своей темы.
function insertAds($content) {
$content = $content.' add goes here';
return $content;}
add_filter('the_content_feed', 'insertAds');
add_filter('the_excerpt_rss', 'insertAds');
Проблема в том, что у меня добавление отображается под каждым содержимым, а не в конце RSS-страницы.Как я могу это исправить?
Решение
WordPress не предлагает крючок для того, что вы хотите сделать.В каком элементе вы бы разместили рекламу?
Обычный RSS-2-канал имеет метаданные и элементы (контент).Другого элемента нет.Видеть wp-includes/feed-rss2.php
для получения подробной информации.
Обновлять
Настройте следующий код в соответствии со своими потребностями и поместите файл в каталог вашего плагина:
<?php
/*
Plugin Name: Last man adding
Description: Adds content to the last entry of your feed.
Version: 0.1
Author: Thomas Scholz
Author URI: http://toscho.de
Created: 31.03.2010
*/
if ( ! function_exists('ad_feed_content') )
{
function ad_feed_content($content)
{
static $counter = 1;
// We only need to check this once.
static $max = FALSE;
if ( ! $max )
{
$max = get_option('posts_per_rss');
}
if ( $counter < $max )
{
$counter++;
return $content;
}
return $content . <<<MY_ADDITIONAL_CONTENT
<hr />
<p>Place your ad here. Make sure, your feed is still
<a href="http://beta.feedvalidator.org/">validating</a></p>
MY_ADDITIONAL_CONTENT;
}
}
add_filter('the_content_feed', 'ad_feed_content');
add_filter('the_excerpt_rss', 'ad_feed_content');
Это тот эффект, который вы имели в виду?Как видите, добавить контент довольно просто.:)