Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

WordPress アカンパターン

5,195 views

Published on

WordOnsen in 福島飯坂 2014のセッション「WordPress アカンパターン」のスライド

Published in: Internet
  • Be the first to comment

WordPress アカンパターン

  1. 1. WordPress アカン パターン 五十嵐和恵 Kazue IGARASHI
  2. 2. Who am I ? • 五十嵐和恵 - Kazue IGARASHI • 通称おかん • @gatespace_k • http://gatespace.jp/ WordCamp Kansai 2014 with Matt
  3. 3. デジタルキューブ My job : Code Wrangler / Frontend Engineer • https://www.digitalcube.jp/ • WordPress CodePoet Directory コンサルタント • Amazon Web Services アドバンスド コンサルティング パートナー • 分散型ワークスタイル • 営業ゼロ。100%インバウンド • WordPress on AWS 大規模ウェブメディア など
  4. 4. WordPressとの関わり • _s (Underscores) http://underscores.me/ • Contributor • WordPress日本語フォーラム http://ja.forums.wordpress.org • 世話役 • WordBench仙台 http://wordbench.org/groups/ sendai/ • モデレーター
  5. 5. 網元起動隊 https://www.facebook.com/ GHOSTINTHEAMIMOTO 網元起動隊 奥の細道 網元起動隊 沖縄班網元起動隊 in サンフランシスコ
  6. 6. 本日のアカンパターン • 真っ白になった! • 管理画面にログインできません! • コアファイル改変 • 公式テーマ・プラグインの改変
  7. 7. 真っ白になりました!
  8. 8. 管理画面にログインできません!
  9. 9. そのまえに
  10. 10. テスト環境用意してますか? • いきなり本番でやらない • 本番環境と同じサーバー環境を用意するのがベスト • 無理ならローカル環境(VCCW、MAMP、XAMPP) http://gatespace.jp/2013/01/07/underscores01/
  11. 11. 物事には原因がある • 真っ白になるのはPHPのエラーが原因の場合が多い • HTMLやCSSの間違いはレイアウトが崩れる程度で致命的ではな い • JavaScriptのエラーも動作はしないが真っ白になるほどではない • 勝手に真っ白になるわけがない • プログラムは「ソースに書かれた通り」に動作 • 直前の操作をがんばって思い出せ!
  12. 12. 復旧と原因究明
  13. 13. どちらが先か • 既に動いてるサイトなら復旧が先 • ローンチ(公開)前なら原因究明
  14. 14. 素早い復旧のためには • バックアップからの復旧 • 改変作業前、アップデート前、定期(例:毎日)など バックアップを取る癖をつけましょう • 自動バックアップだけではなく、手動でもバックアッ プできるように
  15. 15. サーバー提供の機能を使う • 定期の他、任意で行えるか • 世代管理 • ユーザーが戻せるか • 例 • ロリポップ(オプション) http://lolipop.jp/service/ option/#p-op-backup • CPI http://www.cpi.ad.jp/shared/ detail/backup.html
  16. 16. VaultPress • https://vaultpress.com/ • WordPressのプラグイン • リストア(復旧)も簡単 • セキュリティスキャンも • 有料
  17. 17. バックアップを取る範囲 • PHPやcss、js、画像、.htaccess などのファイル群 • 最低限: /wp-content/ 以下全て • WordPress本体は公式サイトから再ダウンロード可能 • データベース(MySQL) • 「エクスポート」では投稿タイプに紐付けられている情報しか 書き出せない • サイト設定情報などはデータベースに保存されている
  18. 18. 一度は手動でバックアップを取り ローカル環境やテスト環境に 復元することをお勧めします
  19. 19. 原因究明
  20. 20. PHPのエラーの場合 • サーバーのログ確認 • WordPressのデバッグモード を有効化 define('WP_DEBUG', false); • PHPエラー意味を知る http://php-archive.net/php/ error-message/
  21. 21. HTML、JS、css • ブラウザの開発者ツールで 確認
  22. 22. プラグインやテーマのコンフリクト http://gatespace.jp/2012/09/25/wordpress-plugin-troubleshooting-flowchart/ • デフォルトテーマに戻す • エラーが起きなければ使っ ていたテーマの問題 • プラグインを全て無効化 • 正常に動作しなかったらコ アファイルの破損かも • プラグインを一つずつ有効化
  23. 23. 管理画面にログインできないので テーマやプラグインを無効化できません ><
  24. 24. (S)FTPによる強制変更手順 • テーマなら /wp-content/themes/当該テーマ プラグインなら /wp-content/plugins/当該プラグイン のフォルダ(ディレクトリ)名を変更する • 該当するテーマやプラグインがないと見なされ、 テーマならデフォルトテーマに、プラグインは無効化 される • ダッシュボードにログインできたらディレクトリ名を戻 し、一つずつ有効化
  25. 25. エラーが起きたので コアファイルを改変したら直りました
  26. 26. エラーが起きたので 公式プラグインのコードを変えました
  27. 27. ○○を変えたいので 公式テーマを改造しました
  28. 28. アップデートでそのコードが なかったことになりますよ?
  29. 29. WordPressのコアファイル • コアファイルの範囲 /wp-admin/* /wp-includes/* /wp-*.php(wp-config.phpを除く) • コアファイルで実装されてる関数が原因ではなく、 その関数を使っているプラグインやテーマに原因があることも • 全てのプラグインを無効化してデフォルトテーマでもエラーが起きるなら、バ グの可能性も。 • 第3者でも再現できるバグであれば、Tracに報告をした方がみんなが幸せに https://core.trac.wordpress.org/
  30. 30. 公式テーマ・プラグイン • コアに同じく第3者でも再現できるバグであれば、 本家のフォーラムで報告 (各テーマ・プラグインの「Support」からリンク)
  31. 31. コアファイルやプラグインの 実行結果を変えたいとき • アクションフック・フィルターフックを使う • do_action があれば add_action( $hook, $function_to_add, $priority, $accepted_args ); • apply_filtersがあれば、 add_filter( $tag, $function_to_add, $priority, $accepted_args );
  32. 32. 公式テーマを変えたいとき • 子テーマを作りましょう http://wpdocs.sourceforge.jp/%E5%AD %90%E3%83%86%E3%83%BC%E3%83%9E • 最低限 style.css のみでOK • テンプレートファイルは必要なものだけでOK
  33. 33. まとめ
  34. 34. • テスト環境を用意 • バックアップ大事! • エラーの確認方法 • テーマ・プラグインのコンフリクト調査 • (S)FTPによる強制変更 • コアファイルや公式テーマ・プラグインの改変ダメ!
  35. 35. Thanks!

×