Як відображати за замовчуванням лише опубліковані повідомлення / сторінки в області адміністратора?


9

Насправді WordPress за замовчуванням відображає всі сторінки / публікації зі списку сторінок / публікацій у зоні адміністратора, незалежно від їх статусу публікації.

У мене дуже багато чернеток, але зазвичай мене набагато більше цікавить редагування опублікованих сторінок / публікацій, тому для отримання лише для їх відображення потрібно ще один клік та повне перезавантаження.

Чи є спосіб встановити WordPress спочатку відображати лише опубліковані публікації / сторінки, що дозволяє вам натиснути на "Усі" або "Чернетка", якщо згодом ви хочете?


Хтось? Нещодавно мені сказали, що якщо ви хочете отримати швидкі відповіді про WordPress - StackExchange - це місце, де потрібно піти ... Будь-яка відповідь буде вдячна - дякую.
юдаюда

Відповіді:


5

Я не впевнений, чи є інший спосіб, але маніпулювання глобальною змінною $submenuможе змусити цю роботу.

Далі - це лише ручне виламування (я не знаю жодного гака) і може вийти з ладу в нестандартних настройках підменю. Звичайний тип публікації повідомлень має унікальну адресу, а решта типів - ще одну, отже, два foreachs.

add_action( 'admin_menu', 'default_published_wpse_91299' );

function default_published_wpse_91299() 
{
    global $submenu;

    // POSTS
    foreach( $submenu['edit.php'] as $key => $value )
    {
        if( in_array( 'edit.php', $value ) )
        {
            $submenu['edit.php'][ $key ][2] = 'edit.php?post_status=publish&post_type=post';
        }
    }

    // OTHER POST TYPES
    $cpt = array( 'page', 'portfolio' ); // <--- remove or adapt the portfolio post type
    foreach( $cpt as $pt )
    {
        foreach( $submenu[ 'edit.php?post_type=' . $pt ] as $key => $value )
        {
            if( in_array( 'edit.php?post_type=' . $pt, $value ) )
            {
                $submenu[ 'edit.php?post_type='.$pt ][ $key ][2] = 'edit.php?post_status=publish&post_type=' . $pt;
            }
        }   
    }
}

2

Щоб відображати опубліковані сторінки за замовчуванням на посиланнях сторінок, просто вставте цей фрагмент коду у свою функцію.php. Потім ви можете перейти на вкладку "Усі", щоб переглянути повний список сторінок.

// change page link to display published pages only
function wcs_change_admin_page_link() {
    global $submenu;
    $submenu['edit.php?post_type=page'][5][2] = 'edit.php?post_type=page&post_status=publish';
}
add_action( 'admin_menu', 'wcs_change_admin_page_link' );

Якщо ви хочете досягти того ж поштового посилання на інформаційній панелі адміністратора, тоді замість цього використовуйте наступний фрагмент коду.

// change post link to display published posts only
function wcs_change_admin_post_link() {
    global $submenu;
    $submenu['edit.php'][5][2] = 'edit.php?post_status=publish';
}
add_action( 'admin_menu', 'wcs_change_admin_post_link' );

Довідка: http://www.wpcodesnippet.com/wordpress-admin/change-pages-link-display-publisher-pages/

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.