52
WordPress 初心者からの脱出 五十嵐和恵  Kazue IGARASHI

WordPress 初心者からの脱出 #tohokuitfes

Embed Size (px)

Citation preview

Page 1: WordPress 初心者からの脱出 #tohokuitfes

WordPress 初心者からの脱出五十嵐和恵 Kazue IGARASHI

Page 2: WordPress 初心者からの脱出 #tohokuitfes

Who am I ?

• 五十嵐和恵 - Kazue IGARASHI

• 通称おかん

• @gatespace_k

• http://gatespace.jp/

Page 3: WordPress 初心者からの脱出 #tohokuitfes

デジタルキューブ My job : Code Wrangler / Frontend Engineer

• https://www.digitalcube.jp/

• WordPress CodePoet Directory コンサルタント

• Amazon Web Servicesアドバンスド コンサルティングパートナー

• 分散型ワークスタイル

• 営業ゼロ。100%インバウンド

• WordPress on AWS大規模ウェブメディア など

Page 4: WordPress 初心者からの脱出 #tohokuitfes

WordPressとの関わり• _s (Underscores)

http://underscores.me/

• Contributor

• WordPress日本語フォーラム http://ja.forums.wordpress.org

• 世話役

• WordBench仙台http://wordbench.org/groups/sendai/

• モデレーター

Page 5: WordPress 初心者からの脱出 #tohokuitfes

網元起動隊 https://www.facebook.com/

GHOSTINTHEAMIMOTO

網元起動隊 奥の細道

網元起動隊 in サンフランシスコ網元起動隊 沖縄班

Page 6: WordPress 初心者からの脱出 #tohokuitfes

WordPress トラブル あるある

Page 7: WordPress 初心者からの脱出 #tohokuitfes

(もろもろの理由で)バージョンアップしない

Page 8: WordPress 初心者からの脱出 #tohokuitfes

脆弱性が残ったまま。超危険!

Page 9: WordPress 初心者からの脱出 #tohokuitfes

WordPress 日本語版の動作環境

• PHP バージョン 5.2.4 以上 (PHP 5.4 以上推奨)

• MySQL バージョン 5.0 以上 (MySQL 5.5 以上推奨)

Page 10: WordPress 初心者からの脱出 #tohokuitfes

WordPress 4.3 “Billie”

• 2015年8月19日 リリースhttps://ja.wordpress.org/2015/08/19/billie/

Page 11: WordPress 初心者からの脱出 #tohokuitfes

• 2015年8月6日 リリースhttps://ja.wordpress.org/2015/08/06/wordpress-4-2-4-security-and-maintenance-release/

• 3 個のクロスサイトスクリプティングの脆弱性、1 個の潜在的な SQL インジェクションを含む、6 個の問題に対応

• 4 個のバグの修正

WordPress 4.2.4

Page 12: WordPress 初心者からの脱出 #tohokuitfes

パスワード忘れてログインできない!

Page 13: WordPress 初心者からの脱出 #tohokuitfes

パスワードの 再発行

ログインユーザー名または

登録されているE-mailアドレスが必要

Page 14: WordPress 初心者からの脱出 #tohokuitfes

登録している E-mail アドレスが間違っていた

Page 15: WordPress 初心者からの脱出 #tohokuitfes

wp_users テーブル当該ユーザーの user_email を修正する

Page 16: WordPress 初心者からの脱出 #tohokuitfes

画面が真っ白になりました!

Page 17: WordPress 初心者からの脱出 #tohokuitfes

そのまえに

Page 18: WordPress 初心者からの脱出 #tohokuitfes

テスト環境用意してますか?

Page 19: WordPress 初心者からの脱出 #tohokuitfes

ぶっつけ本番でやらない

• 本番環境と同じサーバー環境を用意するのがベスト

• 無理ならローカル環境(VCCW、MAMP、XAMPP)

http://gatespace.jp/2013/01/07/underscores01/

Page 20: WordPress 初心者からの脱出 #tohokuitfes

原因は?

Page 21: WordPress 初心者からの脱出 #tohokuitfes

• 真っ白になるのはPHPのエラーが原因の場合が多い

• プログラムは「ソースに書かれた通り」に動作 • 勝手に真っ白になるわけがない

Page 22: WordPress 初心者からの脱出 #tohokuitfes

復旧 or 原因究明

Page 23: WordPress 初心者からの脱出 #tohokuitfes

• 既に動いてるサイトなら復旧が先

• ローンチ(公開)前なら原因究明

Page 24: WordPress 初心者からの脱出 #tohokuitfes

素早い復旧のために

Page 25: WordPress 初心者からの脱出 #tohokuitfes

バックアップがあれば素早い復旧が可能

• 改変作業前 アップデート前 定期(例:毎日)

• 外部サーバーへのバックアップ

• 自動バックアップだけではなく、手動でもバックアップできるように

Page 26: WordPress 初心者からの脱出 #tohokuitfes

