вы сначала код в теги code тут запихните, а то неясно ничего.
к тому же — где код самого метабокса?
functions.php
<?php
/********************/
/*Define some constants*/
/********************/
define('THEMEROOT', get_stylesheet_directory_uri());
define('IMAGES',THEMEROOT . '/img');
define('CSS',THEMEROOT . '/css');
define('JS',THEMEROOT . '/js');
/********************/
/*Add menu_class*/
/********************/
function register_my_menus()
{
register_nav_menus(array(
'main-menu' => 'Main Menu'
));
}
add_action('init', 'register_my_menus');
/********************/
/*Add content to the page*/
/********************/
add_action('add_meta_boxes','custom_add_meta_box');
function custom_add_meta_box() {
add_meta_box(
'page_content', //id
'Наполнение страницы', //Title
'custom_display_meta_box', //Callback
'post', //Post type
'normal' //Position
);
}
function custom_display_meta_box($post){
$header_h1 = get_post_meta($post->ID,'header_h1',true);
$simple_parag = get_post_meta($post->ID,'simple_parag',true);
//Security check
wp_nonce_field('portfolio_meta_nonce','portfolio_nonce');
//Display fields
?>
<p>
<label for="header_h1">Заголовок H1:</label>
<textarea class="widefat" name="header_h1" id="header_h1" cols="30" rows="1"><?php echo $header_h1; ?></textarea>
<p>
<p>
<label for="simple_parag">Область текста:</label>
<textarea class="widefat" name="simple_parag" id="simple_parag" cols="30" rows="10"><?php echo $simple_parag; ?></textarea>
<p>
<?php
}
add_action('save_post','save_page_content');
function save_page_content($post_id){
//Автосохранение значений формы наполнения контента
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return;
// Проверяем задан ли параметр nonce
if (!isset($_POST['portfolio_nonce']) || !wp_verify_nonce($_POST['portfolio_nonce'], 'portfolio_meta_nonce')) return;
//Сохраняем изменяем данные поста
if (isset($_POST['header_h1']) && $_POST['header_h1'] != ''){
update_post_meta($post_id, 'header_h1', esc_html($_POST['header_h1']));
}
if (isset($_POST['simple_parag']) && $_POST['simple_parag'] != ''){
update_post_meta($post_id, 'simple_parag', esc_html($_POST['simple_parag']));
}
}
?>
-
Ответ изменён 6 лет, 8 месяцев назад пользователем Dr.Hofmann.
у меня данный код все сохраняет.
Странно на хостинге проделал установку вордпресса и добавил свой шаблон.
Тоже самое, не сохраняет.
В какой таблице какой столбец должно происходить сохранение?
Как отладку можно сделать? или увидеть почему в моем случае не сохраняет?
-
Ответ изменён 6 лет, 8 месяцев назад пользователем Dr.Hofmann.
чего не знаю, того не знаю.
стандартный тип записей post, все сохраняется и потом выводится.
Жесть какая-то переписал код заново, заработало!
Бред какой-то
Появились ошибки на серваке в phpadmin:
Notice in ./libraries/tbl_columns_definition_form.inc.php#231
Undefined index: Extra
Backtrace
./libraries/controllers/table/TableStructureController.php#512: include(./libraries/tbl_columns_definition_form.inc.php)
./libraries/controllers/table/TableStructureController.php#178: PMA\libraries\controllers\table\TableStructureController->displayHtmlForColumnChange(
array,
string 'tbl_structure.php',
)
./tbl_structure.php#47: PMA\libraries\controllers\table\TableStructureController->indexAction()
Notice in ./libraries/tbl_columns_definition_form.inc.php#238
Undefined index: Default
Backtrace
./libraries/controllers/table/TableStructureController.php#512: include(./libraries/tbl_columns_definition_form.inc.php)
./libraries/controllers/table/TableStructureController.php#178: PMA\libraries\controllers\table\TableStructureController->displayHtmlForColumnChange(
array,
string 'tbl_structure.php',
)
./tbl_structure.php#47: PMA\libraries\controllers\table\TableStructureController->indexAction()
Notice in ./libraries/tbl_columns_definition_form.inc.php#240
Undefined index: Default
Backtrace
./libraries/controllers/table/TableStructureController.php#512: include(./libraries/tbl_columns_definition_form.inc.php)
./libraries/controllers/table/TableStructureController.php#178: PMA\libraries\controllers\table\TableStructureController->displayHtmlForColumnChange(
array,
string 'tbl_structure.php',
)
./tbl_structure.php#47: PMA\libraries\controllers\table\TableStructureController->indexAction()
Notice in ./libraries/tbl_columns_definition_form.inc.php#241
Undefined index: Null
Backtrace
./libraries/controllers/table/TableStructureController.php#512: include(./libraries/tbl_columns_definition_form.inc.php)
./libraries/controllers/table/TableStructureController.php#178: PMA\libraries\controllers\table\TableStructureController->displayHtmlForColumnChange(
array,
string 'tbl_structure.php',
)
./tbl_structure.php#47: PMA\libraries\controllers\table\TableStructureController->indexAction()
Notice in ./templates/columns_definitions/column_attributes.phtml#148
Undefined index: Field
Backtrace
./libraries/Template.php#152: include(./templates/columns_definitions/column_attributes.phtml)
./templates/columns_definitions/table_fields_definitions.phtml#127: PMA\libraries\Template->render(array)
./libraries/Template.php#152: include(./templates/columns_definitions/table_fields_definitions.phtml)
./templates/columns_definitions/column_definitions_form.phtml#82: PMA\libraries\Template->render(array)
./libraries/Template.php#152: include(./templates/columns_definitions/column_definitions_form.phtml)
./libraries/tbl_columns_definition_form.inc.php#400: PMA\libraries\Template->render(array)
./libraries/controllers/table/TableStructureController.php#512: include(./libraries/tbl_columns_definition_form.inc.php)
./libraries/controllers/table/TableStructureController.php#178: PMA\libraries\controllers\table\TableStructureController->displayHtmlForColumnChange(
array,
string 'tbl_structure.php',
)
./tbl_structure.php#47: PMA\libraries\controllers\table\TableStructureController->indexAction()
-
Ответ изменён 6 лет, 8 месяцев назад пользователем Dr.Hofmann.