是否显示此自定义媒体上载Meta Box中的数据?

时间:2015-06-27 作者:Nilohn

这个插件在CMS上没有任何问题。现在我需要知道如何在我的帖子中正确显示它们。

自定义媒体上载元框插件。

$meta_box_media_upload = new Meta_Box_Media_Upload();

class Meta_Box_Media_Upload {

    function __construct() {
        add_action( \'add_meta_boxes\', array( $this, \'setup_box\' ) );
        add_action( \'save_post\', array( $this, \'save_box\' ), 10, 2 );
    }

    function setup_box() {
        add_meta_box( \'meta_box_id\', __( \'Meta Box Media Upload\', \'some-meta-box\' ), array( $this, \'meta_box_contents\' ), \'post\', \'side\' );
    }

    function meta_box_contents() {

        wp_enqueue_media();
        wp_enqueue_script( \'meta-box-media\', plugins_url(\'js/media.js\', __FILE__ ), array(\'jquery\') );

        wp_nonce_field( \'nonce_action\', \'nonce_name\' );

        // one or more
        $field_names = array( \'meta-box-media-name\' );

        foreach ( $field_names as $name ) {

            $value = $rawvalue = get_post_meta( get_the_id(), $name, true );

            $name = esc_attr( $name );
            $value = esc_attr( $name );

            echo "<input type=\'hidden\' id=\'$name-value\'  class=\'small-text\'       name=\'meta-box-media[$name]\'            value=\'$value\' />";
            echo "<input type=\'button\' id=\'$name\'        class=\'button meta-box-upload-button\'        value=\'Upload\' />";
            echo "<input type=\'button\' id=\'$name-remove\' class=\'button meta-box-upload-button-remove\' value=\'Remove\' />";

            $image = ! $rawvalue ? \'\' : wp_get_attachment_image( $rawvalue, \'full\', false, array(\'style\' => \'max-width:100%;height:auto;\') );

            echo "<div class=\'image-preview\'>$image</div>";

            echo \'<br />\';

        }

    }

    function save_box( $post_id, $post ) {

        if ( ! isset( $_POST[\'nonce_name\'] ) ) //make sure our custom value is being sent
            return;
        if ( ! wp_verify_nonce( $_POST[\'nonce_name\'], \'nonce_action\' ) ) //verify intent
            return;
        if ( defined(\'DOING_AUTOSAVE\') && DOING_AUTOSAVE ) //no auto saving
            return;
        if ( ! current_user_can( \'edit_post\', $post_id ) ) //verify permissions
            return;

        $new_value = array_map( \'intval\', $_POST[\'meta-box-media\'] ); //sanitize
        foreach ( $new_value as $k => $v ) {
            update_post_meta( $post_id, $k, $v ); //save
        }

    }

}
我有个关于meta key的问题\' ??? \' 价值如果我错了,请纠正我。

    <article class="post">

        <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail(); ?></a>
        <h2><?php the_title(); ?></h2>
        <p><?php the_content(); ?></p>

        // HERE....
        <img src="<?php echo get_post_meta( get_the_ID(), \' ??? \', true ); ?>" />

    </article>

1 个回复
SO网友:mmm

如果您的值包含引用,则必须使用“esc\\u attr”,例如

<?php echo esc_attr(get_post_meta(...));?>

结束

相关推荐

更新上传图片的metabox时出现问题

我创建了一个自定义帖子类型和元框,用于上载另一个图像。问题是,当我添加图像时,它会正确显示在后端的位置,当我更新它时,它也会显示相同的图像。但是当我回到帖子修改它时,我找不到图片,如果我更新帖子,那么就没有图片显示。<?php function hotels_meta_boxes() { add_meta_box( \'hotels_form\', \'Hotels - Détails\', \'hotels_form\', \'hotels\', \'normal\', \'