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

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

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

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

add_filter( 'post_row_actions', 'wp_kama_post_row_actions_filter', 10, 2 );

/**
 * Function for `post_row_actions` filter-hook.
 * 
 * @param string[] $actions An array of row action links.
 * @param WP_Post  $post    The post object.
 *
 * @return string[]
 */
function wp_kama_post_row_actions_filter( $actions, $post ){

	// filter...
	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)
Объект текущего поста.

Примеры

0

#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;
}

Список изменений

С версии 2.8.0 Введена.

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

WP_Posts_List_Table::handle_row_actions()
post_row_actions
wp-admin/includes/class-wp-posts-list-table.php 1549
$actions = apply_filters( 'post_row_actions', $actions, $post );

Где используется хук в WordPress

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