WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Хостинг, VPS/VDS и отдельные сервера только на SSD дисках. 7 дней бесплатного тестирования.

post_row_actions хук-фильтр . WP 2.8.0

Позволяет удалить/добавить ссылки, которые выводятся под заголовком записи в таблице записей в админ-панели (например: Изменить, Свойства, Удалить, Перейти).

Фильтр работает только для не иерархических типов постов, например у записей. Т.е. у страниц он работать не будет. Для иерархических типов записей, вроде page, есть аналогичный фильтр: page_row_actions.

Использование

add_filter( 'post_row_actions', 'filter_function_name_2859', 10, 2 );
function filter_function_name_2859( $actions, $post ){
	// Делаем что-нибудь...

	return $actions;
}
$actions(массив)

Массив со ссылками. По умолчанию это 'Изменить', 'Свойства', 'Удалить', 'Перейти'.

По умолчанию массив $actions выглядит так:

Array (
	[edit] => <a href="http://wp-test.ru/wp-admin/post.php?post=173&action=edit" aria-label="Редактировать «Моя запись»">Изменить</a>

	[inline hide-if-no-js] => <a href="#" class="editinline" aria-label="Изменить свойства «Моя запись»">Свойства</a>

	[trash] => <a href="http://wp-test.ru/wp-admin/post.php?post=173&action=trash&_wpnonce=79bbce2a2f" class="submitdelete" aria-label="Переместить «Моя запись» в корзину">Удалить</a>

	[view] => <a href="http://wp-test.ru/%d0%bc%d0%be%d1%8f-%d0%b7%d0%b0%d0%bf%d0%b8%d1%81%d1%8c/" rel="bookmark" aria-label="Посмотреть «Моя запись»">Перейти</a>
)
$post(WP_Post)
Объект текущего поста.

Примеры

#1 Добавим ссылку на страницу с комментариями к записи

add_filter( 'post_row_actions', 'post_actions_add_comments_link', 10, 2 );
function post_actions_add_comments_link( $actions, $post ) {
	if ( $post->comment_count ) {
		$url = esc_url( add_query_arg( array( 'p' => $post->ID, 'comment_status' => 'approved' ), admin_url( 'edit-comments.php' ) ) );
		$actions['comments'] = sprintf( '<a href="%s">Комментарии</a>', $url );
	}

	return $actions;
}

Где вызывается хук

WP_Posts_List_Table::handle_row_actions()
post_row_actions
WC_Admin_Webhooks_Table_List::column_title()
wp-admin/includes/class-wp-posts-list-table.php 1342
$actions = apply_filters( 'post_row_actions', $actions, $post );
woocommerce/includes/admin/class-wc-admin-webhooks-table-list.php 113
public function column_status( $webhook ) {

Где используется хук (в ядре WP)

Не используется.
campusboy 3079youtube.com/c/wpplus
Создатель YouTube канала wp-plus, на котором делюсь своим опытом. Активный пользователь wp-kama.ru. WordPress-разработчик. Разработка сайтов и лендингов. Доработка существующих проектов. Сопровождение ресурсов.
Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться