Пользовательские колонки для таблицы списка таксономии
29 дек. 2012 г., 23:52:46
Просмотры: 22.1K
Голосов: 16
У меня есть следующий код для добавления новой колонки на экран редактирования таксономии (edit-tags.php?taxonomy=book_place&post_type=books
)
function add_book_place_columns( $columns ) {
$columns['foo'] = 'Foo';
return $columns;
}
add_filter( 'manage_edit-book_place_columns', 'add_book_place_columns' );
function add_book_place_column_content( $content ) {
$content = 'test';
return $content;
}
add_filter( 'manage_book_place_custom_column', 'add_book_place_column_content' );
Это работает, но мне нужно получить доступ к ID текущего термина в функции add_book_place_column_content
. Как я могу это сделать?

passatgt
3.4K
Все ответы на вопрос
1
1
Фильтр-хук manage_{TAXONOMY}_custom_column
принимает 3 аргумента:
$content
$column_name
$term_id
Попробуйте следующий код:
function add_book_place_column_content( $content, $column_name, $term_id ) {
$term = get_term( $term_id, 'book_place' );
switch ( $column_name ) {
case 'foo':
// Здесь можно работать с $term или $term_id
$content = 'test';
break;
default:
break;
}
return $content;
}
add_filter( 'manage_book_place_custom_column', 'add_book_place_column_content', 10, 3 );

Bainternet
67.7K
30 дек. 2012 г. 01:24:26
Комментарии
Для тех, кто, как и я, мог это упустить — числа 10 и 3 являются ключевыми. 10 — это приоритет, а 3 — количество аргументов. Если не указать 3, то передается только первый аргумент — без термина. При использовании класса: add_filter('manage_CUSTOMTAX_custom_column', array($this, 'handler_function'), 10, 3);

20 апр. 2024 г. 20:20:14
Похожие вопросы
5
ответов