How to show WordPress admin menus in a custom dashboard widget?

不问归期 提交于 2019-12-12 06:38:16

问题


I want to show WordPress administration menus in custom dashboard widgets. How to do it?


回答1:


Or just paste this tested solution in theme functions.php and modify. Then wherever you need you may call your admin setting by get_option()
corrected with input from b__ and tested again

function register_mysettings() {
   register_setting( 'michal-option-group', 'new_option_name' );
   register_setting( 'michal-option-group', 'some_other_option' );
}
add_action( 'admin_init', 'register_mysettings' );

function add_michal_dashboard_widget(){
 wp_add_dashboard_widget(
         'michal_dashboard_widget',         // slug.
         'Michal Dashboard Widget',         // title
         'michal_dashboard_widget_function' // widget code
         );  
}

function michal_dashboard_widget_function(){
   if (isset($_POST['new_option_name'])) update_option( 'new_option_name',   sanitize_text_field( $_POST['new_option_name'])); 
   if (isset($_POST['some_other_option'])) update_option( 'some_other_option', sanitize_text_field( $_POST['some_other_option'])); 
?> 

 <form method="post" action="<?php $_SERVER['PHP_SELF'] ?>">
 <?php settings_fields( 'michal-option-group' ); ?>
 <?php do_settings_sections( 'michal-option-group' ); ?>
 <table class="form-table">
    <tr valign="top">
    <th scope="row">New Option Name</th>
    <td><input type="text" name="new_option_name" value="<?php echo get_option('new_option_name'); ?>" /></td>
    </tr>

<tr valign="top">
<th scope="row">Some Other Option</th>
<td><input type="text" name="some_other_option" value="<?php echo get_option('some_other_option'); ?>" /></td>
 </tr>
</table>

<?php submit_button(); ?>
</form>
<?php       
} 

add_action( 'wp_dashboard_setup', 'add_michal_dashboard_widget' );



回答2:


First of all: you should create a dashboard widget. you can read more about how to do it here: Dashboard Widgets API

Now for showing the menu you should take a look at this post: Get all available admin pages in Wordpress

Good luck!



来源:https://stackoverflow.com/questions/22217831/how-to-show-wordpress-admin-menus-in-a-custom-dashboard-widget

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!