Plugin EBQuery: Beiträge und Kategorien ausschließen
Nachdem ich mich mehrfach darüber geärgert hatte, dass ich nicht auf einfache Art und Weise mehrere Kategorien und/oder Beiträge gleichzeitig im Frontend ausblenden konnte, habe ich mich hingesetzt und dieses Plugin erstellt.
Als Grundlage diente mir das Plugin Ultimate Category Excluder von Michael Clark.
Dies entsprach schon fast meinen Wünschen, hatte aber den Nachteil, dass nur noch eine Seite angezeigt wurde, auch wenn es weitere gab. Außerdem wurden die Beiträge nicht sortiert.
Im Gegensatz zu Ultimate Category Excluder verwendet dieses Plugin die “include”- und nicht die “exclude”-Methode. Aus diesem Grund bleibt die gewünschte Sortierung erhalten und auch die anderen Seiten werden wie gewohnt angezeigt.
Zusätzlich habe ich weitere Optionsseiten hinzugefügt, auf denen Sie die Ausgabe der Beiträge im Frontend beeinflussen können.
Auch wenn das Plugin noch nicht alle Funktionen/Optionen enthält, die es einmal enthalten soll, hoffe ich, dass auch Sie mit diesem Plugin bereits heute effektiver Ihre Blogseiten gestalten können.
Das Plugin wurde mit der WordPress Version 2.3.3 getestet.
Folgende Änderungen müssen/sollen noch durchgeführt werden:
- Optionsseite “Anzeige Kategorien ändern” erweitern
- Performance (Geschwindigkeit) erhöhen
Sollten Sie Fehler aufspüren, Fragen oder Wünsche haben, so können Sie hier einen Kommentar hinterlassen. Über andere Rückmeldungen freue ich mich natürlich auch.
Funktionen:
- ausblenden von ein oder mehreren Kategorien und/oder Beiträgen auf den Seiten:
- Home
- Feeds
- Archiv
- Autor
- Suchen - ausblenden von ein oder mehreren Beiträgen innerhalb der Kategorien
- Sortierung der einzelnen Seiten / Kategorien ändern
- Anzahl der Beiträge pro Seite / Kategorie festlegen
Installation:
- das Plugin EBQuery herunterladen
- Datei entpacken
- Ordner eb_query in den Plugin-Ordner kopieren
- Plugin aktivieren
- gewünschte Einstellungen vornehmen
- ggf. Template-Dateien ändern
(z.B. Befehl query_posts() auskommentieren/entfernen) - Fertig
Upgrade:
(siehe Installation)
Bei Problemen ggf. Einstellungen löschen
Vorläufige Version für WordPress 2.6
(siehe dazu auch meinen Kommentar vom 20.07.2008)
- ZIP-Datei herunterladen
- ZIP-Datei entpacken
- Soweit der Ordner eb_query noch nicht im Plugin-Ordner vorhanden sein sollte, den Ordner eb_query erstellen.
- Dateien in den Ordner eb_query kopieren
- Bei Problemen die bereits vorhanden Einstellungen löschen und erneut vornehmen
Letzte Änderungen:
22.03.2008 23:55 Uhr:
Fehler (Autorenseite) korrigiert, ausschließen von Kategorien und Beiträgen in den Suchergebnissen, ändern der Sortierung der Suchergebnisse möglich
18.03.2008 10:50 Uhr:
Kategorien und einzelne Beiträge auf der Autorenseite ausschließen ist möglich.
17.03.2008 15:30 Uhr:
Fehler korrigiert, Hilfetexte eingefügt, Texte eingedeutscht, zusätzliche Funktionen eingefügt, Performance erhöht
12.03.2008 12:26 Uhr:
Es können nun auch einzelne Beiträge aus der Startseite, den Feeds und dem Archiv ausgeblendet werden.









