サポート » 使い方全般 » カスタム分類の項目を予めセットしておきたい

  • 解決済 scanner0928

    (@scanner0928)


    こんばんは。
    早速ですが、functions.phpかプラグインのphpに、
    カスタム分類の登録とその内容(ラベルやスラッグ)を登録して、
    ユーザーはそれらを選ぶだけにしたく思っております。

    例)
    カスタム分類名 area エリア
    エリア名 北海道,東北,関東,~

    最初に登録して、完了したらメニューから消しておく方法しかないのでしょうか。
    テーマやプラグインのON/OFFで、その内容(例だとエリア名)を予めセットできればと思っております。

    皆様のご教示賜りますよう、よろしくお願い致します。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • こんばんわ、scanner0928さん。

    以下をお使いのテーマのfunctions.phpに追加していただければ大丈夫だと思います。

    function my_wp_insert_term() {
    	$terms   = array();
    	$terms[] = array( 'name' => '北海道', 'slug' => 'hokkaido' );
    	$terms[] = array( 'name' => '青森', 'slug' => 'aomori' );
    	$terms[] = array( 'name' => '秋田', 'slug' => 'akita' );
    	$terms[] = array( 'name' => '新潟', 'slug' => 'niigata' );
    
    	foreach ($terms as $term) {
    		wp_insert_term( $term['name'], 'area', array( 'slug' => $term['slug'] ) );
    	}
    }
    add_action( 'init', 'my_wp_insert_term' );

    上記の例では add_action を initで実行しています。あと、init で実行している為、insert したタームは管理画面での削除ができません。なので、init で実行するのを after_switch_theme とかにした方が、管理画面には優しいかもしれないです。
    after_switch_theme で実行する場合、テーマをONにした時に実行されます。一度他のテーマに切り替えていただいてから、再度テーマを戻してください。

    トピック投稿者 scanner0928

    (@scanner0928)

    KUCKLU様
    早速のご教示、ありがとうございます!

    あと、init で実行している為、insert したタームは管理画面での削除ができません。なので、init で実行するのを after_switch_theme とかにした方が、管理画面には優しいかもしれないです。

    このあたりが高度なので少し難しいですが、方法としては存在することにまずは感激です。
    また管理画面で削除できない、というあたり、逆に他ユーザーに削除されないので幸いですね。

    可能ならば、これをプラグインに記入し管理し、
    また負荷のないような方法があればと思っております。

    まずは御礼まで。

    P.S.
    このような専門的なWordpressの知識は、皆さんどこで習っているのでしょうか。
    差し支えなければ、こちらもお教え下さいm(__)m

    scanner0928さん

    ユーザーというのは、管理者以外の登録ユーザーですかね?
    それであればユーザー権限を変更して、タクソノミー area を削除 / 編集出来ないようにしてしまえばいいと思います。register_taxonomy でタクソノミーを作成する時に capabilities というパラメーターで権限を作ればいいです。作った権限を付与したり削除したりなどは、User Roll Editor というプラグインが簡単です。
    管理者も管理画面から変更できないとなると、途中で仕様変更があった時に面倒臭いと思いますので。

    勉強については、WordBench(勉強会的な)やWordCamp(お祭り的な)というのがあります。そこで色々な方とお話しすると面白いかもしれません。
    実際に手を動かす時は、WordPress Codexを読みながら作業したりしています。上記のリンクは日本語版ですが、英語版の方が最新で差分もありますので、両方確認する事を勧めします。
    あとは、「この関数なにしてんの?」という時は、こちらのサイトで関数名で検索 (検索窓とかないので、ブラウザーの検索機能(Cont + F)とかで検索) して中身をみています。

    トピック投稿者 scanner0928

    (@scanner0928)

    返信をするのを、うっかり忘れておりました!

    KUCKLUさん、いろいろご教示いただき、ありがとうございました。
    勉強会、是非参加したいと思っております。
    これからもWordpressの精進を致します。

    まずは返信まで。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「カスタム分類の項目を予めセットしておきたい」には新たに返信することはできません。