Suchen Sie nach einer Möglichkeit, Kategorien aus dem RSS-Feed mit der functions.php-Datei Ihres Themes zu entfernen? Obwohl es wahrscheinlich ein Plugin dafür gibt, haben wir einen schnellen Code-Schnipsel erstellt, den Sie verwenden können, um Kategorien mit functions.php in WordPress aus dem RSS-Feed auszuschließen.
Anweisungen:
Sie müssen lediglich diesen Code zur functions.php-Datei Ihres Themes oder in ein websitespezifisches Plugin einfügen. Fügen Sie dann die IDs der Kategorien hinzu, die Sie ausschließen möchten, in Zeile 3 (derzeit auf 20, 21 und 22 eingestellt). Stellen Sie sicher, dass Sie ein Minus, „-“, vor der Kategorie-ID verwenden.
function exclude_cat_wps($query) {
if ($query->is_feed) {
$query->set('cat','-20,-21,-22');
}
return $query;
}
add_filter('pre_get_posts','exclude_cat_wps');
Hinweis: Wenn Sie zum ersten Mal Code-Schnipsel in WordPress hinzuf ilde{A}gen, lesen Sie bitte unseren Leitfaden, wie Sie Code-Schnipsel richtig in WordPress kopieren / einf ilde{A}gen, damit Sie Ihre Website nicht versehentlich besch ilde{A}digen.
Wenn Ihnen dieser Code-Schnipsel gefallen hat, ziehen Sie bitte in Betracht, unsere anderen Artikel auf der Website zu lesen, wie z. B.: So erstellen Sie eine WordPress-Mitgliederseite und 9 beste WordPress-Plugins für Anzeigenverwaltung zur Umsatzsteigerung.
Ich frage mich, ob Sie helfen können, obwohl ich vorher andere Anweisungen befolgt habe, bevor ich hier gelandet bin.
Ich habe meinen Blog kopiert, sodass er auf 2 verschiedenen Seiten meiner Website angezeigt wird. Auf Seite 182 möchte ich bestimmte Blog-Kategorien anzeigen. Auf Seite 195 möchte ich den Rest der Kategorien anzeigen.
Ich habe ein Child-Theme erstellt. Hier habe ich page.php kopiert (über den Dateimanager) und eine in „page-182.php“ und eine andere in „page-195.php“ umbenannt.
In jeder Seitendatei habe ich einen Code eingefügt, der die spezifischen Kategorien für jede Seite enthalten soll, und sie gespeichert.
Aber alle Kategorien werden immer noch auf beiden Seiten angezeigt, es hat sich also nichts geändert.
Was mache ich falsch?
Dies ist page-195.php, einschließlich des Codes:
$args = array(‘category__in’=>array( 90, 92, 91 ),);
// Die Abfrage
$the_query = new WP_Query( $args );
// Die Schleife
if ( $the_query->have_posts() ) {
echo ‘’;
while ( $the_query->have_posts() ) {
$the_query->the_post();
echo ‘’ . get_the_title() . ‘’;
echo ‘’ . get_the_content() . ‘’;
}
echo ‘’;
} else {
// keine Beiträge gefunden
}
/* Ursprüngliche Beitragsdaten wiederherstellen */
wp_reset_postdata();
—-dieser Teil ist nur der Code:
$args = array(‘category__in’=>array( 90, 92, 91 ),);
// Die Abfrage
$the_query = new WP_Query( $args );
// Die Schleife
if ( $the_query->have_posts() ) {
echo ‘’;
while ( $the_query->have_posts() ) {
$the_query->the_post();
echo ‘’ . get_the_title() . ‘’;
echo ‘’ . get_the_content() . ‘’;
}
echo ‘’;
} else {
// keine Beiträge gefunden
}
/* Ursprüngliche Beitragsdaten wiederherstellen */
wp_reset_postdata();
Ich hoffe, Sie können sehen, wo ich falsch liege. Ich bin neu und verstehe den Code nicht. Ich habe mich nur durch Google und YouTube geklickt.
Danke 🙂
Es scheint, dass der PHP-Code möglicherweise nicht richtig mit PHP-Tags umschlossen ist. Möglicherweise möchten Sie auch diesen Schnipsel überprüfen: https://www.isitwp.com/list-recent-posts-from-a-single-category/
Danke
Dauert dies einige Zeit, um sich zu aktualisieren? Ich habe diese Anweisungen genau befolgt, aber die Beiträge der Kategorie werden immer noch im RSS2.0-Feed angezeigt.
Hallo Zachary
Nein, das sollte sofort funktionieren. Haben Sie anderen Code, der Probleme verursachen könnte? RSS-bezogene Plugins,