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