사용자 지정 대시 보드 위젯에 WordPress 관리 메뉴를 표시하려고합니다. 그것을하는 방법?사용자 정의 대시 보드 위젯에 WordPress 관리자 메뉴를 표시하는 방법은 무엇입니까?
0
A
답변
0
우선 : 대시 보드 위젯을 만들어야합니다. 당신은 여기에서 작업을 수행하는 방법에 대한 자세한 내용을보실 수 있습니다 : 이 Dashboard Widgets API
이제 메뉴를 표시하기위한 당신이이 포스트에서 살펴 보셔야합니다 : Get all available admin pages in Wordpress
행운을 빕니다!
1
또는이 테스트 된 솔루션을 테마 functions.php에 붙여넣고 수정하십시오. 그런 다음 당신이 필요로하는 곳에 당신은 좋은 생각이 ...`admin_init`가 아닌
함수 내부
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');
기능을 b__의 의견을 수정하고 다시 테스트() get_option하여 관리자 설정을 호출 할 수 있으며, 콜백 외부해야 'michal_dashboard_widget_function'. 또한,'admin_init'는 오직 admin에서 실행되기 때문에'is_admin()'을 검사 할 필요가 없습니다. – brasofilo
사실, 정확합니다 –
가끔은 내가 너무 바보 같은 에로스가 되려고 노력하고있어. 고마워. b__ –