WordPressのプラグイン作成中に出る「has_cap」エラーの解決法


has_capエラー
WordPressのプラグインを作成している時に出たエラー

「Notice: has_cap の使用はバージョン 2.0 から非推奨になりました ! 代わりに プラグインやテーマでのユーザーレベルの使用は推奨されていません。代わりに権限グループと権限を使ってください。 を使ってください。 in /users/admin/www/blog/wordpress/wp-includes/functions.php on line 3193

「を使ってください」をなぜ二回言っているのか分かりませんが、エラーの回避法をメモ。

スポンサーリンク

管理メニューの権限設定を数字以外にする

管理メニューの追加 – WordPress Codex 日本語版」では、「add_options_page」を使用する際に

add_options_page('My Plugin Options', 'My Plugin', 8, __FILE__, 'my_plugin_options');

と三番目の引数(roles)に「8」を指定している。

エラーには「プラグインやテーマでのユーザーレベルの使用は推奨されていません。代わりに権限グループと権限を使ってください。」

とあるので、ユーザーレベルではなく、権限グループを入れてあげる。

とりあえず一般的な「administrator」に設定するとエラーは出なくなる。

add_options_page('My Plugin Options', 'My Plugin', 'administrator', __FILE__, 'my_plugin_options');

因みに他の権限グループにしたい場合は「Roles and Capabilities « WordPress Codex」を参考に。

コードを更に理解する

WordPressをより自由に、思い通りに使用するにはPHPの知識が必要です。

PHPを学ぶには、Web上での情報や知識には限界があるので、人に教えてもらうのが一番の近道です。

そこでオススメなのが「CodeCamp」です。

マンツーマン指導なので、わからないことはすぐ聞けて、無料体験レッスンもあるのでどんな感じか試せます。


ITエンジニア専門スクールもオススメです。

スポンサーリンク

おわりに

Codexの該当ページが2011年から現在(2014年6月4日)まで変更されていません。プラグインのところまではなかなか手がまわらないんですかね。

日本語翻訳も大変な作業です。翻訳をして下さる方々に感謝です。(自分も発言できるぐらいの知識や技術を身につけたいものです。)


タグ:

スポンサーリンク



この記事が役に立ったらシェアして頂けると嬉しいです!
このブログをフォロー・RSS購読もお願いします!

スポンサーリンク