サーバー提供の機能を使う• 定期の他、任意で行えるか

• 世代管理

• ユーザーが戻せるか

• ロリポップ(オプション)http://lolipop.jp/service/option/#p-op-backup

• CPIhttp://www.cpi.ad.jp/shared/detail/backup.html

Page 27: WordPress 初心者からの脱出 #tohokuitfes

VaultPress https://vaultpress.com/

• WordPressのプラグイン

• リストア(復旧)も簡単

• セキュリティスキャンも

• 有料

Page 28: WordPress 初心者からの脱出 #tohokuitfes

バックアップを取る範囲

Page 29: WordPress 初心者からの脱出 #tohokuitfes

• PHPやcss、js、画像、.htaccess などのファイル群

• 最低限: /wp-content/ 以下全て

• データベース(MySQL)

Page 30: WordPress 初心者からの脱出 #tohokuitfes

一度は手動でバックアップを取り ローカル環境やテスト環境に復元することをお勧めします

Page 31: WordPress 初心者からの脱出 #tohokuitfes

原因究明

Page 32: WordPress 初心者からの脱出 #tohokuitfes

PHPのエラーの場合

• サーバーのログ確認

• WordPressのデバッグモードを有効化define('WP_DEBUG', false);

• PHPエラー意味を知るhttp://php-archive.net/php/error-message/

Page 33: WordPress 初心者からの脱出 #tohokuitfes

HTML、JavaScript、CSS

• ブラウザの開発者ツールで確認

Page 34: WordPress 初心者からの脱出 #tohokuitfes

プラグインやテーマのコンフリクトhttp://gatespace.jp/2012/09/25/wordpress-plugin-troubleshooting-flowchart/

Page 35: WordPress 初心者からの脱出 #tohokuitfes

管理画面にログインできないので テーマやプラグインを無効化できません

Page 36: WordPress 初心者からの脱出 #tohokuitfes

(S)FTPによる強制変更手順

Page 37: WordPress 初心者からの脱出 #tohokuitfes

• テーマなら /wp-content/themes/{use_theme} プラグインなら /wp-content/plugins/{use_plugin} のフォルダ(ディレクトリ)名を変更する

• ダッシュボードにログインできたらディレクトリ名を戻し、一つずつ有効化

Page 38: WordPress 初心者からの脱出 #tohokuitfes

エラーが起きたのでコアファイルを改変したら直りました

Page 39: WordPress 初心者からの脱出 #tohokuitfes

エラーが起きたので公式プラグインのコードを変えました

Page 40: WordPress 初心者からの脱出 #tohokuitfes

○○を変えたいので公式テーマを改造しました

Page 41: WordPress 初心者からの脱出 #tohokuitfes

アップデートでそのコードがなかったことになりますよ?

Page 42: WordPress 初心者からの脱出 #tohokuitfes

WordPressのコアファイル

Page 43: WordPress 初心者からの脱出 #tohokuitfes

• コアファイルの範囲/wp-admin/* /wp-includes/*/wp-*.php(wp-config.phpを除く)

• コアファイルで実装されてる関数が原因ではなく、その関数を使っているプラグインやテーマに原因があることも

• 全てのプラグインを無効化してデフォルトテーマでもエラーが起きるなら、バグの可能性も。

• 第3者でも再現できるバグであれば、Tracに報告をした方がみんなが幸せにhttps://core.trac.wordpress.org/

Page 44: WordPress 初心者からの脱出 #tohokuitfes

公式テーマ・プラグイン

Page 45: WordPress 初心者からの脱出 #tohokuitfes

• コアに同じく第3者でも再現できるバグであれば、本家のフォーラムで報告(各テーマ・プラグインの「Support」からリンク)

Page 46: WordPress 初心者からの脱出 #tohokuitfes

コアファイルやプラグインの 実行結果を変えたいとき

Page 47: WordPress 初心者からの脱出 #tohokuitfes

アクションフック・フィルターフックを使う

• do_action があればadd_action( $hook, $function_to_add, $priority, $accepted_args );

• apply_filtersがあれば、 add_filter( $tag, $function_to_add, $priority, $accepted_args );

Page 48: WordPress 初心者からの脱出 #tohokuitfes

公式テーマをカスタマイズしたいとき

Page 49: WordPress 初心者からの脱出 #tohokuitfes

子テーマを作りましょう

• 最低限 style.css のみでOK

• テンプレートファイルは必要なものだけでOK

• http://wpdocs.sourceforge.jp/%E5%AD%90%E3%83%86%E3%83%BC%E3%83%9E

Page 50: WordPress 初心者からの脱出 #tohokuitfes

まとめ

Page 51: WordPress 初心者からの脱出 #tohokuitfes

• テスト環境を用意

• バックアップ大事!

• バージョンアップ大事!

• コアファイルや公式テーマ・プラグインの改変ダメ!

Page 52: WordPress 初心者からの脱出 #tohokuitfes

Thanks!