get_edit_post_link хук-фильтр . WP 2.3.0

Click here to view original web page at wp-kama.ru

Позволяет изменить ссылку на редактирование записи.

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

add_filter( 'get_edit_post_link', 'filter_function_name_3255', 10, 3 );
function filter_function_name_3255( $link, $post_id, $context ){
	// Изменяем...

	return $link;
}
$link(строка)
Ссылка на редактирование записи.
$post_id(int)
ID записи.
$context(строка)
В каком контексте запрашивается ссылка. Если указано display, то амперсанды будут закодированы.

Примеры

#1 Изменим ссылку на редактирование записи

Пусть у нас во фронте (лицевой части сайта) есть форма с добавлением и редактированием типа записи "Эвакуатор". По дефолту мы можем такие записи редактировать и в админке, но чтобы всю логику работы сосредоточить только в одном месте, подменим ссылки редактирования в админке на те, что ведут во фронт:

add_filter( 'get_edit_post_link', 'change_post_edit_url', 11, 2 );

function change_post_edit_url( $link, $post_id ) {

	if ( get_post_type( $post_id ) === 'evacuator' ) {
		return home_url( '/evacuator-adv/?eap=' . $post_id );
	}

	return $link;
}
Теперь при нажатии "Редактировать" откроется не форма в админке, а наша форма во фронте.

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

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

get_edit_post_link

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