WP List Table custom quick edit box – post meta data missing and columns change on submit

I just run in the same error when adding extra columns to the default post types.

The offending line was the $pagenow check.
Quick Edit uses admin-ajax.php so it doesn’t renders the custom columns when it’s done.

This doesn’t work:

if( 'edit.php' == $pagenow && is_admin() )
{
    add_action( 'admin_init', array( $this, 'init_id_column' ), 999 );
    add_action( 'admin_init', array( $this, 'init_thumb_column' ), 999 );
}

But this does:

if( 
    ( 'edit.php' == $pagenow && is_admin() ) 
    or
    ( 'admin-ajax.php' == $pagenow && 'inline-save' == $_POST['action'] && 'list' == $_POST['post_view'] )
)
{
    add_action( 'admin_init', array( $this, 'init_id_column' ), 999 );
    add_action( 'admin_init', array( $this, 'init_thumb_column' ), 999 );
}

I’m not sure if it’s the best method to do this checking, though…

Related track ticket.

Leave a Comment