必要な知識

「このページにアクセスする権限がありません。」とか ログインするとトップページに飛んでしまう現象

「「このページにアクセスする権限がありません。」とか ログインするとトップページに飛んでしまう現象」
たまぁ~に、はまります。

「「このページにアクセスする権限がありません。」とか ログインするとトップページに飛んでしまう現象」の原因と対策

↑基本的な原因としては、多くのサイトで起こりやすい順に解説していただいているので、ここでは、一番原因として可能性の低い方から説明します。

  1. データベースを他から持ってきて流用した。
  2. ワードプレスのスクリプトのバージョンがあっていない。
  3. プラグインが悪さしている。
  4. テーマがPHPのバージョンでは動かない。
  5. ログインユーザーが「管理者」ではない。

データベースを他から持ってきて流用した。

データベースをSQL出力して、それを別のデータベースへ登録して使う場合。
とりあえず、テーブルプレフィックスは一致させると思います。
実は、テーブル名の接頭語を変えるだけじゃダメなんです。

テーブルの中のROW名にもテーブルプレフィックスを使っているものがあります。
例えば、??_usermeta なんかに入っている管理者権限 ??_capabilities とかです。

上図は、テーブルプレフィックスが wp_ の物です。
テーブルプレフィックスが wp4_ で使用する場合は、wp_capabilities を wp4_capabilities と修正する必要があります。

.sql をプログラムで書き換えるとき置き換え文字として
‘旧テーブルプレフィックス -> ‘新テーブルプレフィックス
`旧テーブルプレフィックス -> `新テーブルプレフィックス
の2つで置き換えるといいと思います。
POSTなどのテーブルだと文字列の中に出てきたりすると厄介ですけど。
面倒ですができれば、テーブルとそのフィールド名を特定して置き換えるのが良いのかもしれません。

ワードプレスのスクリプトのバージョンがあっていない。

ワードプレスのサイトから以前のバージョンのスクリプトをダウンロードしてきて上書きするとちゃんと動いたりします。

リリースアーカイブ – WordPress.org 日本語

プラグインが悪さしている。

ありがちです。
ログインできないのでプラグインを外せない。

なので FTPでサーバーに入って wp-content/plugins/ をwp-content/plugins-/ などとリネームするのもありだし、
plugins/ の中のプラグインフォルダー名を書き換えてもOKです。

ワードプレスのデータベース上では、アクティブ(有効化)になってるプラグイン名(フォルダー名)が書き並べてあり、そのプラグイン名(フォルダー名)がwp-content/plugins 内になければ無効化と考えます。
それは、結果的にプラグインを無効化した状態です。


テーマがPHPのバージョンでは動かない。

有料テーマなどではよくあります。
バージョンアップも無料のテーマならですが、大抵はバージョンアップは有料です。

ネットでは無料物が多く、なぜか有料。。って思ってしまうようですが、開発には人件費、電気代等々がかかります。
使用するならば、最低限そこの一部は負担してもいいと思います。

さらにバージョンアップも人件費他がかかります。
開発者がその費用を負担していることになりますが、負担できなくなれば、バージョンアップもやめちゃうでしょ?
そういうことを考えると費用の一部を負担するべきだと思いますよ。

”ただで”クレクレ君は、人としてどうなの?って感じ。某大陸、半島人じゃないでしょ?多分・・・

ということで最新版 or サーバーのPHPのバージョン、WPのバージョンを確認の上、適合するバージョンのテーマを持ってきて上書きします。


ログインユーザーが「管理者」ではない。

単なる読者だったりしてません?
そこはワードプレスの管理者に確認してください。

あなたが管理者なら、ログインしてユーザー名と権限を確認してください。

「このページにアクセスする権限がありません。」とか ログインするとトップページに飛んでしまう現象のまとめ

最悪、再インストールがよいかも。
データベースを他から持ってきてインストールした場合、テーブルプレフィックスを確認してください。
テーブルプレフィックスは、テーブル名の接頭辞だけじゃなく、テーブル内のフィールド名にも使われているという点に注意です。

この書き込みがあなたの一助になれば幸いです。
スポンサードリンク

関連記事一覧