【WordPress】複数ブログの二段階認証コードを一つにまとめる

WordPressサイトを複数持っていて、全部に二段階認証(Google Authenticator)をかけています。
そうするとスマホアプリのコード一覧にサイトの数だけコードが増えて見づらいし、
該当サイトのコードを探すのがちょっと面倒……。

一つの二段階認証コードを複数WordPressで共有しても特に弊害は無い気がしたので、
データベースをいじくって一つにまとめてしまいました。

【WordPress】管理画面にログイン出来ないまま二段階認証を無効にするを書いた時
大体データベースの中身が分かったので応用技です。

MySQLから値を操作します。(ちなみに私はさくらレンタルサーバーでphpMyAdmin利用)
該当ブログのデータベースの「○○○○○( データベーステーブルの接頭辞)_usermeta」テーブルを開き、
「googleauthenticator_secret」の項目を確認。
この値がWordPressのSecretコードです。

↓WordPressの設定画面

2015-03-23_160550

要はこのコードを複数ブログで共有してしまえば二段階認証コードが一つで済むよね、という話。
二段階認証を共有したいブログの「googleauthenticator_secret」の値を同じものに書き換えます。

WordPressの管理画面からはいじれないようなので、
phpMyAdminからデータベースの値を直接編集。

2015-03-23_160258

これでスマホアプリのGoogle Authenticatorの画面も少しすっきり。
複数のWordPressサイトの二段階認証コードが一つにまとまります。

データベースの書き換えはミスると壊れるかもしれないので、慎重に、自己責任でお願いします。
(データベースの知識が無い人にはお勧めしません)

広告

【WordPress】管理画面にログイン出来ないまま二段階認証を無効にする

インストールするタイプのWordPressで二段階認証をしています。

WordPress.comの方はバックアップコードがあるのでスマホの紛失、故障時にも対応することが出来ます。
わりと簡単。
【WordPress.com】二段階認証にしていてスマホを紛失した場合

 

インストールするタイプのWordPressではプラグインのGoogle Authenticatorで二段階認証しているのですが、バックアップコードや二段階認証無効キーなどが発行できません。

スマホが手元にないとログインできないのでセキュリティは強くなりますが、想定外のスマホ紛失、故障時にどう対応したらいいの?としばらく悩む。どうググってもこれをクリアしたという記事が見つけられない。

スマホが無くなったらサイトを諦めるしかないのかな……そんなバカな。「仕様だから仕方ないよね」って納得できる人しかWordPress使ってないの?否!!

 

少なくとも私が我慢ならないので色々考えてみた結果、
データベースにログイン出来るなら値の書き換えで何とかできるんじゃないかという考えに辿り着いた。

早速MySQLを確認。(ちなみにさくらレンタルサーバーでphpMyAdmin利用)
該当データベースの「○○○○○( データベーステーブルの接頭辞)_usermeta」テーブルを表示させてみる。

ずらーっと出てくる中にmeta_keyが「googleauthenticator」で始まるものがいくつかある。
ここに二段階認証の情報が入っているはず。

2014-08-20_220328

中でも「googleauthenticator_enabled」の値がenabledになっているのが気になる。
何かがenabled(有効化)になってるという事は、disable(無効化)したら二段階認証が無効になりそうな気がする。

やってみた。

2014-08-20_221619

実行したらさっそくWordPressのログイン画面へ。
ユーザ名とパスワードを入力し、二段階認証コードの入力欄は空白のままでログインする事が出来ました。

でも正攻法ではないからか、ちょいちょいセッションが切れてログイン画面に戻されたりしました。
ログイン出来てるうちにさっさとダッシュボードからGoogle Authenticatorを無効にして更新するなり、新しいSecretキーを生成して二段階認証を設定するなりします。

実はうっかりSecretキーを更新したのに二段階認証アプリに取り込む前に画面を閉じてしまい、
二段階コードが噛み合わなくてログイン出来なくなってました。
ダッシュボードに入れないまま二段階認証を無効にできないものかと悩み、このような対応で乗り切ったわけです。

もしこの記事をご覧になってデータベースを書き換えようと思った方は自己責任でお願いします。
データベースを直接書き換えるのはリスクもあるので、それなりの覚悟とバックアップが必要です。

【WordPress】マルチサイト化せずに複数インストールするメモ

ローカル環境(XAMMP)でWordpressのテストをやってますが、どうしても1つでは足りない。
色んなテーマを試したりいじったりするのに複数あった方が比較しやすくて便利なので、複数インストールの手順メモ。

下準備

最新のWordpressをダウンロードしておきます。現時点では3.9.1が最新版。
http://ja.wordpress.org/

XAMMPをインストールしてあるディレクトリの「xampp\htdocs」以下にWordpressインストール用のフォルダを作成。
私の場合今回で3つ目なので「wordpress3」に。
そこにダウンロードしておいたWordpressの解凍ファイル達を入れます。

2014-06-18_160413

データベース作成

phpMyAdminからデータベースを作ります。
データベースタブを開いてwordpress3用のデータベースを作成。

2014-06-18_163112

「wordpress3」としました。分かりやすいのが一番。

WordPressのインストール

ブラウザから
127.0.0.1/wordpress3
もしくは
localhost/wordpress3
を開くとインストールページに移りますが、「wp-config.php ファイルが見つかりません。」というエラーが出ます。
このページから自動で作成する事も出来ますが今回は手動でやります。

「xampp\htdocs\wordpress3\wp-config-sample.php」のファイル名を「wp-config.php」に変更。

2014-06-18_162717

次にテキストで開いてデータベース情報を書き換えます。

  •   WordPress のためのデータベース名 → 新しく作ったデータベース名(wordpress3)
  •   MySQL データベースのユーザー名、MySQL データベースのパスワード → 自分の環境のものをそれぞれ

ブラウザから127.0.0.1/wordpress3もしくはlocalhost/wordpress3を開く。

2014-06-18_170441

ようこそと言われました。
あとは画面に必要事項を入力してインストールです。

マルチサイト化は好きじゃない

WordPressの複数インストールと言えばマルチサイト化という方法もありますが、私は好みじゃありませんでした。

2つ目のブログに管理者権限を与えないで管理したい場合にはマルチサイトは便利なのだと思います。
が、プラグイン追加やテーマ編集をしたい時にいちいち管理者権限で入り直さないといけません。行ったり来たりする感じです。

以前一度マルチサイトにしたんですが、手間がかかりすぎるので元に戻しました。
マルチサイト化するのにも元に戻すにもコードの書き換えが必要で、最悪の場合Wordpress自体が壊れる可能性があります。
私も壊した経験があるので、リスクをよく考えて導入するべきだと思います。

FC2ブログのデータをWordPressへインポートしてみた

FC2ブログのデータをエクスポートしてあるので、せっかくだからWordpressに移行してみました。
ちなみに公開するつもりはないのでローカル環境です。

FC2ブログのエクスポート方法はこちら→FC2ブログをバックアップするメモ

では早速Wordpressにブログ本文をインポートします。
ダッシュボードの〔ツール〕→〔インポート〕を開き、「Movable Type and TypePad」を選択。
2014-06-07_183707

インストール画面が出てきたら「今すぐインストール」→「プラグインを有効化してインポートツールを実行」で次へ。
バックアップしたテキストデータをアップロードしてインポートします。
インポートが終わったら正しく取り込めたかサイトを開いて確認。

と、簡単に出来たんですが、ここでやっと画像データを取り込んでない事に気が付く。
バックアップした画像を全部アップロードして、記事ごとに各画像のURL書き換えて……って手間考えただけでめげそうです。

とりあえず画像のアップロードはあれだ、ダッシュボードからやるのめんどくさいので直接放り込んでなんとかしよう。

WordPressのメディアファイルは「uploads」フォルダにずらっと入ります。
ここに入れりゃいいんだ、と思ったらどうもそれではWordpress側で認識してくれない様子。それでは困る。

でもあるんですね、便利なプラグインが。
WordPress Flash Uploader』を使うとFTPで直接アップロードしたファイル達を認識してくれます。

2014-06-07_210641

「uploads」に直接画像を移動して、ダッシュボードの〔メディア〕→〔Sync Media Library〕を開く。
「Sychronize Media Library」というボタンをクリックするとメディア一覧から確認できるようになります。

これで何枚もある画像の一括アップロード完了!
なんてありがたいプラグイン。

そして、ブログ本文をテキストで開き、画像URLを置換で書き換えて。
先ほどインポートしてしまった記事は全削除して、もう一度取り込みました。

これでWordpressへの移行は完了。
昔のブログを閲覧できるようになって嬉しいやら恥ずかしいやら。

ローカルWordPressのパスワードをすっかり忘れてた

ローカル環境のWordpressのユーザ名とパスワードをすっかり忘れていたのでやり方メモ。
phpMyAdminから変更すればなんとかなりそうだったので「やってみよう!」と意気込んだものの、
そもそもphpMyAdminのユーザ名とパスワードも忘れていたという重症ぶり。

というわけで設定ファイルを見て確認。環境はXAMMPです。

XAMMPをインストールしたディレクトリの以下の
\htdocs\wordpress\wp-config.php
を確認。ここにベタっとMySQLのユーザとパスワード書いてあるのよね。
「こんなベタにテキストで書いてあって危なくない?」と思った仕様だけど助かった・・・。

やっとphpMyAdminにログインし、データベースをいじりました。
Wordpressのデータベースを選択→wp_users→変更したいユーザを選んで編集。
user_passの関数をMD5にして新規パスワードを入力し実行ボタンでOKです。

