0

i am using publish press plugin to create a custom post status i changed the all post status into public, using this

register_post_status(
    $status->slug,
    [
        'label'       => $status->name,
        'public'   => true,
        'exclude_from_search'       => true,
        'show_in_admin_all_list'    => true,
        'show_in_admin_status_list' => true,
        '_builtin'    => false,
        'label_count' => _n_noop("{$status->name} <span class='count'>(%s)</span>",
            "{$status->name} <span class='count'>(%s)</span>"),
    ]
);

all post shown at front end but edit.php all post page not working it not showing the all the post which is relevant to custom post type and it also affected the woocommerce

  • Where did you put this code? Have you defined the $status variable you're using in it anywhere? – Jacob Peattie Jun 30 at 13:54
  • i just edited at publish press plugin file wp-content/plugins/publishpress/modules/custom-status/custom-status.php – thamarai selvan Jun 30 at 14:00
  • @JacobPeattie all post status are now show at front end but edit.php file don't shows the all posts eg, edit.php?post_type=shop_order it shows that No orders found – thamarai selvan Jun 30 at 14:20
0

finally found the solution when i enter all the custom post status to public it declare the post_type to default post as global so applied filter to change the global post_type based what type request get in URL


function publishPress_allPost_pre_get_posts( &$wp_query )
{
    if ( is_admin() && array_key_exists( 'post_type', $_GET ) ) {
        $wp_query->set( 'post_type', $_GET['post_type'] );
        add_filter( 'the_posts', 'publishPress_allPost_the_posts', 10, 2 );
    }
}

function publishPress_allPost_the_posts( $posts, &$wp_query )
{
    $wp_query->set( 'post_type', $GLOBALS['post_type'] );
    return $posts;
}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.