WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

post_updated_messages хук-фильтр . WP 3.0

Позволяет изменять сообщения выводимые при обновлении или добавлении записи (поста).

При редактировании записи вверху экрана выводятся сообщения вроде: запись добавлена, запись обновлена и т.д. Этот хук позволяет дополнять или полностью заменять такие сообщения.

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

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

add_filter( 'post_updated_messages', '____filter_function_name' );
function ____filter_function_name( $messages ) {
	// Фильтр...

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

Массив всех возможных сообщений. Массив разбит на «подмассивы»: post, page и attachment. И выглядит так:

Для русской локали:

Array
(
	[post] => Array
		(
			[0] => 
			[1] => Запись обновлена. <a href="http://site.ru/foo/">Просмотреть запись</a>
			[2] => Поле изменено.
			[3] => Поле удалено.
			[4] => Запись обновлена.
			[5] => 
			[6] => Запись опубликована. <a href="http://site.ru/foo/">Просмотреть запись</a>
			[7] => Запись сохранена.
			[8] => Запись отправлена. <a target="_blank" href="http://site.ru/foo/?preview=true">Просмотреть</a>
			[9] => Запись запланирована на <strong>28.05.2016 03:43</strong>. <a target="_blank" href="http://site.ru/foo/">Просмотреть</a>
			[10] => Черновик записи обновлён. <a target="_blank" href="http://site.ru/foo/?preview=true">Просмотреть</a>
		)

	[page] => Array
		(
			[0] => 
			[1] => Страница обновлена. <a href="http://site.ru/foo/">Открыть страницу</a>
			[2] => Поле изменено.
			[3] => Поле удалено.
			[4] => Страница обновлена.
			[5] => 
			[6] => Страница опубликована. <a href="http://site.ru/foo/">Открыть страницу</a>
			[7] => Страница сохранена.
			[8] => Страница отправлена. <a target="_blank" href="http://site.ru/foo/?preview=true">Просмотреть</a>
			[9] => Страница запланирована на <strong>28.05.2016 03:43</strong>. <a target="_blank" href="http://site.ru/foo/">Просмотреть</a>
			[10] => Черновик страницы обновлён. <a target="_blank" href="http://site.ru/foo/?preview=true">Просмотреть</a>
		)

	[attachment] => Array
		(
			[1] => Медиафайл обновлён.
			[2] => Медиафайл обновлён.
			[3] => Медиафайл обновлён.
			[4] => Медиафайл обновлён.
			[5] => Медиафайл обновлён.
			[6] => Медиафайл обновлён.
			[7] => Медиафайл обновлён.
			[8] => Медиафайл обновлён.
			[9] => Медиафайл обновлён.
			[10] => Медиафайл обновлён.
		)

)

Для англ локали:

Array
(
	[post] => Array
		(
			[0] => 
			[1] => Post updated. <a href="http://site.ru/foo/">View post</a>
			[2] => Custom field updated.
			[3] => Custom field deleted.
			[4] => Post updated.
			[5] => 
			[6] => Post published. <a href="http://site.ru/foo/">View post</a>
			[7] => Post saved.
			[8] => Post submitted. <a target="_blank" href="http://site.ru/foo/?preview=true">Preview post</a>
			[9] => Post scheduled for: <strong>May 28, 2016 @ 03:20</strong>. <a target="_blank" href="http://site.ru/foo/">Preview post</a>
			[10] => Post draft updated. <a target="_blank" href="http://site.ru/foo/?preview=true">Preview post</a>
		)

	[page] => Array
		(
			[0] => 
			[1] => Page updated. <a href="http://site.ru/foo/">View page</a>
			[2] => Custom field updated.
			[3] => Custom field deleted.
			[4] => Page updated.
			[5] => 
			[6] => Page published. <a href="http://site.ru/foo/">View page</a>
			[7] => Page saved.
			[8] => Page submitted. <a target="_blank" href="http://site.ru/foo/?preview=true">Preview page</a>
			[9] => Page scheduled for: <strong>May 28, 2016 @ 03:20</strong>. <a target="_blank" href="http://site.ru/foo/">Preview page</a>
			[10] => Page draft updated. <a target="_blank" href="http://site.ru/foo/?preview=true">Preview page</a>
		)

	[attachment] => Array
		(
			[1] => Media file updated.
			[2] => Media file updated.
			[3] => Media file updated.
			[4] => Media file updated.
			[5] => Media file updated.
			[6] => Media file updated.
			[7] => Media file updated.
			[8] => Media file updated.
			[9] => Media file updated.
			[10] => Media file updated.
		)

)

Примеры

#1 Дополним сообщение при создании записи.

При публикации поста выдаётся сообщение Запись опубликована + ссылка на неё. Этот пример добавляет к этой записи текст:

add_filter('post_updated_messages', function($messages){
	$messages['post'][6] .= ' Дополнительное сообщение.'; 

	return $messages;
});

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

В файле: /wp-admin/edit-form-advanced.php
post_updated_messages
wp-admin/edit-form-advanced.php 183
$messages = apply_filters( 'post_updated_messages', $messages );

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

Не используется.
Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться