WordPressに必ず入れているプラグイン、Jetpack by WordPress.com。(以下Jetpack)
WordPress.comと名称の最後に付いていますが、インストール型WordPressで使えるプラグインです。
Jetpackにはコンタクトフォームを簡単に作れる機能があり、いつも活用させてもらっています。
ところが、新規にWordPressで作ったサイトでJetpackのコンタクトフォーム機能を使おうとした際にエラー発生。
エラー表示内容と解決方法
エラー表示の内容はこのようになっています。
Warning: strpos() expects parameter 1 to be string, array given in /(WordPressインストール場所)/wp-includes/shortcodes.php on line 193
WordPressとJetpackのバージョンは以下の通り。
- WordPress3.9.1
- Jetpack by WordPress.com2.9.3
解決に至ったページ
エラー内容をそのままGoogle検索。
すると発見したのは下記ページ。
http://wordpress.org/support/topic/wp-39-warning-strpos-expects-parameter-1-to-be-string
リンク先はWordPressフォーラム。
リンク先ページ中段にあった内容で作業してみました。
/wp-includes/shortcodes.php
の193行目、
if ( false === strpos( $content, '[' ) ) {
この行を以下のように変更。
if ( false === strpos( (string) $content, '[' ) ) {
これでエラー表示は消え、コンタクトフォームも問題なく動いています。