サポート » 使い方全般 » 投稿画面でカテゴリーを選択する際、検索機能を付けたい

  • 解決済 toakts0024

    (@toakts0024)


    いつもお世話になっております。

    実現したい事
    ■カスタム投稿の投稿画面にて、カテゴリーを選択する際に検索が使えるようにする。

    投稿画面のカテゴリー選択の所なんですが、タブに「カテゴリー一覧」と「よく使うモノ」
    とは別で、検索というモノを搭載したいと思い質問させていただきました。

    店舗名というカテゴリーを使用しているのですが、数があまりに多くスクロールで探すのはかなり大変で、検索でサクっと発見したいと思っています。

    具体的なイメージでは、外観→メニューでメニュー項目を追加する時のカテゴリーや固定ページのタブにある検索が理想です。

    分かりづらく大変申し訳ございませんが、検索機能の実装をご教授頂ければ幸いです。

    よろしくお願い致します。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • こんにちは、

    とてもラフなものですが、動作確認できたので貼り付けておきます。

    functions.phpに追加してください。

    新規投稿時、うまくいくと、カテゴリ一覧タブの下にテキストフィールドが出来るので、
    そこに、カテゴリの一部を入力すると、フィルタされると思います。

    add_action("admin_head-post-new.php", "my_filterd_categories");
    
    function my_filterd_categories(){
    ?>
    
      <script>
    
    // Copyright (c) 2010 Kilian Valkhof
    
    // Permission is hereby granted, free of charge, to any person
    // obtaining a copy of this software and associated documentation
    // files (the "Software"), to deal in the Software without
    // restriction, including without limitation the rights to use,
    // copy, modify, merge, publish, distribute, sublicense, and/or sell
    // copies of the Software, and to permit persons to whom the
    // Software is furnished to do so, subject to the following
    // conditions:
    
    // The above copyright notice and this permission notice shall be
    // included in all copies or substantial portions of the Software.
    
    // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
    // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
    // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
    // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
    // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
    // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
    // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
    // OTHER DEALINGS IN THE SOFTWARE.
    
    (function ($) {
      // custom css expression for a case-insensitive contains()
      jQuery.expr[':'].Contains = function(a,i,m){
          return (a.textContent || a.innerText || "").toUpperCase().indexOf(m[3].toUpperCase())>=0;
      };
    
      function listFilter(header, list) { // header is any element, list is an unordered list
        // create and add the filter form to the header
        var form = $("<form>").attr({"class":"filterform","action":"#"}),
            input = $("<input>").attr({"class":"filterinput","type":"text"});
        $(form).append(input).appendTo(header);
    
        $(input)
          .change( function () {
            var filter = $(this).val();
            if(filter) {
              // this finds all links in a list that contain the input,
              // and hide the ones not containing the input while showing the ones that do
              $(list).find("label:not(:Contains(" + filter + "))").parent().slideUp();
              $(list).find("label:Contains(" + filter + ")").parent().slideDown();
            } else {
              $(list).find("li").slideDown();
            }
            return false;
          })
        .keyup( function () {
            // fire the above change event after every letter
            $(this).change();
        });
      }
    
      //ondomready
      $(function () {
        listFilter($("#category-tabs"), $("#categorychecklist"));
      });
    }(jQuery));
    
      </script>
    
    <?php
    }
    トピック投稿者 toakts0024

    (@toakts0024)

    ご返信ありがとうございます!!

    わざわざソースまで教えて頂けるとは・・・

    実際に試してみたところ、通常の投稿では希望通りの動作が確認できました!

    しかし、カスタム投稿の投稿画面では適用されませんでした。
    これをカスタム投稿で動かす事は可能でしょうか?

    度々申し訳ございませんが、どうかよろしくお願い致します。

    私もこの機能が欲しくて悩んでました!

    nobitaさん、ありがとうございます。

    私は「カスタム投稿」と、それにヒモづけてる「カスタムタクソノミー」で使用するので

    //ondomready
      $(function () {
        listFilter($("#category-tabs"), $("#categorychecklist"));
      });

    の部分を下記のようにしたら動きました。
    カスタムタクソノミーは book とした場合です。

    //ondomready
      $(function () {
        listFilter($("#book-tabs"), $("#bookchecklist"));
      });

    これで投稿時のタクソノミー付けが楽になりそうです。

    御質問された toakts0024 さん
    お答え下さいました nobita さん
    ありがとうございました。

    トピック投稿者 toakts0024

    (@toakts0024)

    ご返信ありがとうございます!

    taku-kさんのやり方で記述を変えたら無事実現する事が出来ました!

    taku-kさん
    nobitaさん

    本当にありがとうございました!

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「投稿画面でカテゴリーを選択する際、検索機能を付けたい」には新たに返信することはできません。