Anzeige der Spalte für die benutzerdefinierte Taxonomie auf der Verwaltungsseite für benutzerdefinierte Beitragstypen
Lesezeit: 3 Minuten
Benutzer705100
Ich möchte meinem benutzerdefinierten Beitragstyp-Verwaltungsfenster eine Spalte hinzufügen, um meine benutzerdefinierte Taxonomie anzuzeigen.
Diese von @SarthakGupta bereitgestellte Lösung erstellt die Spalte für mich, gibt aber weder die Taxonomie noch die Meldung „Kein Taxonomiesatz“ wieder: Anzeigen der benutzerdefinierten Taxonomiespalte in benutzerdefinierten Posts-Typenlisten
Ich habe ähnliche Lösungen gesehen, die an anderer Stelle veröffentlicht wurden, mit ähnlichen Beschwerden über die leere Taxonomie-Spalte.
Was könnte das Problem verursachen? Kann es sein, dass diese Lösung nicht mit WordPress 3.3 funktioniert?
Vielen Dank.
Ab WordPress 3.5 können Sie es aktivieren, wenn Sie eine benutzerdefinierte Taxonomie registrieren, indem Sie Folgendes hinzufügen:
'show_ui' => true,
'show_admin_column' => true,
Ich hatte dieses Problem und stellte fest, dass das Ersetzen der WP-Funktionen get_the_terms durch eine benutzerdefinierte Abfrage besser funktionierte – versuchen Sie es (wobei custtype der Name Ihres benutzerdefinierten Beitragstyps ist):
// custom columns
add_filter("manage_edit-custtype_columns", "custtype_columns");
add_action("manage_posts_custom_column", "custtype_custom_columns",10,2);
function custtype_columns($columns){
$columns = array(
"cb" => "<input type=\"checkbox\" />",
"title" => "Title",
"slug" => "URL Slug",
"custtype-type" => "Custom Taxonomy"
);
return $columns;
}
function custtype_custom_columns($column,$id) {
global $wpdb;
switch ($column) {
case 'custtype-type':
$types = $wpdb->get_results("SELECT name FROM $wpdb->posts LEFT OUTER JOIN $wpdb->term_relationships ON ID = object_id LEFT OUTER JOIN $wpdb->terms ON term_taxonomy_id = term_id WHERE ID = {$id}");
foreach($types as $loopId => $type) {
echo $type->name.', ';
}
break;
case 'slug':
$text = basename(get_post_permalink($id));
echo $text;
break;
default:
break;
} // end switch
}
Funktioniert das überhaupt?
mj7: Vielen Dank. Das ist toll. Die Taxonomien werden nun angezeigt. Eine Frage jedoch: Wie würde ich die Slugs und Taxonomien als Links anzeigen lassen?
– Benutzer705100
21. März 2012 um 20:21 Uhr
Offensichtlich hängt es davon ab, womit Sie sie verknüpfen möchten – das Folgende würde jede Taxonomie in der Liste mit der Bearbeitungsseite für diese Taxonomie verknüpfen: $types = $wpdb->get_results(“SELECT name,term_id FROM $wpdb->posts LEFT OUTER JOIN $wpdb->term_relationships ON ID = object_id LEFT OUTER JOIN $wpdb->terms ON term_taxonomy_id = term_id WHERE ID = {$id}”); foreach($types as $loopId => $type) { echo ‘