나는 wordpress에서 맞춤 메타 박스를 사용하려고합니다. 현재로서는 특정 콘텐츠를 켜기위한 스위치로 사용할 수있는 확인란이있는 메타 상자를 만드는 것이 내 목표입니다. 난 작품을 함께 조각을 시도하는 웹을 샅샅이 조사하고 지금까지 내가 확인란을 사용하여 메타 상자를 생성 할 수있는 곳까지 충분히 얻었지만, 점검 된 값은 일부 루프를 수행하지 않습니다. 이유. 배열을 출력하여 아무 것도 얻을 수 없는지 확인하려고하면 배열이 비어 있습니다. 나는 많은 것들을 살펴 보았고 몇몇 메타 박스 생성 스크립트를 시도했지만, 그들 중 어떤 것도 작동시키지 못합니다. 이 방법이 가장 유망한 것으로 보였지만 지금은 붙어 있습니다. 내가 여기서 빠뜨린 중요한 것이있어? 마치 데이터가 저장되지 않는 것입니다. 아래에 코드가 포함되어 있습니다 :어떻게 wordpress 메타 박스의 체크 박스 값을 사용합니까?
메타 박스 기능. functions.php에 있습니다 :
// Checkbox Meta
add_action("admin_init", "checkbox_init");
function checkbox_init(){
add_meta_box("checkbox", "Checkbox", "checkbox", "post", "normal", "high");
}
function checkbox(){
global $post;
$custom = get_post_custom($post->ID);
$field_id = $custom["field_id"][0];
echo '<label>Check for yes</label>';
$field_id_value = get_post_meta($post->ID, 'field_id', true);
if($field_id_value == "yes") {
$field_id_checked = 'checked="checked"';
}
echo ' <input type="checkbox" name="field_id" value="yes" '.$field_id_checked.' />';
}
// Save Meta Details
add_action('save_post', 'save_details');
function save_details(){
global $post;
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) {
return $post->ID;
}
update_post_meta($post->ID, "field_id", $_POST["field_id"]);
}
체크 박스가 선택되었을 때 내용을 출력하는 데 사용되는 코드입니다. 이것은 functions.php에도 있습니다. 이 함수는 루프에서 사용됩니다.
function custom_content($id) {
$field_id = get_post_meta($id, 'field_id', true);
if($field_id == yes) {
echo "It works!";
}
else{
echo 'Not working...';
}
}
그리고 템플릿에 functions.php에 함수
function custom_content() {
if(isset($_POST['field_id']) && $_POST['field_id'] == 'yes') {
echo "It works!";
}
}
오 와우, 감사이의 톤. 너는 내가이 일을하기 위해 노예에 얼마나 오래 있었는지 모른다. 완벽하게 작동합니다! – Orophen