Missing argument 2 for wpdb::prepare()

WordPressのバージョンは今や3.8ですが3.5、3.6にアップデートして投稿したときに、下記ワ-ニングエラーメッセージに悩まされました。

Warning: Missing argument 2 for wpdb::prepare(), called in /home/deanne/public_html/wp-content/plugins/no-future-posts/no-future-posts.php on line 74 and defined in /home/deanne/public_html/wp-includes/wp-db.php on line 99

WarningError長らく放っていましたが今回、時間ができたので根本対策をしました。エラー出力を抑制する方法もありますが、根本対応を示します。

原因はno-future-posts.phpにおいて74行で呼び出しているprepare関数の引数の数が合わないというエラーであることが多くのWeb作成者の投稿で分かりました。もう少し噛み砕いて具体的な改修手順をメモに記します。

対象となるPHPソースファイルがテーマに関わるものならば、ダッシューボード-外観-テーマの編集-サイドメニューでソース選択-ソース修正-ファイル更新でソースファイルを変更します。

テーマ編集に無関係なno-future-posts.phpはFFFTPでパソコンにダウンロードし、74行目をテキストエディタにて下に示したようにprepare関数の引数を1から2に改訂し、再びFFFTPを用いてアップロードしWordPressを再起動したところエラーはなくなりました。

$wpdb->query($wpdb->prepare($sql)); ⇒ $wpdb->query($wpdb->prepare($sql, null));

前回までは、WordPress起動-投稿-エラー発生-WordPress終了-WordPress再起動でだましだまし使っていましたが、上記修正ですっきりしました。改訂方法は他にもあると思いますが、バックアップなどを取って自己責任にてご利用ください。

FFFTPは曽田氏によって開発されたフリーなFTPクライアントソフトウェアです。

コメントを残す

下記項目は必須ですがメールアドレスは公開されません。名前はニックネームをお使いください。

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください