Intereting Posts
Как: несколько кнопок загрузки WordPress на JQuery на той же странице параметров? Плагин генерировал х символов неожиданного вывода, $ wpdb не определен Как использовать current_post для открытия нового неупорядоченного списка каждые пять сообщений Список последних сообщений в WP-Admin Как показать все фильтры с виджетами сетевого фильтра woocommerce Возможность чтения только для пользовательских сообщений в области администратора menu_order не работает со слизнями, которые начинаются с admin.php Визуально изменить тему через строку запроса? Выберите элемент формы, не сохраняющий параметры плагина У меня есть 2 плагина, используя один и тот же wp_login action hook, и один не работает Функция для возврата значений из метаболизма Параметры темы WordPress и значение по умолчанию для сериализации данных Список категорий и выделение текущей категории Код, который я размещаю в wp_footer, выходит за рамки всего HTML! Переключить язык сайта на en_ZA

Как получить идентификатор области виджета (идентификатор боковой панели) в widget_update_callback ()?

Req : Мне нужно обновить поля в пользовательской таблице при изменении содержимого из определенного действия сохранения виджета.

Что я сделал: я использую «widget_update_callback», чтобы сделать трюк,

Проблема: этот крючок будет запущен при сохранении действий каждого текстового виджета в моей теме, я хочу сделать то же самое действие только при обновлении конкретного виджета? Любые идеи, как я могу это достичь?

Я думаю, что если я могу получить идентификатор боковой панели, я могу написать условие if для выполнения действия только для боковой панели

Это мой код

add_action( 'wp_ajax_nopriv_announcement_remove_flag', 'announcement_remove_flag' ); add_action( 'wp_ajax_announcement_remove_flag', 'announcement_remove_flag' ); add_filter( 'widget_update_callback', function( $instance, $new, $old, $obj ) { // if( 'text' === $obj->id_base && ! empty( $instance['text'] ) ) // { // // Warning this overrides the widget instance text input: // $instance['text'] = 'override text'; // } // global $wpdb; $users = get_users(); //print_r($users); foreach ($users as $user) { # code... echo $user->ID.'</br>'; $member_id=$user->ID; $result = $wpdb->get_var('SELECT count(*) FROM mm_custom_field_data WHERE custom_field_id=31 and user_id ='.$member_id); if($result !=0){ $result = $wpdb->update( 'mm_custom_field_data', array( 'custom_field_id' => '31', 'user_id' => $member_id, 'value' => 'Yes', 'date_added' => '', 'last_updated' => '', ), array( "user_id" => $member_id, 'custom_field_id' => '31', ) ); } else{ $wpdb->insert('mm_custom_field_data', array( 'custom_field_id' => '31', 'user_id' => $member_id, 'value' => 'Yes', 'date_added' => '', 'last_updated' => '', ), array('%s','%d','%s','%s','%s') ); } } return $instance; }, 10, 4 ); 

Solutions Collecting From Web of "Как получить идентификатор области виджета (идентификатор боковой панели) в widget_update_callback ()?"