PHP更新後に起きたエラー
-
こんにちは。
エラーコードからわかることは、Beautiplus というお使いのテーマの「子テーマ」でカスタマイズを行なっており、そのカスタマイズコードが記述されている、functions.php で新しいPHPがサポートしていない部分があるということです。まずは、サーバー側のPHPを元のバージョンに戻して、エラーが解消されるか確認してください。
ただ、これは暫定措置なのです。カスタマイズされた部分のコード(322-323行目あたり)の記述を新しいバージョンのPHPでも対応できるような改修が必要と思われます。どんなカスタマイズをしているかは、わからないので、今の段階で有効なアドバイスは難しいのですが、
@eureka20080321 さんは、カスタマイズの内容をご存知ですか?
それがわかれば、もう少し具体的にアドバイスできるかもしれません。.
ご対応いただきありがとうございます。
当方カスタマイズが久しぶりだったので探りさぐりです。
追加cssで入力した数字部分でしょうか?
下記のコードを入れてありました。このフォントサイズがサポートされていないのでしょうか?
fa-cc-discover{
font-size: 4.0rem;
}よろしくお願いします。
いえ。追加CSSではなく….
子テーマ「beautiplus_child」の配下にある、functions.php のファイルです。
FTPツールなどを使って確認してくださいね。エラーメッセージからすると、PHPプログラムだと思います。
エラーを解消したいとお思いでしたら、PHPのバージョンを一旦は元に戻して方がよろしいかと思います。
すいません、ファンクションphpですね。
// OGP設定
add_action('wp_head', 'ogp_setting_4536');
function ogp_setting_4536() {
$fb_app_id = get_the_author_meta('fb_app_id',$user_ID);
$twitter = get_the_author_meta('twitter',$user_ID);
$no_img = get_template_directory_uri().'/img/4536_logo.png';その中の
$fb_app_id = get_the_author_meta('fb_app_id',$user_ID);
$twitter = get_the_author_meta('twitter',$user_ID);部分が322~323にあたります。
こちらで教わったコードだと思います。
-
この返信は3日、 11時間前に
瀬戸内ことり (Setouchi Kotori)が編集しました。理由: コードブロックを適切に使用
おそらく…
エラーの原因は $user_ID という変数が定義されていないことにあるようです。ここで使われている $user_ID は、ユーザーのIDを取得するために使われていると思われますが、この変数がどこにも定義されていないためにエラーが発生しています。
以下、修正例です。$fb_app_id = get_the_author_meta('fb_app_id', get_current_user_id());
$twitter = get_the_author_meta('twitter', get_current_user_id());1.get_current_user_id()
関数の使用: 現在のログインユーザーのIDを取得します。これにより、$user_ID
を自分で定義する必要がなくなります。
2.get_the_author_meta 関数: 第二引数に適切なユーザーIDを指定する必要があります。get_current_user_id()
を使用することで、ログインしているユーザーのメタデータを取得することができます。お忙しい中、ご回答いただきありがとうございます。
自宅のパソコンだと編集ができないので、明日職場でご指摘いただいた部分を早速やってみたいと思います。
とりあえず、phpのバージョンを落として対応してあります。
ひとまず今日はここまでにし明日またご返信したいと思いますので、しばしお付き合いいただけますと助かります。
よろしくお願いします。
ひとまず、PHPのバージョンを落とすことでエラー表示が消えてよかったです。
明日、落ち着いて作業なさってください。こんにちは、昨日はありがとうございました。
早速教えていただいた関数をfunctions.phpの322.323にペーストし、ファイル更新したところ
wp-content/themes/beautiplus_child/functions.php ファイルの322行目でエラーが発生したため、PHP コードの変更が適用されませんでした。修正して再度保存してください。syntax error, unexpected ‘$fb_app_id’ (T_VARIABLE)
上記のようなエラーが出てきました。
これは()内にユーザーIDを入れてないからでしょうか?それともそもそも旧twitterだから起きている事でしょうか?
引き続きよろしくお願いします。
おそらく、特定の行でコードの書き方が正しくないことが原因です。
- セミコロンの抜けや、構文エラー(例えば、カンマの代わりにピリオドを使ったり、クォートの使い間違い)などがある場合。
- クォーテーションマークや括弧の閉じ忘れ。
- PHPのブロック()が正しく開閉されていない。
貼り付けたコードでコピーし損ねたっていうことはないですか?
ご回答いただきありがとうございます。
もう一度ペーストし直しましたら、無事に更新できました。
PHPのバージョンを上げテストした所、問題なく表示できていました。
丁寧にご回答いただきありがとうございました。大変助かりました。
解決できて良かったですね、お疲れ様でした。
-
この返信は3日、 11時間前に
- このトピックに返信するにはログインが必要です。