Intereting Posts
Добавление формы поиска в div Как работает Twenty Twelve Navigation Bar? Как изменить Loop для заказа сообщений по представлениям (используя плагин wp-postviews) Разрешить пользователям выбирать категории Поместите повторяющиеся блоки статей Как сделать поле электронной почты на странице профиля доступным только для подписчиков? Woocommerce: дополнительное добавленное поле страны, не использующее ценность из базы данных Получаем дубликаты данных из get_posts () Переопределение WoCommerce на странице js в моей теме Как зарегистрировать активацию и деактивировать крючок в плагине с использованием шаблона ООП Принять ввод кода в Options Framework Регистрация jQuery убивает функции администратора Функция WordPress: ограничение размера, только jpg, jpeg, ограничение загруженных файлов на аккаунт Проблема автоматического обновления WordPress 3.0.1 Изменить HTML Создано wp_list_comments ()

Крюк для редактирования столбца на экране комментариев?

На данный момент я делаю

add_filter("manage_edit-comments_columns", function($columns) { unset($columns["author"]); $columns_one = array_slice($columns,0,1); $columns_two = array_slice($columns,1); $columns_one["user"] = "User"; $columns = $columns_one + $columns_two; return $columns; }); add_filter( 'manage_comments_custom_column', function($column, $column_id) { echo "Test"; },10, 2 ); 

Есть ли способ просто отредактировать столбец автора вместо удаления и создания моего собственного?

Для этого столбца нет фильтра. Поэтому ответ «Нет».

WP_List_Table искать метод column_ {something} внутри класса Lister. Класс комментариев. Класс имеет column_author. Так что убивайте этот столбец и создайте фильтр так же, как сейчас.

Я пришел к этому вопросу, так как мне нужна была аналогичная вещь. Хотя ответ qwerty-qwerty верен, это верно только частично, так сказать. Насколько я понимаю, автору нужно было изменить имя столбца, в то время как мне нужно было изменить содержимое самого столбца автора. Поэтому, хотя это немного другое, я просто оставлю это здесь, если кто-то найдет этот вопрос, как я. Это также работает, если вам нужно получить дополнительные данные о комментариях, которые не хранятся в мета-таблице, и не кэшируются, как указанная таблица, и не хотят делать отдельный запрос для каждого элемента.

Итак, что вы можете сделать, это подключиться к фильтру the_comments . Этот фильтр передает массив экземпляров WP_Comment_Object для каждого найденного комментария, который соответствует запросу. В моем случае комментарии могут быть сохранены с именем, отличным от отображаемого имени пользователя, поэтому, когда это было так, мне нужно было получить фактическое отображаемое имя из таблицы wp_users и отобразить его как comment_author_from_wp_comments (display_name_from_wp_users) . Я прошел через массив, переданный фильтром, выяснил, какие комментарии нуждаются в дополнительной информации из таблицы wp_users , выполнил один запрос к этой таблице, а затем модифицировал элементы в исходном массиве новыми данными. Вот общее представление о том, как работает мой код:

 function my_filter($objects) { global $current_screen; if (is_admin() && $current_screen->id == 'edit-comments') // I only needed it on that screen within admin { if (count($objects) > 0) { foreach ($objects as $key => $object) { //find out which comments needed 'fixing' } //do the actual fixing } } return $objects; //return modified or unmodified array } add_filter('the_comments', 'my_filter'); 

Надеюсь, кто-то в будущем найдет это полезным.