2015-08-05 2 views

ответ

0

Я создал следующий код для доступа к параметрам виджетов через ajax.

add_action('wp_ajax_get_sidebar_widget_info', 'get_sidebar_widget_info'); 
add_action('wp_ajax_nopriv_get_sidebar_widget_info', 'get_sidebar_widget_info'); 

function get_sidebar_widget_info(){ 
header('Content-Type: application/Json'); 
global $wp_registered_widgets; 

$response = array(); 
$sidebars_widget_list = get_option('sidebars_widgets'); 
unset($sidebars_widget_list['array_version']); 

foreach($sidebars_widget_list as $sidebar_id => $widget_list){ 
    foreach($widget_list as $widget_id){ 
     $widget_option_name = $wp_registered_widgets[$widget_id]['callback'][0]->option_name; 
     $widget_number = $wp_registered_widgets[$widget_id]['params'][0]['number']; 
     $widget_options = get_option($widget_option_name); 
     $response[$sidebar_id]['widgets'][$widget_id] = $widget_options[$widget_number]; 
    } 
} 

echo json_encode($response); 
wp_die(); 

}

Смежные вопросы