17:38
abgelegt unter: 
17. März 2008 um 15:56 Uhr
Wie bringe ich es fertig, dass das Plug-In mit der author.php zusammenarbeitet?
19. März 2008 um 18:13 Uhr
Seit gestern können Kategorien und auch einzelne Beiträge auf der Autorenseite ausgeschlossen werden.
Einfach die neue Version downloaden, die Dateien in das Pluginverzeichnis eb_query kopieren und anschließend die gewünschten Einstellungen vornehmen und speichern.
Fertig.
21. März 2008 um 17:47 Uhr
Hi, ich beschreibe das Problem etwas genauer (es geht auch mit der neuen Version nicht):
Ich will, dass im Archiv und bei den Kategorien 100 Beiträge pro Seite Angezeigt werden. Dazu gehe ich auf HFA_query_edit -> Archiv -> und bei Anzahl Beiträge (showposts) gebe ich hundert ein. Ich gehe zu einem Profil, dort werden keine Daten mehr angezeigt und es werden bei den letzten 5 Beiträgen ebenfalls 100 angezeigt. Kannst du das Plug-In eingrenzen, dass das Plug-In tatsächlich die Beitragszahl nur bei den Kategorien und beim Archiv ändert?
Danke!
21. März 2008 um 18:15 Uhr
Hallo Razer,
vielen Dank für Deinen Hinweis.
Damit ich den Fehler schneller eingrenzen und beheben kann, wäre es sehr schön, wenn Du mir die betroffenen Dateien per Mail zusenden könntest. Ist das machbar?
Vielen Dank im Voraus.
Edit:
Vielen Dank für die Scripte.
Fehler wurde behoben.
Sollte es beim Upgrade Schwierigkeiten geben, dann einfach alle Einstellungen löschen und erneut vornehmen.
16. Juli 2008 um 12:39 Uhr
Ist ein Update für WP 2.6 geplant?
Das Plugin läuft bei mir mit der neuen Version leider nicht mehr…
16. Juli 2008 um 13:35 Uhr
Hallo Vindobona,
kannst Du mir sagen, was nicht mehr funktioniert?
Vielen Dank im Voraus.
16. Juli 2008 um 15:05 Uhr
Sobald ich das Plugin unter 2.6 aktiviere, findet der Browser das Blog nicht mehr.
Deaktiviere ich das Plugin, funktioniert alles wieder ganz normal. Ich habe keine anderen Plugins aktiviert, denn vorerst betreibe ich 2.6 lediglich lokal in einer Testumgebung unter XAMPP. Auf den Server habe ich mich noch nicht damit gewagt
16. Juli 2008 um 16:40 Uhr
Das verstehe ich gut.;-)
Sobald ich etwas Luft habe, werde ich es ausprobieren und nach dem Fehler suchen. Die neue Version werde ich dann hier zum Download zur Verfügung stellen.
Vielen Dank für Deine Infos.
19. Juli 2008 um 20:52 Uhr
Hallo,
das Plugin EBQuery, welches ich seh schätze erzeuigt leider in der WP Version 2.6 einen Serverfehler 500
Wenn man es deaktiviert funktioniert alles wie gewohnt, aber leider werden alle Kategorien angezeigt, was ich ja nicht möchte…
Gibt es dafür schon eine Lösung??
Gruß
Oliver
20. Juli 2008 um 14:39 Uhr
Ja, eine vorläufige Lösung gibt es bereits. Allerdings beinhaltet diese neue Version noch einen “Fehler”. D. h. bislang wurden automatisch nur die Beiträge einer Kategorie angezeigt, die explizit dieser Kategorie auch zugeordnet wurden. Dies ist bei der neuen Version noch nicht gegeben. Sobald ich Zeit habe, werde ich diesen “Fehler” ausmerzen.
Aber schwerwiegendere Fehler dürften m. E. mit der neuen Version behoben sein.
Diese werde ich gleich oben zum Download zur Verfügung stellen.
Einfach herunterladen, die ZIP-Datei entpacken und die enthaltenen Dateien über die alten kopieren.
Über Rückmeldungen freue ich mich.
20. Juli 2008 um 17:16 Uhr
hi,
ich habe die neue Version getestet, wie Du sagtest ist der schwerwiegende Fehler nicht mehr vorhanden!!
Damit ist mir schon mal sehr geholfen!!
Vielen Dank einstweilen..
Würde gerne weitertesten falls Du Dein PlugIn weiter entwickelst..
Gruß
Oliver
21. Juli 2008 um 17:35 Uhr
Das Plugin werde ich in jedem Fall weiterentwickeln, da ich es selbst mehrfach einsetze.
Deswegen nehme ich Dein Angebot dankend an.
25. Juli 2008 um 11:29 Uhr
hi,
gibt es eine möglichkeit betimmte kategoriern auch aus dem Widget “Letzte Beiträge” auszuschliessen??? so wie es unter punkt 5 Vindobona: auch schon sagte..
wäre nett wenn wenn du was dazu segen könntest..
25. Juli 2008 um 13:09 Uhr
Da ich keine Widgets einsetze:
War das vorher möglich? Dann war das purer Zufall.
Wenn dies auch bisher nicht der Fall war, dann suche in der Datei funktion.php in Deinem Themen-Ordner nach dieser Widget-Funktion. Ich gehe davon aus, dass Du dort die gewünschten Kategorien per exclude ausschließen bzw. nur bestimmte Kategorien per include einschließen kannst. Wenn Du mehrere Kategorien gleichzeitig ausschließen willst, so wirst Du die include-Methode verwenden müssen, da m. E. sonst Probleme bei der Ausgabe (Sortierung, etc.) entstehen können (s. o.).
Für weitere Fragen stehe ich gerne zur Verfügung.
14. Oktober 2008 um 00:16 Uhr
Hallo Heiko,
herzlichen Dank für Deinen Hinweis. Ich werde diesem Problem auf den Grund gehen, wobei ich damit leider erst in frühestens 2 Wochen beginnen kann.
Sobald eine neue Version des Plugins vorliegt, werde ich Dich per E-Mail informieren.
12. März 2009 um 15:19 Uhr
hallo,
wir setzten auf unserer dieses plugin ein um beiträge von der startseite auszuschliessen. das klappt auch wunderbar. uns ist aber aufgefallen, dass im titel auf der startseite, seit der installation des plugins vor dem seitentitel noch eine kategorie mit aufgeführt wird. also “kategoriename | blogtitel”. das wunderliche ist dabei, das dieses verhalten auch auf der startseite auftritt. das ganze ist für und ein großes problem, da google das als neue seite wertet und unsere pagerank dadurch nach unten korrigiert.
ist dieses problem bekannt bzw gibt es einen workaround dafür?
mfg
12. März 2009 um 16:20 Uhr
Hallo Herr Friedmann,
hm, das Problem ist unbekannt und deswegen gibt es auch keinen Workaround.
Mir stellen sich zunächst folgende Fragen:
Tritt das Problem nur dann auf, wenn Sie mein Plugin installiert haben?
Welche Wordpress-Version nutzen Sie?
Welche Plugins haben Sie installiert und/oder aktiviert?
Was ist EPT? Gibt es eine solche Kategorie oder lautet vielleicht so der Blogtitel?
Ich habe mir Ihre Seite (HTML-Code) mal näher angesehen und festgestellt, dass vor der ersten Zeile sich eine Leerzeile befindet und die Zeile <Doctype… mehrere Umbrüche enthält. Diese sollten Sie auf jeden Fall löschen, da diese zu Problemen führen kann. Ob es daran liegt, weiß ich allerdings nicht, aber Versuch macht klu
chg…Wenn Sie wollen können Sie mir Ihre header.php per E-Mail zusenden, vielleicht liegt die Ursache ja ganz woanders, denn, wenn ich es mir recht überlege, ändert das Plugin EBQuery zwar die Kategorien, aber nicht den Titel der Seiten.
Viel Erfolg.
Elke Burmester
12. März 2009 um 18:08 Uhr
hallo frau burmester,
erstmal danke für die prompte antwort.
zu ihren fragen:
1) ja das problem existiert erst seit wir das plugin von ihnen installiert haben. sobald ich das plugin deaktiviere, tritt das problem nicht mehr auf.
2) wir setzen wordpress 2.7.1 ein
3) folgende plugins sind aktiviert: wp-recaptcha, wp-filemanager, wp-slimstats, Ajax Newsletter, Google XML Sitemap, Youtube Brackets, Spam Karma 2, EBQuery
4) ja es gibt eine kategorie ept. der blogtitel lautet “Poker online spielen – Regeln, Tipps, Forum und Poker Strategien”.
die zeilenumbrüche in der doctype zeile habe ich entfernt. das problem besteht weiterhin. jetzt sind wir schlauer…
ich habe ihnen die header.php an ihre mailadresse geschickt. vielleicht fällt ihnen ja noch etwas daran auf.
für ihre hilfe bin ich ihnen dankbar und verbleibe mit freundlichen grüßen.
Alex Friedmann
13. März 2009 um 11:32 Uhr
Hallo Herr Friedmann,
vielen Dank für die Infos und die header.php.
Für mich wäre es noch hilfreich zu wissen, was passiert, wenn alle anderen Plugins deaktiviert sind. Tritt dann auch noch der selbe Fehler auf, ein anderer oder passiert garnichts?
Wenn Sie mir dies irgendwann mitteilen könnten, wäre ich Ihnen sehr dankbar. Denn ich möchte damit ausschließen, dass ein anderes Plugin meines negativ beeinflusst, oder umgekehrt.
In Ihrer header.php befindet sich folgender Code:
< head > < title > < ? php wp_title(”); ?> < ? php if(wp_title(”, false)) {? > | < ? php } ? > < ? php bloginfo(’name’); ? > < / title >
Ändern Sie diesen wie folgt ab:
< head > < title > < ? php if (!is_home() and !is_front_page()) {wp_title(”); ?> < ? php if(wp_title(”, false)) {? > | < ? php } ? > < ? php bloginfo(’name’); ? > < /title >
Nun sollte bei der Startseite kein Kategoriename erscheinen.
Wenn Sie grundsätzlich den Kategorie- oder Beitragsnamen aus dem Titel entfernen wollen, so ändern Sie die o.g. Zeile wie folgt:
< head > < title > < ? php bloginfo(’name’); ? > < /title >
Die Funktionen is_page, is_front_page, is_home, is_single, etc. werden im Codex von WordPress beschrieben. Sie finden die Erläuterungen bzw. Links unter der folgenden Adresse: http://codex.wordpress.org/Function_Reference/is_front_page
Die o.g. Codeschnippsel können Sie unter der Adresse http://www.elke-burmester.de/wp-content/download/code-schnippsel-title.txt sich anzeigen lassen und anschließend den gewünschten Codeschnippsel herauskopieren.
Ich hoffe, dass ich Ihnen damit etwas weiterhelfen konnte.
Elke Burmester
13. März 2009 um 12:47 Uhr
hallo frau burmester,
wenn ich alle plugins bis auf ihres deaktiviere, besteht das problem weiterhin.
mit ihrem codeschnipsel funktioniert das ganze tadellos wie es soll. vielen dank für ihre hilfe.
falls ich ihnen bei der suche nach dem problem helfen kann so würde ich dieses gerne tun.
mit freundlichen grüßen
alex friedmann
13. März 2009 um 14:12 Uhr
Hallo Herr Friedmann,
vielen Dank für die Infos.
Auf das Angebot komme ich gerne zurück.
Elke Burmester
2. April 2009 um 13:51 Uhr
Hallo !
Ich habe posts_per_page unter home auf 5 gestellt, möchte allerdings auf der statischen Seite Sitemap eine Ausnahme machen und hier alle posts getrennt nach seiten und artikeln darstellen. Leider werden hier dann auch nur 5 Seiten und 5 Beiträge angezeigt.
Wie bekomme ich die Begrenzung einzeln raus? Eine manuelle Vorgabe der posts_per_page im Template der Seite hat nicht geklappt.
Danke
torre
2. April 2009 um 15:02 Uhr
Hallo torre,
um Dir weiterhelfen zu können, brauche ich noch folgende Infos:
1. WP-Version
2. Nutzt Du das Plugin EBQuery?
3. Wenn ja: wo hast Du dort welche Einstellung(en) vorgenommen?
4. Verwendest Du das Standardtemplate für die statische Seite Sitemap?
5. Wenn nein: Hast Du dort den query_posts-Befehl eingefügt und wenn ja, wie sieht dieser aus?
6. Wo und wie hast Du eingestellt, dass auf der Seite Home max. 5 Seiten ausgegeben werden?
7. Wieviele Beiträge hast Du bereits veröffentlicht?
8. Verwendest Du ggf. (weitere) Plugins, die die Sortierung, Anzahl, etc. der Beiträge der seiten beeinflussen (könnten) und wenn ja welche?
Viele Grüße
Elke Burmester
2. April 2009 um 16:53 Uhr
Hallo !
1. Version: WP MU 2.7
2. ebquery: Ja
3. Nur eine 5 unter home – posts_per_page
4. Template ist eine Eigenkreation. Für die Seiten sieht es so aus:
$postslist = get_posts(’&order=ASC&orderby=title&post_type=page’);
foreach ($postslist as $post) :
setup_postdata($post);
5. -
6. siehe oben
7. Seiten >10, Beiträge >100
8. eigentlich keine weiteren Plugins, die hier eingreifen könnten
Danke
Torre
3. April 2009 um 12:22 Uhr
Hallo torre,
das Plugin EBQuery beinflusst nicht die statischen Seiten. Deswegen wirst Du in den “sauren Apfel” beißen und Dir für diese Seite ein eigenes Template basteln müssen.
Wie das geht, habe ich mal eben auf die Schnelle <a href=”http://www.elke-burmester.de/index.php/2009/04/03/eigenes-seitentemplate-erstellen/”>hier</a> versucht zu beschreiben.
Ich hoffe, ich konnte Dir damit weiterhelfen.
Viel Glück und ein wunderschönes Wochenende.
Elke
3. April 2009 um 12:52 Uhr
Hallo !
ich konnte es wie folgt lösen:
$postslist = get_posts(’numberposts=100 .
Durch die Vorgabe hier der 100 werden bis zu 100 Seiten eingelesen. Damit läuft es wie gewollt.
4. April 2009 um 11:22 Uhr
Hallo torre,
vielen Dank für die Informationen, die bestimmt auch andere LeserInnen interessiert.
Ich wünsche Dir und allen anderen noch viel Erfolg und ein herliches Wochenende.
Elke
1. Mai 2009 um 15:19 Uhr
Hallo, mein WP 2.7.1 läuft als CMS mit statischen Seiten und Artikeln. Die Suche funktionierte über Seiten und Artikel. Da ich bestimmte Kategorien von Artikeln aus der Suche und dem Archiv herausnehmen möchte, habe ich dein Plug EBQuery eingesetzt. Funktioniert auch wunderbar – allerdings erfolgt jetzt die Suche (und/oder Ausgabe) nur noch von Artikeln. Wie kann ich die Suche und Ausgabe auch wieder von Seiten mit deinem Plugin realisieren!?
mfg
1. Mai 2009 um 18:49 Uhr
Nachtrag: Ich habe dein Plug mal deaktiviert und dafür “Ultimate Category Excluder” installiert. Nun lief die Suche wieder komplett und das Nichtanzeigen einer Kategorie (bei mir Nr.:51) bei Suche und Archiv ging auch, allerdings ging auf einer Seite (mit eigenem Template) nun das separate Anzeigen der “ausgeblendeten” Kategorien ( mittels …get_posts(’category=51&numberposts=2′); …) nicht mehr. Letzteres ging aber mit deinem Plug!!!
Hast Du einen Tipp, wo ich was “handisch” einstellen könnte??
4. Mai 2009 um 09:48 Uhr
Ich weiß nicht, ob die Funktion rewind_posts(); in diesem Zusammenhang wirksam ist, aber Du kannst es ja mal versuchen, indem Du sie vor die Zeile get_posts(’category=51&numberposts=2′); setzt.
Sollte diese Änderung nicht erfolgreich sein, so wäre es für mich hilfreich zu wissen, was genau passiert und was passieren sollte. Je genauer Du es beschreibst, desto besser.
4. Mai 2009 um 18:57 Uhr
Hallo – habe EBquery deaktiviert, Category Excluder aktiviert, deinen Ergänzungstip dazugeschrieben – ohne Erfolg!! Aber das war eigentlich auch nicht mein Anliegen – denn ich würde lieber dein Plug verwenden.
Nochmal: Ich habe (bisher nur) zwei Kategorien in Verwendung (cat_ID=45 und 51). Alle Artikel – außer denen mit cat_ID=51- sollen in Suche, Archiv und Home verfügbar sein. Mit deinem Plug wunderbar realierbar!Auf einer speziellen Seite mit extra Template sollen dann die letzten zwei Artikel mit der cat_ID=51 separat angezeigt werden. Geht mittels
get_posts(’category=51&numberposts=2′)
foreach(…
……
endforeach
auch wunderbar!!! Dein Plug blockiert hier nix!!!
ABER: Mit deinem aktiven Plug funktioniert nun die Suche in WP nur noch eingeschränkt, d.h. es werden nur noch Artikel und keine Seiten mehr per Suche als Suchergebnis ausgegeben (evtl. gar nicht durchsucht, nicht gefunden, nur nicht angezeigt?)
Genau diesen Seiteneffekt deines Plugs hätte ich gerne nicht mehr!!!
Weiß aber nicht wie und wo ich da was ändern könnte im Code …
mfg
4. Mai 2009 um 22:29 Uhr
Ich habe zusätzlich das Plugin Search Everything installiert. Dort kannst Du explizit einstellen, ob und wenn ja, welche Seiten, etc. Du durchsuchen willst. Vielleicht bekommst Du ja in Kombination von beiden Plugins das was Du haben willst.
Mich irritiert allerdings Deine Aussage: “es werden nur noch Artikel und keine Seiten mehr per Suche als Suchergebnis ausgegeben” Ist das denn bei den vorherigen Versionen auch so gewesen? Ich war bislang davon ausgegangen, dass das Plugin nur die Beiträge, aber nicht die Seiten berücksichtigt…
5. Mai 2009 um 09:08 Uhr
Hallo,
1.Plugin Search Everythin probier ich aus..
2.Ja, DEIN Plug berücksichtigt nur Beiträge und keine Seiten. Ohne dein Plug (also WP-Standard) werden Beiträge+Seiten durchsucht und aufgelistet! Deshalb mein Wunsch bzw. als Anregung, ob dein Plug (evtl.optional) nicht auch noch die Seiten mit berücksichtigen könnte!? Wäre eine geile Erweiterung …
mfg
5. Mai 2009 um 09:10 Uhr
… bzw. die Seiten für die Suche nicht blockiert! (Ich hoffe ich drück mich verständlich aus!?)
5. Mai 2009 um 10:09 Uhr
Mal schau’ n was sich machen lässt.
6. Mai 2009 um 00:06 Uhr
Hallo,
” – zum Testen würde ich mich zur Verfügung stellen bzgl. einer Neuerung deines Plug..
ich habe Search Everything ausprobiert – aber leider ohne Erfolg. Also die Suche bleibt nach wie vor durch dein Plug auf Artikel beschränkt – die Seiten werden nicht erfasst.
Apropos “Mal schau’ n was sich machen lässt.
mfg
6. Mai 2009 um 09:35 Uhr
Problem (zumindestr für mich) gelöst!!!!!!!
Habe nach längerem Suchen das Plug “Advanced Search” entdeckt. Mit dem geht die Suche wieder über Artikel+Seiten (sogar besser als je zuvor!!!) und es beißt sich auch nicht mit deinem Plug.
Habe also die ideale Kombination zweier Plugs gefunden.
mfg
7. Mai 2009 um 11:17 Uhr
Vielen Dank für Deinen Tipp, der sicherlich für den einen oder anderen Leser interessant ist.
19. Juni 2009 um 11:14 Uhr
Hallo,
vorne weg erstmal Lob für das Plugin! Ist genau das, was man braucht um WP an seine Bedürfnisse anzupassen… warum sowas nicht gleich integriert ist versteh’ ich nicht
Aber hab da ein kleines Problem… Plugin installiert und funktionierte auch alles wie gewollt. Hab noch andere Plugins drin (u.a. WP-Sticky, womit man Beiträge als Stickies und Announcements klassifizieren kann, sodass sie immer oben stehen)
Aber auch in dieser Kombination hat alles funktioniert. Ich möchte einige Beiträge (Die Announcements in den jeweiligen Kategorien) von der Startseite und so ausschließen. Sie waren auch verschwunden… jetzt sind sie einfach wieder aufgetaucht. Erst ein einzelner Beitrag, dann alle ausgeschlossenen… (ich habe nichts weiter gemacht als weitere Beiträge zu schreiben)
Irgendeine Idee woran das liegen könnte? Gibts da nen kleinen Trick? hab schon versucht die Beiträge nicht mehr auszuschließen, Änderungen zu speichern, wieder ausschließen wieder speichern etc. aber nichts tut sich….
danke schon mal für die Hilfe. Und nochmal das Plugin rockt! …wenns dann wieder geht
gruß krischi