質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

1回答

1337閲覧

class-wp-hook.phpによってエラーログが無限に溜まり、サーバーがクラッシュしてしまう

gt2835imp

総合スコア12

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

1グッド

1クリップ

投稿2019/07/19 09:56

前提・実現したいこと

ここに質問の内容を詳しく書いてください。

WordPress制作(woocommerce)の通販サイトを運営しています。
テーマはstorefrontのbook shopというテーマです。
自作テーマは使用していないです。
2日前から同様のエラーerror_logファイルが数十GBにも膨れ上がってしまい、ディスク使用量が一杯になってサーバーがクラッシュしてしまい困っています。
class-wp-hook.phpが暴走しているようです。

発生している問題・エラーメッセージ

[19-Jul-2019 09:33:12 UTC] PHP Warning: current() expects parameter 1 to be array, null given in /home/infojoho/public_html/wp-includes/class-wp-hook.php on line 275
[19-Jul-2019 09:33:12 UTC] PHP Warning: Invalid argument supplied for foreach() in /home/infojoho/public_html/wp-includes/class-wp-hook.php on line 277

該当のソースコード

do { $this->current_priority[ $nesting_level ] = $priority = current( $this->iterations[ $nesting_level ] ); foreach ( $this->callbacks[ $priority ] as $the_ ) { if ( ! $this->doing_action ) { $args[0] = $value; }

試したこと

サーバー会社に問い合わせましたが、WordPressのバグっぽいから直るまでプラグインを最新版に保つように、としか言われず、途方に暮れています。
いま、この内容を書きながらも、エラーログが溜まってしまい、その削除対応に追われています。
こちらで記載されているコードが当サイトにあてはまるのかは分かりませんが、近い症状として調べたサイトはあります。
https://core.trac.wordpress.org/ticket/39338

補足情報(FW/ツールのバージョンなど)

主要プラグインは
Jetpack
mailchimp
woocommerce
woocommerceの決済系プラグイン
等です。

私がphpの知識があるわけではなく、困って行き着いた先がこのサイトなので、
コードを修正できずに大変困っております。
原因となるコードを修正していただくことは可能でしょうか?
何卒宜しくお願いいたします。

set0gut1👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

masshu

2019/07/19 10:05 編集

修正依頼でしたらクラウドワークスにでもお頼みください。 このサイトは作業依頼をするサイトではありませんよ〜
gt2835imp

2019/07/19 12:32

サイトの趣旨を理解しておらず申し訳ありません。 ご意見ありがとうございます!
YukiYamashina

2019/07/20 03:11

functions.php にご自身で追加したコードはない、という理解でよろしいでしょうか?
CHERRY

2019/07/21 06:43

お使いのテーマは、何でしょうか? WordPress 標準のテーマにしても 同じ様なエラーは発生するのでしょうか?
gt2835imp

2019/07/23 12:02

YukiYamashinaさん ご質問ありがとうございます。 幾つか追加したコードがあったので、WPのテーマを入れ直した際にfunction.phpもデフォルトの状態になりましたが、やはり状況は改善しませんでした。
gt2835imp

2019/07/23 12:02

CHERRさん ありがとうございます。 標準テーマでも試しましたがエラーは改善しませんでした。 宜しくお願いいたします。
CHERRY

2019/07/24 02:58 編集

確認ですが、2日で 数十GBのログが出力されているのでしょうか? そうであれば、最近アクセスが急増したとか有るでしょうか? 標準テーマでも発生するのであれば、プラグインの可能性が高そうですね。 最近発生するようになったのであれば、ログが急に増えだした ここ数日に更新されたプラグインはありますか? このエラーは、class-wp-hook.php ファイルで発生していますが、直接の原因は、functions.php や プラグインの中で、登録されたアクションフックやフィルターフックの登録内容に問題があって、実行時にエラーが発生しているので、実際の環境でデバッグしてみないと原因の特定は難しいです。 まずは、お使いの環境で、どのプラグインを有効にした場合に 問題となる PHP Warning が、発生するのか プラグインを1つずつ有効・無効を切り替えたりして、PHP Warning が発生する条件を特定する必要がありそうです。
gt2835imp

2019/07/24 13:18

CHERRY さん アドバイスありがとうございます。 ものの10分ほどで10GBほどのエラーログが生成されてしまう状況です。 私の方でプラグインを全てオフにし、テーマをデフォルトに戻し、直前にWordPressのバージョンが自動更新されていたので、 WordPressの旧バージョンのファイルを上書きしてバージョンを落としてもエラーログが溜まり続けているのでお手上げ状態です。 アドバイスいただいたプラグインに関しては、上記の通り全てオフにしても駄目でして。。。 そのため、現在サーバーを変更してみようかと思っています。 また何かお気づきのことがあればご意見いただけると幸いです。 宜しくお願いいたします。
CHERRY

2019/07/24 13:36

10分で 10GB は、すごい量ですね。 管理している客先サーバーで、WooCommerce が導入されている WordPress がありましたので、Web サーバのログを確認してみたのですが、同様な PHP Warning は出ていませんでした。( WordPress と WooCommerce は、WordPress のアップデート画面を確認すると最新版と表示していました。 )
gt2835imp

2019/07/24 13:50

ご確認ありがとうございます。 現在、新しいサーバーにテスト用のドメインを追加して、そこにエラーは出ている現在のサイトデータを丸々移行してみたところ、今の所はエラーが出なくなりました。 元のサイトでは引き続きエラーが出続けているので、もしかしたらサーバーとの相性なのかもしれないと考えています。
guest

回答1

0

とりあえず動作が問題ないなら
try catchでエラーとめてしまえばいいのでは

WPでWarningをtry catchするのはめんどくさそうだった。

投稿2019/07/20 06:28

編集2019/07/20 06:32
mikkame

総合スコア5036

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gt2835imp

2019/07/23 12:13

ご回答ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問