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.