質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

2730閲覧

wordpress 管理画面 編集者でのメニュー表示

sssshin

総合スコア27

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

1クリップ

投稿2016/10/29 14:07

編集2016/10/29 15:44

wordpressにて、管理者以外に見せたくない管理画面のメニューは
if (!current_user_can('administrator')) {
// ここに処理
}
こちらで非表示にできましたが、
編集者で、例えば外観を表示させたい、と言う時のコードがわかりません。
非表示の方法ばかり情報が出てきます。プラグインは使用したくないのですがどう指定すればいいでしょうか?
よろしくお願いします。

修正・追記

ユーザー権限が「編集者」の場合に、管理画面で表示されてないメニュー項目を表示したい場合、
と言う事です。

上記のコードでユーザー権限が「管理者でない場合」のメニューの[非表示]はできましたが、[表示]の方法です。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gin

2016/10/29 15:20

編集者に何かしたい場合ってことですか?
guest

回答2

0

非表示なのは権限が無いからなので、付けてあげれば表示されます。

【寄稿者がメディア(画像)をアップロードできるようにする | WordPressカスタマイズ事典】
http://wpcj.net/1298

投稿2016/10/29 15:58

編集2016/10/29 15:58
kei344

総合スコア69364

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sssshin

2016/10/29 16:35

解答ありがとうございます。 参考にさせて頂きます。
sssshin

2016/10/30 00:31

すみません下記の感じだとできないと言う事でしょうか? 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'); } これはファイルをアップロードを出すという方法ですが、メニューを左に出すと言う方法だとどういうふうになるのでしょうか? 権限の部分はeditorに変えてupload_filesの部分をnav-menus.phpに変更しても適用はされなかったのでまだ間違えているのですがわからなくて
gin

2016/10/30 03:40

「upload_filesの部分をnav-menus.phpに変更しても」はちょっと… 変えるにしても「upload_files」→「switch_themes」だと思います。 メニュー追加らしいですけどここはご覧になりました? http://wpdocs.sourceforge.jp/Adding_Administration_Menus
kei344

2016/10/30 05:11

記事は読みましたか?'user_has_cap'の例を使うのが安全です。 add_capで試したものはDBに残ってしまっているので、試した組み合わせで remove_cap する必要があると思います。 add_capで追加するのは下記のような権限文字列です。sssshinさんに必要なのは switch_themes では? 【ユーザーの種類と権限 - WordPress Codex 日本語版】 https://wpdocs.osdn.jp/%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%81%AE%E7%A8%AE%E9%A1%9E%E3%81%A8%E6%A8%A9%E9%99%90#switch_themes 正直 権限を触るのは危険なので、User Role Editorを使ってください。 To: ginさん 独自メニューを作るならそこへの誘導で間違っていませんが、権限が足りなくて表示されないメニューはadd_menu_pageでは作れません。そのページ(外観とか)のロジックを全て権限を回避してページを作れる可能性も0ではありませんが、普通しません。
gin

2016/10/30 06:31

あ、そういうことですね~ 表示非表示以前の問題で権限ないと存在すらしないってことだったのか。 わりと単純に考えてましたけどしっかり正確に理解していないとうっかり妙なところに権限与えたりしちゃう可能性もありそうなので、確かにプラグイン使うほうが安全ですね~
kei344

2016/10/30 07:52 編集

> 表示非表示以前の問題で権限ないと存在すらしないってことだったのか。 そうなのです。 > うっかり妙なところに権限与えたりしちゃう可能性もありそうなので、確かにプラグイン使うほうが安全ですね 私もそう思います。 User Role Editor は比較的息の長いプラグインで、定期的にメンテナンスもされていて、使用ユーザーも多く、問題があれば比較的早く対応しているようなので、任せてしまっても良いと思います。
sssshin

2016/10/30 13:07

User Role Editor は使用しようとしたのですが、日本語化ファイルがバージョンに適用してるのが無くて使用が難しくて手動で使用しようと思ってた経緯でした。 ありがとうございます。 User Role Editor を使用してみます。
guest

0

ベストアンサー

こういう意味ですか??<!(~でない場合)を取る

php

1if (current_user_can('editor')) { //編集者だった場合 2 ~ 処理 ~ 3}

###追記
質問のコードは権限を振り分けてるだけ(非表示はない)なので、それを聞きたいのかと思ったんですが…
権限はどうでもよくメニュー表示のことなんですかね?

php

1function add_menu_page () { 2 if (current_user_can('editor')) { //編集者だった場合 3 ~ 処理 ~ 4 } 5}

投稿2016/10/29 15:48

編集2016/10/29 16:08
gin

総合スコア2722

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sssshin

2016/10/29 16:23

解答ありがとうございます。 すみませんまだわからない部分があるのですが、 function add_menu_page () { if (current_user_can('editor')) { //編集者だった場合 ~ 処理 ~ } } add_action('admin_menu', 'add_menu_page'); こういう事でしょうか? ~処理~ の部分にはadd_menu_page( 'nau-menus.php' ); となるのでしょうか?
gin

2016/10/29 16:29

実際使用したことがないので細かい部分まではちょっと不明です~ 非表示の逆のことをやればいいのかなと思ったり。 あとは「function add_menu_page ()」とかで検索してみて使えそうなソースを探してみるとかですかね~
sssshin

2016/10/29 16:36

ありがとうございます。 調べてみます。
kei344

2016/10/29 16:47

To: ginさん > 非表示の逆のことをやればいいのかなと思ったり 「編集者」には外観を表示させるための「switch_themes」という権限が無いので表示できないのであって、非表示にするときと手順は違いますよー。
gin

2016/10/29 17:13

あら、そうなんですね^^; 表示を非表示にするように非表示を表示する感覚でいいのかなーと思ってましたw
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問