wp_removable_query_args()

Функция возвращает список GET-переменных, которые WordPress автоматически удаляет из строки URL.

Что это значит?

К примеру, если вы перейдёте на страницу настроек WordPress, например та же страница Настройки > Общее и нажмёте кнопку сохранения изменений, то страница обновится, и у вас появится уведомление, что настройки сохранены. А как это уведомление отображается? Только благодаря GET-параметру ?settings-updated=true, который WordPress тут же предусмотрительно удаляет при помощи JavaScript, чтобы не захламлять строку браузера.

И функция wp_removable_query_args() по сути хранит одномерный массив таких параметров.

wp_removable_query_args()

Параметры

У функции нет аргументов.

Примеры

1. Список стандартных GET-переменных

print_r( wp_removable_query_args() );
/*
Array
(
    [0] => activate
    [1] => activated
    [2] => admin_email_remind_later
    [3] => approved
    [4] => core-major-auto-updates-saved
    [5] => deactivate
    [6] => delete_count
    [7] => deleted
    [8] => disabled
    [9] => doing_wp_cron
    [10] => enabled
    [11] => error
    [12] => hotkeys_highlight_first
    [13] => hotkeys_highlight_last
    [14] => ids
    [15] => locked
    [16] => message
    [17] => same
    [18] => saved
    [19] => settings-updated
    [20] => skipped
    [21] => spammed
    [22] => trashed
    [23] => unspammed
    [24] => untrashed
    [25] => update
    [26] => updated
    [27] => wp-post-new-reload
    [28] => wc_hpos_sync_now
) */

Не знаете, куда вставлять код?

Хуки

removable_query_args

О, а благодаря этому хуку вы можете добавить свои собственные GET-параметры в этот массив (или удалить какие-то из стандартных).

И да, ваши произвольные параметры WordPress будет так же обрабатываться. Например:

add_action( 'removable_query_args', function( $removable_query_args ) {
 
	$removable_query_args[] = 'misha';
	return $removable_query_args;
 
} );

Что это значит? А то, что GET-параметр misha теперь автоудаляемый! И если вы добавите в браузерной строке ?misha=что угодно в админке, то это будет удалено.

Также, если вы например не хотите, чтобы параметр settings-updated автоудалялся, можно удалить его из массива:

add_action( 'removable_query_args', function( $removable_query_args ) {
 
	if( ( $key = array_search( 'settings-updated', $removable_query_args ) ) !== false) {
		unset( $removable_query_args[ $key ] );
    		$removable_query_args = array_values( $removable_query_args );
	}
	return $removable_query_args;
 
} );

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал