phpMyadminでWordpressのSQLデータベースをつついていたら問題発生
管理画面にアクセスできなくなっていた
WordPressログイン自体は可能
・ログインすると、ウェブサイトが表示される
管理画面に行くor 編集しようとすると「アクセス権がありません」
アクセス権がないからトップのツールバーは「+新規」も出てこない
MySQLをつついた理由はこちら
WordPressのデータベースにある残骸|sitemapが表示されない問題
だいたいのことはやってみた
私の場合、SQLのデータベースで何か消しちゃったんだろうなという心当たりがあったので
(強気の理由はWordpress入れ換える前提でバックアップを取っていたから)
ネット上にある助言を全部やったわけではないですが
プラグインのオフにしてみる(フォルダのリネーム)
管理人を増やしてみる
など流行ってみた
が変わらず
403でもないし、変わる気もしなかったんですが
とにかく何か消してしまったんだろうなと
だから、もう入れ換えようかなと思った矢先
wp-optionsのwp_user_rolesが消えていた
全く同じ症状の人を発見!
ログインは出来るけどウェブサイトが表示される
なんと!
wp-options のテーブル
「wp_user_roles」がない!
テーブル自体がないゆえ、ここにadministration(権限)の値がない
自分で消しちゃったんでしょうね。恐ろしいw
消すのが気持ちいいとか言うてるから。
こういうことになりそうな予感はしてた
こちらです
WordPress[このページにアクセスする権限がありません。]管理画面に遷移できず、TOP画面になってしまう場合の対処法|WIZARD
凄くヒントになったのが
違う対処法を試行錯誤中にエラーが出た時に
SQLの94の値がおかしい的なエラーメッセージが出ていたんです
数が合わないとかなんとか
(ちょっとあきらめていたのでだらっと見てて詳細は覚えていない)
94というのは覚えていて、
先のリンク先にある「※wp_user_rolesは、94行目の値です。」という一文で救われた
神の助けが入ったわ
欠けていたwp_user_rolesを追加
ということで、wp_user_rolesを作ればいいんかな?と安易に考えていたんですがw
functions.phpにコードを書き込むだけで自動で作ってくれて、
簡易画面へのアクセス、編集も今まで同利できるようになりました
増やすためのコードだから終わったら消してもいいですよね?!
消してみたけど大丈夫でした。
デフォルトの役割と機能をリセットする|QA Stack
このページの
「この1つのタスクを実行するだけのプラグインをインストールしたくない場合は、WordPress関数を直接呼び出して、ロールとその機能を再構築できます。」
というところにあるコードをコピペしただけで治りました
プラグインは考え物やね
wordpressする時結構リビジョンを確認するので、WP Optimizeなどを使ってリビジョンを消したり
データベースをきれいにしていたつもりでしたが、
WP Optimizeは言うほどきれいになっていないし
このブログはワードプレスを入れ替えてデータベースをせっかくきれいにしたので
リビジョンをfunctions.phpで3つまでに制御するコードを入れたので、消さなくてよくなったから
WP Optimizeも入れない実験中