0
안녕하세요, 저는 설정 API로 작업하는 것을 배우고 있습니다. 동일한 페이지의 섹션으로 이동하는 것처럼 보입니다. 첫 번째 섹션은 perfetly로 작동하고 daya는 저장하지만 두 번째는 저장합니다. 에 오류가 저장 표시Wordpress Settings API 두 섹션 동일한 페이지 저장 오류
<?php
/* ------------------------------------------------------------------------ *
* REGISTER MENU AND SUBMENU
* ------------------------------------------------------------------------ */
function thanathos_theme_menu(){
add_menu_page('Thanathos',
'Thanathos',
'administrator',
'thanathos_menu_id',
'thanathos_display'
);
}
add_action('admin_menu' ,'thanathos_theme_menu');
/*------------------------------------------------------------------------ *
* Social & Logo Options
* ------------------------------------------------------------------------ */
function thanathos_initialize_frontpage_options(){
if(false == get_option('thanathos_front_page_options')){
add_option('thanathos_front_page_options');
}
add_settings_section(
'thanathos_front_page',
'',
'thanathos_front_page_section_callback',
'thanathos_front_page_options'
);
add_settings_field(
'logo_path',
'Logo Path',
'thanathos_logo_path_url_callback',
'thanathos_front_page_options',
'thanathos_front_page'
);
register_setting(
'thanathos_front_page_options',
'thanathos_front_page_options',
'thanathos_front_page_options_sanitize'
);
}
add_action('admin_init', 'thanathos_initialize_frontpage_options');
function thanathos_front_page_section_callback(){}
function thanathos_logo_path_url_callback(){
$options = get_option('thanathos_front_page_options');
echo '<input type="text" id="logo" name="thanathos_front_page_options[logo_path]" value="' . $options['logo_path'] . '" />';
}
function thanathos_front_page_options_sanitize($input){
$output = array();
foreach ($input as $key => $val){
if(isset($input[$key])){
$output[$key] = strip_tags(stripslashes($input[$key]));
}
}
return apply_filters('thanathos_front_page_options' , $output , $input);
}
/* ------------------------------------------------------------------------ *
* Slider Options
* ------------------------------------------------------------------------ */
function thanathos_front_page_slider_options(){
if(false == get_option('thanathos_front_page_slider')){
add_option('thanathos_front_page_slider');
}
add_settings_section('thanathos_front_page_slider',
'',
'thanathos_front_page_slider_callback',
'thanathos_display',
'thanathos_front_page_slider'
);
}
add_action('admin_init', 'thanathos_front_page_slider_options');
function thanathos_front_page_slider_callback(){}
/* ------------------------------------------------------------------------ *
* Display on Thanathos Menu Page
* ------------------------------------------------------------------------ */
function thanathos_display(){
?> <style>
fieldset{
border:1px solid #ddd;
margin-top:20px;
padding-bottom: 20px;
}
legend{
margin-left:5px;
padding:0 5px;
color:#2481C6;
text-transform:uppercase;
}
p.submit{
margin-left: 10px;
}
td input{
width:360px;
}
</style>
<div class="wrap">
<div id="icon-themes" class="icon32"></div>
<h2>Thanathos General Options</h2>
<?php settings_errors(); ?>
<form method="post" action="options.php">
<fieldset>
<legend><strong>Logo and Social Options</strong></legend>
<?php
settings_fields('thanathos_front_page_options');
do_settings_sections('thanathos_front_page_options');
?>
</fieldset>
<?php submit_button(); ?>
</form>
<form method="post" action="options.php">
<fieldset>
<legend><strong>Slider Options</strong></legend>
<?php
settings_fields('thanathos_front_page_slider');
do_settings_sections('thanathos_front_page_slider');
?>
</fieldset>
<?php submit_button(); ?>
</form>
</div>
<?php
}
?>
이 무엇 다음 같은 페이지에 두 개의 섹션을 추가 corect approch가 아닌 경우 :
Options Page not Found
이 내 전체 옵션 페이지의 코드는?