it-swarm.com.de

Wie füge ich ein Bild oder ein benutzerdefiniertes Feld zum XML-Feed hinzu?

Ich habe bereits den RSS-Manager für Plugins ausprobiert. Sie fügen das Bild jedoch nur in das Attribut <description> des XML-Feeds ein.

Es gibt mindestens 2 Probleme damit:

  • In dem Blog, in dem der Feed abgerufen wird, wird der <description> auf ungefähr 300 Zeichen gekürzt, was in Ordnung ist.
  • Der Blog, der die Feed-Strips-HTML-Tags zieht. Ich muss sie entfernen, denn wenn sich ein Bild im Körper des Posts befindet, wird es angezeigt. Wenn sich also zu Beginn des Beitrags zwei Bilder befinden, werden diese angezeigt, und es wird auch das vorgestellte Bild angezeigt. Das img-Tag verschlingt außerdem Zeichen mit einer Zeichenbegrenzung von 300 Zeichen.

Ich muss also den RSS-XML-Feed mit dem hinzugefügten Attribut <featuredimage> oder <thumbnail> oder so ähnlich generieren. NICHT in <description> eingebettet.

Ich habe nach Plugins gesucht, kann aber keine finden, die dieses Problem lösen. Danke im Voraus.

2
leonel

Der RSS2-Feed wird in der wp-includes/feed-rss2.php-Datei generiert. In dieser Datei befindet sich ein Aktions-Hook mit dem Namen rss2_item. Mit diesem Aktions-Hook können Sie jedem Element in Ihrem Feed Tags hinzufügen.

Es gibt einen Codex-Artikel über rss2_item mit Beispielen, einschließlich dieses Artikels zum Hinzufügen eines <image> -Tags:

<?php
add_action('rss2_item', 'add_my_rss_node');

function add_my_rss_node() {
    global $post;
    if(has_post_thumbnail($post->ID)):
        $thumbnail = get_attachment_link(get_post_thumbnail_id($post->ID));
        echo("<image>{$thumbnail}</image>");
    endif;
}
?>
3
Ben Miller

Arbeitscode:

add_action('rss2_item', 'custom_thumbnail_tag');

function custom_thumbnail_tag() {

    global $post;
    if(has_post_thumbnail($post->ID)):
        $thumbnail_ID = get_post_thumbnail_id( $post->ID );
        $thumbnail = wp_get_attachment_image_src($thumbnail_ID, 'thumbnail');
        echo("<thumbnail>{$thumbnail['0']}</thumbnail>");
    endif;

}
2
Bhupen

Ich versuche das Gleiche zu tun. Ein paar Ressourcen, die ich bisher angesehen habe:

Erlernen Sie zunächst die gültige RSS-Syntax und -Struktur. RSS2.0-Tag-Syntax

Erstellen Sie eine versteckte Seite in Wordpress, um Ihr eigenes Layout zu erstellen und alle gewünschten Felder und Bilder aufzurufen. Yoast Benutzerdefinierter RSS Feed tut

0
reidelliott