Astuce WordPress : mettre les images dans le flux RSS

Voici un code très simple qui vous permettra d’insérer votre image à la une dans votre flux RSS…

…de manière à ce que, lorsque vous relayez votre flux sur un réseau social comme Facebook par exemple, l’image puisse accompagner le titre et la présentation de votre post.

Pour ce faire, rendez-vous dans votre fichier functions.php pour y ajouter ces lignes de code :

[icon style= »chain » color= »red »]functions.php[/icon]

  • Si vous souhaitez utiliser uniquement la fonction native de wordpress permettant de mettre des images à la une, voici le code qu’il vous faut :

[code]
function imageRSS($content) {
global $post;
if ( has_post_thumbnail( $post->ID ) ){
$content =  » . get_the_post_thumbnail( $post->ID, ‘thumbnail’, array( ‘style’ => ‘float: right; margin:0 0 10px 10px;’ ) ) .  » . $content;
}
return $content;
}

add_filter(‘the_excerpt_rss’, ‘imageRSS’);
add_filter(‘the_content_feed’, ‘imageRSS’);
[/code]

 

  • Si en plus de la fonction native des featured images de WordPress, certains de vos articles n’ont pas d’images à la une, le plugin Get the image permettra de scanner vos articles à la recherche de la moindre image à utiliser comme image à la une. Je vous suggère alors ce code qui, s’il n’y a pas d’image à la une, fera bosser le plugin Get the image pour en trouver une éventuellement insérée dans votre article :

[code]
function imageRSS($content) {
global $post;
if ( has_post_thumbnail( $post->ID ) ){
$content =  » . get_the_post_thumbnail( $post->ID, ‘thumbnail’, array( ‘style’ => ‘float: right; margin:0 0 10px 10px;’ ) ) .  » . $content;
}
else {
$content =  » . get_the_image(array(‘width’ => 150, ‘image_scan’ => true , ‘image_class’ =>  », ‘meta_key’ => array( ‘Thumbnail’, ‘thumbnail’ ))) .  » . $content;
}
return $content;
}

add_filter(‘the_excerpt_rss’, ‘imageRSS’);
add_filter(‘the_content_feed’, ‘imageRSS’);
[/code]

 

  • Enfin, vous pouvez utiliser ce code si vous souhaitez faire checker s’il y a une image attachée à l’article dans le cas où il n’y aurait pas de featured images:

[code]

function show_image_feed($content) {

global $post;
$args = array(
‘post_type’ => ‘attachment’,
‘numberposts’ => 1,
‘post_status’ => null,
‘post_parent’ => $post->ID
);

$attachment = get_posts($args);

if ($attachment) {

$content = ‘

‘ . $content . ‘
ID) .' »>Lire la suite’; } return $content; } add_filter(‘the_excerpt_rss’, ‘show_image_feed’);

[/code]

4 réponses

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.