为什么我的get_post_meta()不起作用? (WordPress的)

时间:2016-02-17 19:23:16

标签: php wordpress-theming

我正在制作一个wordpress主题,你应该能够说明你想在特定页面上显示哪些类别。要做到这一点,我认为添加元框将是最好的选择。只是现在我似乎无法从元框中获取信息。它可能非常简单,但我希望你能给我这个答案,因为我已经挣了好几个小时。 :P

这是我尝试获取它的地方:

<h3><?php echo get_post_meta(get_the_id(), "meta-box-dropdown", true); ?></h3>

这是保存功能:

function save_custom_meta_box($post_id, $post, $update)
{   
    if (!isset($_POST["meta-box-nonce"]) || !wp_verify_nonce($_POST["meta-box-nonce"], basename(__FILE__)))
        return $post_id;

    if(!current_user_can("edit_post", $post_id))
        return $post_id;

    if(defined("DOING_AUTOSAVE") && DOING_AUTOSAVE)
        return $post_id;

    $slug = "post";
    if($slug != $post->post_type)
        return $post_id;

    $meta_box_dropdown_value = "";

    if(isset($_POST["meta-box-dropdown"]))
    {
        $meta_box_dropdown_value = $_POST["meta-box-dropdown"];
    }   
    update_post_meta($post_id, "meta-box-dropdown", $meta_box_dropdown_value);
}

这是元数据代码本身:

//Register custom meta boxes
function register_custom_meta_boxes() {
    //Pages dropdown function
    function dropdown_pages_meta() {
            wp_nonce_field(basename(__FILE__), "meta-box-nonce");
    ?>
        <div>
            <label for="meta-box-dropdown">Dropdown</label>
            <select name="meta-box-dropdown">
                <?php 
                    $option_values = get_categories( array(
                        'order'     => 'ASC',
                        'fields'    => 'names'
                    )); 

                    foreach($option_values as $key => $value) 
                    {
                        if($value == get_post_meta($object->ID, "meta-box-dropdown", true))
                        {
                            ?>
                                <option selected><?php echo $value; ?></option>
                            <?php    
                        }
                        else
                        {
                            ?>
                                <option><?php echo $value; ?></option>
                            <?php
                        }
                    }
                ?>
            </select>
        </div>
    <?php   
    }

0 个答案:

没有答案