metabox - $post->ID incorrect within meta box

I have a meta box and I am trying to get the current post id however I am getting the ID of a different post. Is there a

I have a meta box and I am trying to get the current post id however I am getting the ID of a different post. Is there another way to get the ID?

function global_notice_meta_box() {

    $screens = array( 'avent_event' );

    foreach ( $screens as $screen ) {
        add_meta_box(
            'global-notice',
            __( 'Event Attendees', 'sitepoint' ),
            'global_notice_meta_box_callback',
            $screen
        );
    }
}

add_action( 'add_meta_boxes', 'global_notice_meta_box' );


function global_notice_meta_box_callback( $post ) {

    wp_reset_postdata();

    // 1st Method - Declaring $wpdb as global and using it to execute an SQL query statement that returns a PHP object
    global $wpdb;
    $results = $wpdb->get_results( 'SELECT * FROM avent_event_guestlist WHERE event_id = '.$post->ID, OBJECT );

    print_r($post);
}

I have a meta box and I am trying to get the current post id however I am getting the ID of a different post. Is there another way to get the ID?

function global_notice_meta_box() {

    $screens = array( 'avent_event' );

    foreach ( $screens as $screen ) {
        add_meta_box(
            'global-notice',
            __( 'Event Attendees', 'sitepoint' ),
            'global_notice_meta_box_callback',
            $screen
        );
    }
}

add_action( 'add_meta_boxes', 'global_notice_meta_box' );


function global_notice_meta_box_callback( $post ) {

    wp_reset_postdata();

    // 1st Method - Declaring $wpdb as global and using it to execute an SQL query statement that returns a PHP object
    global $wpdb;
    $results = $wpdb->get_results( 'SELECT * FROM avent_event_guestlist WHERE event_id = '.$post->ID, OBJECT );

    print_r($post);
}
Share Improve this question edited Oct 8, 2017 at 16:20 mmm 3,8193 gold badges16 silver badges22 bronze badges asked Oct 8, 2017 at 14:22 Ben HBen H 4036 silver badges20 bronze badges 2
  • is something changing if you comment the call to wp_reset_postdata ? – mmm Commented Oct 8, 2017 at 14:56
  • No with or without it still returns the incorrect post id – Ben H Commented Oct 8, 2017 at 16:20
Add a comment  | 

1 Answer 1

Reset to default 1

Use the global variable $post. It is not specific to the Metabox, which is really just a portal for display.

 global $post;
 $PostId     = $post->ID;   

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745663076a4638954.html

相关推荐

  • metabox - $post->ID incorrect within meta box

    I have a meta box and I am trying to get the current post id however I am getting the ID of a different post. Is there a

    21天前
    40

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信