私の場合テストでいくつかユーザーを作っていたのでwp_usersを開いたらぞろっと出てきました。
それもすっかり忘れていたので少し落ち込みました・・・。
忘れすぎだよ。

WordPress:特権管理者→サイトネットワーク管理者に変わってた。

本を読みながらWordPressの基本的なレイアウトの勉強が終わったので、マルチサイト化してひとつのWordPressで複数ブログを作る方法を試しました。(XAMMPローカル環境です)

読んでいるのはこちら↓
WordPress レッスンブック 3.x対応
WordPress レッスンブック 3.x対応

最後の方にマルチサイト化について書かれているので読んだとおりにやってみましたが、どうもうまく行かない。
本によると管理画面メニューに「特権管理者」が追加されるようなんだけど、出てこない…。

なんか失敗してるのか?と思い一回マルチサイト化する前の状態に戻し、初めからやりなおしてみるとネットワークの設定画面に『既存の WordPress ネットワークを検出しました』という警告が!
ググって調べたところ一回データベースの中身を削除してからログインしないと前の情報が悪さするらしい。

 

結構なDBの中身の削除が必要でちょっと面倒臭かったので、思い切って無視してみました。
で、手順通りに『wp-config.php』『.htaccess』の記述を書き換えて再ログイン。

やっぱり「特権管理者」なんて項目は出てこない…
ちょっと待てよ、またバージョンが変わってて画面が違うだけで、本当はうまく行ってるんじゃないの?と思い直しダッシュボード上部の「参加サイト」タブを見てみると…「サイトネットワーク管理者」というものが登場している!!これでしょ!!

「サイトネットワーク管理者」→「サイト」の画面を開くとちゃんとサイトの一覧が。ここから新しいサイトも追加できました。
最初から失敗なんかしてなかったし、DBもそのままで大丈夫だったんですね…。

 

WordPressをいじる時は、
・バージョンによって画面と仕様は結構変わっている
という事を頭に入れて落ち着いてググればなんとかなるのかもしれない、という教訓を得た今日この頃でした。
本の通りにやってもうまく行かず、延々悩んだ挙句ググったらバージョンアップによる仕様の変更がほとんどだったよ…。

公式の読者サポートページも参考にしました。
読者サポート | WordPressレッスンブック 3.x対応 | ソシム:

と言ってもカバーしきれてはいないので自力でなんとかしましょう。結局自力ですよね。

WordPressを勉強中の所感

WordPressって難しいんじゃないの?と思いながら色々触った感想。

簡単にも使えるけど難しいところまでやろうと思うと難しいですね!

ソースが読めない人でも使おうと思えば使えるし、カスタムもある程度(テンプレートとか使って)出来るし、投稿もブログ感覚で行える。スマホアプリから写真つきで投稿もできるし、ブログサービスとして気軽に使ってもいいなと思います。

でも、ただブログをやってみたいという人がわざわざWordPressを選ぶ必要もないんじゃないかと。FC2とかアメブロとかの国内ブログサービスの方が便利だし機能も十分だし。

それでもWordPress使いたい人はやっぱりごりごりカスタマイズしたい人なんじゃないでしょうか。
で、カスタマイズしたいと思ってる人はやっぱりHTMLとスタイルシートの基礎がないと厳しいものがあると思います。
最低でも自分でホームページを作ってアップロードした事がある(ビルダーを使わずに)とかでないと、めげると思う。

やっぱりWordPressは簡単ではないとは思いますが、私はそれほど抵抗なく勉強中です。

私のスペックは…

・ホームページ作った事がある(HTML、スタイルシート、JavaScript等が触れる)
・Webサーバーを扱った事がある(IIS、Apache)
・一応プログラム書いた事があるのでなんとなくカンで読める(大昔だけど多分一通りの言語を触った事はある)
・Webのプロジェクト作成経験がある(ASP)
・データベースを扱った事がある

こんな感じです。なんか書いてみるとすごそうな感じがするけどかなり昔の話だし、長いこと触ってなかったり、テキトーにやっただけのものばかりです…。
PHPは全く触った事がなかったので本を読んで予習しました。(図書館で借りただけ…)
なんとなくのカンはあったのででいきなりWordPressの本を読みながら基礎を勉強し始めましたが、けっこう楽しくやってます。
ゼロから急に内側のファイルを触るのはちょっときついかと思いますが、Webに親しみのある人には楽しく勉強できるんじゃないかな?

作りこんでしまえば更新作業も楽だし拡張性もあるし、HTMLがわからない人にもブログ感覚で更新してもらう事が出来るし、WordPressはやっぱり便利だと思います。

このブログだって、WordPressの事を良くわかってないのに一応こうして更新はできているわけですから。