Schlagwort-Archive: kategorien

Jetzt mal ohne Spass

… kommen wir zum Ernst der Lage.

Wer in den letzten Tagen meinen Blog aufgerufen hat, dem wird aufgefallen sein, dass die ganzen „Witze der Woche“ und anderen Spaßigkeiten nicht mehr auf der Startseite sichtbar sind. Dem aufmerksamen Leser wird dabei aber aufgefallen sein, dass im Menü oben nun aber ein weiterer Punkt namens „Lustiges“ hinzugekommen ist.

Lange Rede – kurzer Sinn: Ich habe sämtliche Beiträge der Kategorie „Lustig Lustig tralalala“ und deren Unterkategorien „Witze“ und „Videos“ aus der index.php verbannt und in eine eigene Seite mit eigenem Template verlagert.

Um ohne ein zusätzliches Plugin zu erreichen, dass die Beiträge der genannten Kategorien aus der Startseite ausgeklammert werden, musste ich die ledglich die functions.php um die folgende Funktion erweitern:

function exclude_category($query) {
   if ( $query->is_home ) {
      $query->set('cat', '-11 -112 -113');
   }
return $query;
}
add_filter('pre_get_posts', 'exclude_category');

(Quelle: Locoed Web Development)

Die Zahlen in der Funktion (hier als 11, 112 u. 113 angegeben) entsprechen den Kategorie-IDs in diesem Blog.

Als zweiten Schritt habe ich also eine separates Seiten-Template für die künftige „Lustiges“-Seite erzeugt und den Passus

<?php if ( have_posts() ) :
…
while ( have_posts() ) : the_post(); ?>

durch diesen angepassten Aufruf ersetzt:

<?php if ( have_posts() ) :
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts('cat=11,112,113&posts_per_page=5&paged='.$paged);

while ( have_posts() ) : the_post(); ?>

Natürlich ist auch dieser Tipp nicht auf meinem Mist gewachsen, sondern ich habe mich an Frank Bültges Beitrag „WordPress Query Quick Tipps“ orientiert. Wie ihr seht, tauchen hier nun wieder die Kategorie-IDs auf, die ich hier ja nun explizit anzeigen lassen will.

Über die Anpassung hinaus, habe ich ansonsten mein „normales“ Archiv-Template (archive.php) für den restlichen Aufbau der Seite verwendet, allerdings mit kleinen Anpassungen was die Darstellung der Beiträge betrifft (z.B. the_content() statt the_excerpt)

Es wird also weiterhin einen Witz der Woche und andere Lustige Inhalte im Blog geben, sie werden nur nicht mehr direkt auf der Startseite zu finden sein.

Update 28.02.2011
Offenbar hat sich mit WP 3.1 etwas an den Aufrufen und/oder Parametern geändert, den seit dem Update auf Version 3.1 funktioniert das „Ausblenden“ nicht mehr.
Muss jetzt erstmal auf die Suche gehen, WAS ich nun WO ändern muss.

Update 2

Habe das ganze nun ganz anders gelöst. In der index.php habe ich folgende Ergänzung gemacht

<?php if (is_home()): query_posts($query_string . 'cat=-11,-112,-113'); endif; ?>
…
<?php if (have_posts()) : ?>
…

(Quelle: WordPress Codex)
und habe dadurch den ganzen Abschnitt aus der functions.php rausgeworfen.

Neue Kategorien

Heute brauch ich auch mal Hilfe.
Ich wollte eigentlich unsere Kategorien mal ein wenig sortieren und neue anlegen. Aber komischerweise krieg ich immer eine Error-Meldung.
Ich hatte noch nie Probleme damit. Dürrbi oder sonstwer zu Hüüüüüüüülfe :-)

Nachtrag

Wie es scheint, handelt es sich wohl um ein größeres Problem. Will heißen, wir konnten es noch nicht beheben. Mal schauen, ob wir am Wochenende was ausrichten können. Solange müssen dann doch noch die alten Kategorien herhalten. :-)

Nachtrag II
Also der Fehler ist folgender:
Beim Versuch Kategorien anzulegen, kommt der im Screenshot angehängte „Invalid Request“ Fehler. Dabei ist es unerheblich, ob ich über ‚Verwalten‘ –> ‚Kategorien‘ oder direkt bei ‚Beitrag schreiben‘ versuche, eine Kategorie anzulegen.
Umbenennen von vorhandenen Kategorien funktioniert, aber das Löschen von ungenutzten Kategorien funktioniert ebenfalls nicht, die zu löschende Kategorie wird dann nur rot hinterlegt (die Fehlermeldung erscheint dann aber nicht)
invalid-request.jpg
Vielleicht hat ja jemand eine Idee ?