Срабатывает при обработке пользовательского действия через wp-admin/network/edit.php в админке сети WordPress Multisite.
Срабатывает при обработке пользовательского действия через wp-admin/network/edit.php в админке сети WordPress Multisite.
Подходит для сохранения настроек сетевого плагина и других операций в админке сети.
Перед этим событием срабатывает wpmuadminedit.
После выполнения callback WordPress перенаправляет пользователя на главную страницу админки сети. Чтобы вернуть его на другую страницу, выполните свой редирект и завершите запрос через exit.
add_action( 'network_admin_edit_(action)', 'wp_kama_network_admin_edit_action' );
/**
* Function for `network_admin_edit_(action)` action-hook.
*
* @return void
*/
function wp_kama_network_admin_edit_action(){
// action...
}Динамическая часть имени хука. Берётся из $_GET['action'] - из параметра action в URL.
Например, для edit.php?action=my_action сработает network_admin_edit_my_action.
Даже при отправке формы методом POST указывайте action в URL формы. Скрытое поле <input name="action">, отправленное только в POST, не задаёт имя этого события.
В callback этот параметр не передаётся. У события нет аргументов.
Добавим страницу «Настройки плагина» в раздел «Настройки» админки сети. Форма отправит запрос в network/edit.php, а callback сохранит опцию текущей сети через update_site_option().
Код можно разместить в плагине, активированном для сети, или в MU-плагине.
add_action( 'network_admin_menu', 'kama_add_network_settings_page' );
add_action( 'network_admin_edit_my_action', 'kama_save_network_settings' );
function kama_add_network_settings_page() {
add_submenu_page(
'settings.php',
'Настройки плагина',
'Настройки плагина',
'manage_network_options',
'kama-network-settings',
'kama_render_network_settings_page'
);
}
function kama_render_network_settings_page() {
if ( ! current_user_can( 'manage_network_options' ) ) {
wp_die( 'Недостаточно прав.' );
}
$enabled = get_site_option( 'kama_feature_enabled', false );
$form_url = network_admin_url( 'edit.php?action=my_action' );
?>
<div class="wrap">
<h1>Настройки плагина</h1>
<form method="post" action="<?php echo esc_url( $form_url ); ?>">
<?php wp_nonce_field( 'kama_save_network_settings' ); ?>
<label>
<input type="checkbox" name="kama_feature_enabled" value="1"
<?php checked( $enabled ); ?>>
Включить функцию для сети
</label>
<?php submit_button(); ?>
</form>
</div>
<?php
}
function kama_save_network_settings() {
if ( ! current_user_can( 'manage_network_options' ) ) {
wp_die( 'Недостаточно прав.' );
}
if ( 'POST' !== $_SERVER['REQUEST_METHOD'] ) {
wp_die( 'Допустим только POST-запрос.', '', [ 'response' => 405 ] );
}
check_admin_referer( 'kama_save_network_settings' );
$enabled = isset( $_POST['kama_feature_enabled'] )
&& '1' === $_POST['kama_feature_enabled'];
update_site_option( 'kama_feature_enabled', $enabled );
wp_safe_redirect(
network_admin_url( 'settings.php?page=kama-network-settings' )
);
exit;
}Регистрация события должна выполняться и при запросе к network/edit.php. Поэтому не размещайте add_action() внутри callback, который только выводит страницу настроек.
| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | Хук-событие WordPress: admin_init | 0 | 23.68 | 20-09-2026 |
| 2 | Хук-событие WordPress: edit_post_(post_type) | 0 | 18.33 | 22-09-2026 |
| 3 | Хук-событие WordPress: admin_head | 0 | 23.68 | 20-09-2026 |
| 4 | Хук-событие WordPress: wp_insert_post | 0 | 19.09 | 20-09-2026 |
| 5 | Хук-Фильтр WordPress: paginate_links | 0 | 17.69 | 20-09-2026 |
| 6 | Хук-Фильтр WordPress: wp_title | 0 | 18.33 | 20-09-2026 |
| 7 | Хук-Фильтр WordPress: post_type_link | 0 | 21.11 | 21-09-2026 |
| 8 | Хук-Фильтр WordPress: get_the_excerpt | 0 | 19.09 | 22-09-2026 |
| 9 | Хук-событие WordPress: restrict_manage_posts | 0 | 12.4 | 22-09-2026 |
| 10 | Хук-событие WordPress: in_widget_form | 0 | 16.25 | 20-09-2026 |