Comment ajouter des annonces à la fin de RSS sur wordpress?
Question
J'ai ajouté une fonction à functions.php sur mon thème.
function insertAds($content) {
$content = $content.' add goes here';
return $content;}
add_filter('the_content_feed', 'insertAds');
add_filter('the_excerpt_rss', 'insertAds');
Le problème est que je vais avoir l'ajout affiché sous chaque contenu, et non à la fin de la page rss. Comment puis-je résoudre ce problème?
La solution
WordPress ne propose pas un crochet pour ce que vous voulez faire. Dans quel élément situeriez-vous l'annonce?
Comme d'habitude RSS-Feed-2 a des métadonnées et des éléments (le contenu). Il n'y a pas d'autre élément.
Voir wp-includes/feed-rss2.php
pour plus de détails.
Mise à jour
Régler le code suivant à vos besoins et placer le fichier dans votre répertoire de plug-in:
<?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');
Est-ce l'effet que vous aviez en tête? Comme vous pouvez le voir, l'ajout de contenu est assez facile. :)