この実装、面倒なら代行します
多店舗展開している企業サイトなどで、店舗ごとにサイト運用担当者を置き、店舗ごとにお知らせやブログを作成したい、なんてことがあります。
こういった場合、最初に頭に浮かぶのはマルチサイトWordPressを使って一つのWordPressで複数のブログを運営する方法です。
しかし、マルチサイトWordPressと通常のWordPressではシステム構造が異なるため、その違いや挙動について詳しい知識がないと、思わぬ要件で“ハマって”しまうことにもなりかねません。
できればシングルサイトWordPressで作りたい・・・。
では、改めて要件を整理しましょう。
店舗ごとにお知らせやブログを作成したいということは・・・店舗ごとにユーザーアカウントを作成し、そのアカウントではおのおのの店舗カテゴリーの投稿だけしかできないようにすればいいわけですよね。
つまり「ユーザー単位で投稿できるカテゴリーを限定する」ことができればシングルサイトWordPressでも「店舗ごとにサイト運用担当者を置き、店舗ごとにお知らせやブログを作成する」ことができるということです。
ということで今回の本題「ユーザー単位で投稿できるカテゴリーを限定する」手順について、ご紹介していきます。
の2つ。
/* 管理者以外が新規投稿などのページを開いたらカテゴリの最初の項目に自動チェック */ add_action('admin_print_footer_scripts', 'admin_print_footer_scripts_custom', 21); function admin_print_footer_scripts_custom() { $user_roles = wp_get_current_user()->roles; if (!in_array('administrator', $user_roles)) { echo '<script type="text/javascript"> //<![CDATA[ jQuery(document).ready(function($){ // default check if ($("#category-all .categorychecklist input[type=checkbox]:checked").length == 0) { $("#category-all .categorychecklist li:first-child input:first-child").attr("checked", "checked"); } }); //]]> </script>'; } }
これで準備完了です。
それぞれの店舗のユーザーアカウントでログインしてみてください。
メニューには自分のプロフィールの編集用のメニューと投稿、メディアくらいしか見えておらず(contact form 7を導入しているサイトでは「問い合わせ」メニューが見えているかもしれませんが、入ってみると何にもできないようになっているはずです)、そして、投稿メニューで投稿しようとすると、カテゴリーは自分の「{店舗名}からのお知らせ」しか選択できないと思います。
いかがでしょうか。
これでマルチサイトWordPressを使わなくても「店舗ごとにサイト運用担当者を置き、店舗ごとにお知らせやブログを作成できる」サイトを作ることができますね。
以上、ユーザー単位で投稿できるカテゴリーを限定する方法のご紹介でした。
WordPressカスタマイズ事例やウェブ制作ノウハウの新着情報、お役立ち情報を
リアルタイムにメルマガ配信!
100ウェブで手がけた制作・開発案件を一部、ご紹介。
クライアントからご相談いただいた内容とその実装におけるポイント、工期、予算について確認いただけます。
【テレワーク実施中 につきお電話転送中】
コール中1秒程度無音状態になりますがそのままお待ちください。
受付時間
平日 10:00~18:00
メールでのお問い合わせでも
1営業日以内にご連絡いたします。