ポストにサイドバーを追加するためのメタボックスを作成しました。ユーザーがサイドバーのラジオボタンをチェックするかどうかに基づいてifステートメントを使用して、get_sidebar関数がポストテンプレートに追加されますが、それはまだありません。WordPressのメタボックス投稿を更新した後、チェックされたラジオボタンをチェックする方法
これまでmetaboxは、エディタ画面に表示さが、私はサイドバーのラジオボタンをチェックしたときに、私はポストを更新した後、それはオフに戻ります。
これは、私はポストを更新した後にチェックラジオボタンを維持するために使用していますものです。
$layout = $_POST["layout"];
<input type="radio" name="layout" <?php if (isset($layout) && $layout=="right-sidebar") echo "checked"; ?> value="right-sidebar">
これは私がmetaboxを作成および更新するために使用しています完全なコードです:
<?php
function hill_add_layout_metabox() {
add_meta_box(
'layout_metabox',
'Layout1',
'hill_callback_layout_matabox',
'post',
'side',
'high'
);
}
add_action('add_meta_boxes', 'hill_add_layout_metabox');
function hill_callback_layout_matabox() {
$layout = $_POST["layout"];
?>
<input type="radio" name="layout" <?php if (isset($layout) && $layout=="right-sidebar") echo "checked"; ?> value="right-sidebar"> Right Sidebar
<?php
}
function hill_save_layout_metabox($post_id) {
$is_autosave = wp_is_post_autosave ($post_id);
$is_revision = wp_is_post_revision ($post_id);
if ($is_autosave || $is_revision) {
return;
}
$layout = $_POST["layout"];
if (isset($layout) && $layout=="right-sidebar") {
update_post_meta($post_id, $layout);
}
}
add_action('save_post', 'hill_save_layout_metabox');
?>
おかげで私は、私はあなたが提案し、何も変わっていないものをやってみました@Billkこのサイトに –