页面的元框中下拉的CPT帖子未返回帖子ID

时间:2015-09-28 作者:artofbw

我在显示所选帖子的ID时遇到问题。你们能帮忙吗?谢谢

以下功能

add_action( \'add_meta_boxes\', \'cd_meta_box_add\' );
function cd_meta_box_add()
{
    add_meta_box( \'my-meta-box-id\', \'My First Meta Box\', \'cd_meta_box_cb\', \'page\', \'side\', \'high\' );
}

function cd_meta_box_cb( $post )
{
$values = get_post_custom( $post->ID );
        $selected = isset( $values[\'my_meta_box_select\'] ) ? esc_attr( $values[\'my_meta_box_select\'][0] ) : ”;
    ?>
    <p>
        <label for="my_meta_box_select">Select which case study this logo will link to when it is clicked:<br /><br /></label>
        <select name="my_meta_box_select" id="my_meta_box_select" style="width:100%;">
            <option value="No case study">No case study</option>
                <?php
                $casestudies = array( \'post_type\' => \'contact-info\', \'orderby\' => \'title\', \'order\' => \'asc\', \'numberposts\' => -1);
                $casestudiesloop = new WP_Query( $casestudies );
                while ( $casestudiesloop->have_posts() ) : $casestudiesloop->the_post();
                    ?> <option value="<?php the_title(); ?>" <?php selected( $selected, get_the_title() ); ?> ><?php the_title(); ?></option>
            <?php
                endwhile;
                    ?>
        </select>
    </p>
    <input type="hidden" name="meta_box_nonce" id="meta_box_nonce" value="<?php echo wp_create_nonce( \'my_meta_box_nonce\' ); ?>" />
    <?php
}

add_action( \'save_post\', \'cd_meta_box_save\' );
function cd_meta_box_save( $post_id )
{
if( defined( \'DOING_AUTOSAVE\' ) && DOING_AUTOSAVE ) return;

if( !isset( $_POST[\'meta_box_nonce\'] ) || !wp_verify_nonce( $_POST[\'meta_box_nonce\'], \'my_meta_box_nonce\' ) ) return;

if( !current_user_can( \'edit_post\', $post_id ) ) return;

if( isset( $_POST[\'my_meta_box_select\'] ) )
    update_post_meta( $post_id, \'my_meta_box_select\', esc_attr( $_POST[\'my_meta_box_select\'] ) );
}
所以,当我得到get\\u post\\u meta($get\\u post\\u ID())时;它返回

array(8) { ["_edit_lock"]=> array(1) { [0]=> string(12) "1443437050:2" } ["_edit_last"]=> array(1) { [0]=> string(1) "2" } ["_wp_page_template"]=> array(1) { [0]=> string(30) "templates/company-vehicles.php" } ["_my_meta_value_key"]=> array(1) { [0]=> string(3) "asd" } ["meta-box-text"]=> array(1) { [0]=> string(0) "" } ["meta-box-dropdown"]=> array(1) { [0]=> string(1) "3" } ["meta-box-checkbox"]=> array(1) { [0]=> string(4) "true" } ["my_meta_box_select"]=> array(1) { [0]=> string(37) "Dział marketingu i Realizacji Usług" } }
“Działmarketingu i Realizacji Usług”是选中的元素名称,但我还需要它返回它的ID,如Działmarketingu i Realizacji Usług->ID。

1 个回复
SO网友:s_ha_dum

如果我误解了这个问题,请原谅我,但是。。。

所以,当我get_post_meta( $get_post_ID());

。。。您已经通过$get_post_ID() (我相信这是一个BuddyPress函数)你没有吗?如果是这样的话,你就把事情弄得比需要的复杂得多了。get_post_meta() 仅返回元数据。考虑到您已经拥有了使用该函数所需的ID,因此它也无需吐回ID。

相关推荐

在短码中加载带有ID的自定义帖子类型

我第一次提出了一个主题。我为横幅/行动调用创建了一个自定义的帖子类型,我想在不同的帖子中使用一个快捷码来包含这些横幅/行动调用。短代码应如下所示:[banner id=123].到目前为止,所有的横幅都会显示出来,我的快捷码参数不会过滤结果。我的失败在哪里? function mrt_shortcode_banner( $atts ) { // Attributes $atts = shortcode_atts( array(