Artikel einer Kategorie nicht anzeigen lassen
Natürlich, auch für diesen Fall gibt es natürlich ein passendes Wordpress Plugin. Allerdings ist Wordpress spätestens seit der Version 2.8 ein echter Ressourcenfresser geworden und da ist jedes nicht installierte Plugin Gold wert. Hier wird in kurzen und einfachen Schritten erklärt, wie man Artikel einer oder mehrerer Kategorien nicht auf der Startseite anzeigen lässt.
Manche Artikel sind es einfach nicht wert auf die Startseite zu gelangen. Manch einer von uns möchte einfach eine bestimmte Kategorie aus anderen Gründen nicht auf der ersten Seite haben. So ging es mir schon immer mit den Ebooks über Social Media Marketing. Hier werden von mir einfach nur die Links zu den jeweiligen Ebooks gesetzt und ein kurzer Begleittext dazu verfasst. Damit möchte ich natürlich nicht jeden Leser gleich auf der Startseite belästigen.
Um das Problem zu lösen habe ich lange den Advanced Category Excluder eingesetzt, der auch immer gute Dienste leistete. Seit dem letzten Wordpress Update versuche ich aber immer mehr möglichst wenige Plugins einzusetzen. Der Speed meines Blogs macht mir schon lange zu schaffen und da gibt es noch einigen Optimierungsbedarf. So habe ich mich nach dem passenden Code umgesehen und den will ich gerne mit Euch teilen und möglichst einfach erklären.
- Kategorien aufrufen unter Artikel
- Neue Kategorie erstellen bzw. die entsprechende anklicken
- Nummer der Kategorie herausfinden durch überfahren des Kategorielinks mit der Maus. Die Kategorie ID wird angezeigt, wenn man mit der Maus über den Link fährt. Das kann eine einstellige, aber auch eine mehrstellige Zahl sein.
- Im Menüpunkt Design den Editor aufrufen und die Datei Theme Functions anklicken
- Untenstehenden Code vor “?>” einfügen. Die entsprechende Kategorie ID natürlich noch im Code (xx durch ID ersetzen) anpassen. Das Minuszeichen muss dabei erhalten bleiben.
Tja, und das war es auch schon. Das einzige was Euch zum erfolgreichen Ausschliessen noch fehlt ist der passende Code.
function exclude_category($query) {
if ( $query->is_home ) {
$query->set(’cat’, ‘-xx‘);
}
return $query;
}
add_filter(’pre_get_posts’, ‘exclude_category’);
Wer mehrere Kategorien ausschliessen möchte, der braucht den Code nur ein wenig anzupassen. Durch einfaches Aufzählen der entsprechenden Kategorien funktioniert es genauso klasse wie bei einer.
$query->set(’cat’, ‘-3 -22 -77 -452′);
Natürlich ist dieser Code nicht von mir, so etwas kann ich leider nicht. Gefunden habe ich ihn bei Locoed, der das Ganze noch ein wenig genauer erklärt. Umgesetzt habe ich es aber dennoch sofort und es funktioniert bestens.
Rock on…
Tags: Anleitung, artikel, ausschliessen, Tutorial, Wordpress
Bring on the comments
Leave a Reply
Additional comments powered by BackType






Hi
Danke für den Hinweis, genau das habe ich gesucht. Es sei vlt. noch zu sagen das der Code am besten an erster Stelle also gleich nach dem
stand gings bei mir nicht.
mfg
activetraveller
Achtung: Am besten vor Änderungen der function.php den Inhalt sichern und alle Plugins deaktivieren. Bei mir kam die Fehlermeldung “Warning: session_start() [function.session-start]: Cannot send session cookie – headers already sent by……”.
Ärgerlich, weil ich nicht mehr aufs Backend zugreifen konnte. Mein Email Plugin hat wohl den Fehler verursacht, ein einfaches Rücksichern der function.php per FTP hat leider auch nicht geholfen.
Geholfen hat schließlich das Löschen der function.php per FTP. Wordpress läuft, mit einigen grafischen Einbußen, auch ohne diese Datei. So konnte ich zumindest wieder ins Backend und dort die Plugins deaktivieren. Danach habe ich die originale function.php wieder hochgeladen und meine Plugins wieder aktiviert. Jetzt läuft es wieder wie vorher – die Änderungen sind aber erst einmal vertagt.
[...] Code nicht auf Kriegsfuß steht, bastelt man jedoch selbst unter der Haube. Wie das geht, steht in diesem Beitrag. User des Thesis-Themes bedienen sich eines Hooks: function limit_front_page() { [...]
Hallo,
ich kann mit der Maus soviel rüberfahren wie ich will, ich sehe immer nur den Namen des Links.
Kann mir einer bitte noch mal helfen.