前提・実現したいこと
phpの分岐に関してですが
もし「英語のページだったら」「en/header」のファイルを読み込む。
もし「中国のページだったら」「zh-CN/header」のファイルを読み込む。
という風にしたいです。
現状は英語のみのページにしています。
発生している問題・エラーメッセージ
Parse error: syntax error, unexpected 'elseif' (T_ELSEIF) in /home/users/2/holy.jp-tgs/web/bacon.in.net/wp-content/themes/bacon/header.php on line 4
該当のソースコード
lang
1<?php $locale = get_locale(); 2if ('en_US' == $locale ) { ?> 3<?php get_template_part('en/header'); ?> 4<?php elseif ('zh' == $locale ) { ?> 5<?php get_template_part('zh-CN/header'); ?> 6<!DOCTYPE html> 7<html lang="ja"> 8 <head> 9・ 10・ 11・
試したこと
lang
1<?php $locale = get_locale(); /* 現在のロケールを取得 */ ?> 2<?php if ('en_US' == $locale ) : /* 英語版 */?> 3 4 <!-- 英語版の内容 --> 5 6<?php elseif ('zh_TW' == $locale ) : /* 中国語(繁体字)*/?> 7 8 <!-- 中国語(繁体字)の内容 --> 9 10<?php elseif ('zh-CN' == $locale ) : /* 中国語(簡体字)版 */?> 11 12 <!-- 中国語(簡体字)版の内容 --> 13 14<?php else: /* 日本語版 */ ?> 15 16 <!-- 日本語の内容 --> 17 18<?php endif; ?> 19<!DOCTYPE html> 20<html lang="ja"> 21 <head> 22・ 23・ 24・
補足情報(FW/ツールのバージョンなど)
こちらの記述にすると正常にサイトが読み込めました。(英語サイトのみですが)
lang
1<?php $locale = get_locale(); 2if ('en_US' == $locale ) { ?> 3<?php get_template_part('en/header'); ?> 4<?php } else { ?> 5<!DOCTYPE html> 6<html lang="ja"> 7 <head> 8・ 9・ 10・
コードはマークダウンでご提示ください。
あとこれはWordPressでしょうか。見慣れない関数があるようですが。
タグに追加しておいてください
マークダウンとは太文字のことでしょうか?
こちらはWordPressです。
マークダウン → https://teratail.com/help#about-markdown
だけど、コード箇所は「```」バッククォート3文字のみを書いた行をコード箇所の前と後ろ2箇所に書いてほしいって意味です。バッククォート3文字の前後に文字がつかないように気をつけて。
すみません、マークダウンできました!
Syntax は構文エラーです。
「真っ白になる」ということはサーバー側の設定でエラー時に処理を中断するようになっているのでしょう。
画面にエラー詳細でていないのでしたらサーバーのエラーログを確認してください
エラーログはオンにしました。
構文エラーのようですが
どこの構文が間違っていますでしょうか?
ですから、画面に詳細出てないのでしたらエラーログを確認してください。
該当のコードに提示されてるものは「おそらく」全てではないですよね。ifがちゃんと終わってないし。ただ我々には提示されたものがすべてなので、それに対するアドバイスしか持ち得ませんしWordPressとなるとまた別途確認が必要になるかもしれません。
そこでアドバイスを得ようと思ったら自身が書いたコードなるべく全体とエラーメッセージ全文を提示してもらうしかありません。
すみません・・・ちゃんとエラー内容のログとコードを続きまで書きました
回答1件
あなたの回答
tips
プレビュー