世界的に有名なCMSであるWordPressですが、一つのサイトを複数人で運営することができます。
同じログパス情報を使用してもいいのですが、記事の投稿だけをする人(ライターさん)にすべての権限を与えてしまうのは、セキュリティー面を考えても良くありません。
そこで、WordPressでは「ユーザー登録」という機能で以下の5パターンの追加が出来るようになっています。
- 購読者
- 寄稿者
- 投稿者
- 編集者
- 管理者
これらの違いについては別記事(ユーザー追加方法とその種類)で取り上げたいと思いますが、今回「寄稿者」としてユーザーを追加した際、記事作成時に画像をアップロードできないという事態に陥りました。
寄稿者の位置づけは「記事の作成はできるが管理者が承認しない限りサイト上には表示されない」となっているため、セキュリティー面も考慮してテキスト記事のみになっているのだと思います。
しかし、やはり画像は使用したいものです。
記事を執筆する側も、画像ありきの記事が多くなると思いますし、出来上がりが見れないのは辛いですよね。
そこでいろいろ調べてみた結果、寄稿者でも画像をアップロードする方法があったので紹介します。
functions.phpをいじる
安定のfunctions.phpです。
これはWordPressを構成する一つのファイルですが、機能を追加するときによくいじります。
寄稿者が画像アップロードできるようにするために、functions.phpに次のコードを追加してください。
if (current_user_can('contributor') && !current_user_can('upload_files')) { add_action('admin_init', 'allow_contributor_uploads'); } function allow_contributor_uploads() { $contributor = get_role('contributor'); $contributor->add_cap('upload_files'); }
これだけで、画像アップロードの機能を追加することができます。
挿入(追加)場所はファイルの一番下で問題ありません。
メディアを運営している方など、寄稿者としてユーザーを追加した際はこの設定をしておくとライターさんも喜んで記事を書いてくれると思います。