Die benutzerdefinierten Felder von WordPress dienen wohl den meisten Anwendern eher dazu, um Zusatzdaten und Logiken im Frontend abzubilden. Diverse Anforderungen brauchen diese Werte auch im Backend um darauf zu reagieren. Mittels einem Filter sind diese Werte schnell verfügbar, was sie im Standard nur am Post sind und damit stehen sie nicht in der Übersicht der Artikel/Seiten zur Verfügung. Diese Werte sind aber schnell ergänzt.
Im einfachsten Fall ergänzt man das Array um seine Feld-namen oder/und Feld-Werte der benutzerdefinierten Felder. In der Funktion dient eine einfache Abfrage via Conditional Tags nur der Prüfung, dass die Werte nur im Backend von WordPress zur Verfügung steht und das Array für Folgeauswertungen ergänzt.
add_filter( 'query_vars', 'fb_query_vars_admin' );
/**
* If needed: Allow meta queries in the admin
*/
function fb_query_vars_admin( $query_vars ) {
// break off, if not in admin area
if ( ! is_admin() )
return $query_vars;
$query_vars[] = 'meta_key'; // my key of custom field
$query_vars[] = 'meta_value'; // my value of custom field
return $query_vars;
}
Hallo Frank,
kannst Du bisschen präziser werden..bitte.
Ich ich verstehe nicht ganz genau wofür Filter gut sein soll.
Hab in der fuctions.php deine code eingefühgt aber sehe keine veränderungen.
Danke
MfG
@Viktor: du siehst die Veränderungen nicht, da wird nur ein Array erweitert, welches man dann zum Filtern nutzen kann. Wenn du in der Übersicht der Artikel bist, dann kann man die Tabelle nicht nach Custom Fields sortieren, da diese Felder und deren Inhalte nicht vorhanden sind. Mit dem kleinen Code-Snippet ist es im dem Array, auf welches man via Loop im Backend zugreift und so kann man dann mit anderen Filtern darauf eingreifen und filtern und die Ausgabe steuern.
Ich Danke Dir Frank jetzt habs geschnallt.
MfG aus Norden
Und wo kommt das rein, bzw.wo wird das angewendet? In die function.php Datei? Danke
@Manuel: je nach dem, was du damit tun willst. Ein Plugin ist immer besser, da man dann besser kontrollieren kann. Ist es ein Teil des Themes im Backend nach benutzerdef. Feldern zu filtern, dann ist es dort ebenso gut aufgehoben.
Hallo Frank,
vielen Dank für die für mich schon lang gesuchten Infos.
Herzliche Grüße aus Köln
Nadine
Hi,
also ich finde die Idee mit dem Filtern der Artikel nach benutzerdefinierten Feldern eigentlich garnicht mal schlecht. Hat man beispielsweise verschiedene "Arten" von Artikeln, welche sich durch den Einsatz von benutzerdef. Feldern im Frontend deutlich unterscheiden, kann man ja so anhand des Filters eine Gruppe von Artikeln leichter auffinden. thx
Wie bekommt man denn Code nun aus der function.php z.B. auf den Seiten angezeigt?? Das erschließt sich mir nicht, da weder ein print noch ein echo in den Funktionen davor gestellt ist. Aber in allen Tut's steht geschrieben, einfach in die function.php speichern und anzeigen lassen, ohne genauere Erläuterung, was noch dazu nötig ist. Bin für eine genauere Erklärung dankbar. Grüße
@nico: hier ist nichts mit Seiten oder anzeigen. Der Code macht die Felder verfügbar und sie sind greifbar, so dass man sie nutzen oder ggf. auch anzeigen kann, was aber wohl wenig Sinn macht.