1

I want to remove post status from post title. E.g Currently on listing page post title comes like "Hello World - Draft" or "ABC - Completed" I don't want - Draft or any other post status.

Note* : I have renamed published status to Completed status

1

Try the following:

add_filter('display_post_states', '__return_false');

The function responsible for printing the post state on the post list table is:

_post_states()

Located in wp-admin/includes/template.php.

The following logic determines whether the state will be printed:

/**
 * Filter the default post display states used in the posts list table.
 *
 * @since 2.8.0
 *
 * @param array   $post_states An array of post display states.
 * @param WP_Post $post        The current post object.
 */
$post_states = apply_filters( 'display_post_states', $post_states, $post );

if ( ! empty($post_states) ) {
    $state_count = count($post_states);
    $i = 0;
    echo ' — ';
    foreach ( $post_states as $state ) {
        ++$i;
        ( $i == $state_count ) ? $sep = '' : $sep = ', ';
        echo "<span class='post-state'>$state$sep</span>";
    }
}

NOTE: Seeing as it is possible that other people could also use this function in their own custom list tables and or for other post types, you should check for context so you don't interfere elsewhere.

|improve this answer|||||
  • Seems more fitting here ;-) – Pieter Goosen Mar 9 '16 at 11:49
  • Yeah haha... whoops :) – Adam Mar 9 '16 at 11:51

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.