web-dev-qa-db-ja.com

カスタム投稿タイプのクイック編集メニューから特定のアイテムを削除しますか?

カスタム投稿タイプのクイック編集画面からいくつかの項目を削除したいです。

私は "slug"、 "date"、および "password"を削除したいのですが、それらはエンドユーザーによって使われることは決してないでしょう。

quick edit cpt 

私はどんな提案にもオープンです!

6
gArn

Quick Editを変更するためのフックはありません。CSSやjQuery、あるいはその両方で行う必要があります。

プラグイン Adminimize非常に良い管理要素を隠すために、CPTを含みます。

ただし、クイック編集ボックスでは、対象となるCSSクラスやIDがないため、slugフィールドを非表示にすることはできず、カスタムを追加することでdateを部分的に非表示にすることもできます。次のスナップショットのようにオプション。

adminimize cpt 
拡大するにはクリックしてください


そのため、純粋なjQueryソリューションが必要です。

add_action( 'admin_head-edit.php', 'wpse_59871_script_enqueuer' );

function wpse_59871_script_enqueuer() 
{    
    /**
       /wp-admin/edit.php?post_type=post
       /wp-admin/edit.php?post_type=page
       /wp-admin/edit.php?post_type=cpt  == gallery in this example
     */

    global $current_screen;
    if( 'edit-gallery' != $current_screen->id )
        return;
    ?>
    <script type="text/javascript">         
        jQuery(document).ready( function($) {
            $('span:contains("Slug")').each(function (i) {
                $(this).parent().remove();
            });
            $('span:contains("Password")').each(function (i) {
                $(this).parent().parent().remove();
            });
            $('span:contains("Date")').each(function (i) {
                $(this).parent().remove();
            });
            $('.inline-edit-date').each(function (i) {
                $(this).remove();
            });
        });    
    </script>
    <?php
}

関連quick-edit Q&A 私が働いたこと

7
brasofilo

フィルタでカテゴリ選択を削除します。

add_filter( 'quick_edit_show_taxonomy', function( $show, $taxonomy_name, $view ) {

    if ( 'category' == $taxonomy_name )
        return false;

    return $show;
}, 10, 3 );
0
Bobz