サポート » マルチサイト » 同一htmlでのコンテンツ出し分け

  • samidare

    (@micoshiva)


    マルチサイトに限った案件ではありませんが、
    子テーマを使わず、1つのテーマで2言語対応のサイトを作成しています。
    通常の固定ページや投稿であれば、各ページに振り分けられているカスタム用classで事足りるのですが
    プラグイン(woocommerce)を使用し、それを固定ページに反映させた場合、
    2言語とも同一のhtmlとなって出力されてしまい、
    自動でbodyに振り分けられているカスタムclassもまったく同じ表示になってしまいます。

    当方デザイナー寄りコーダーのため、プログラムの知識がありません。
    思いつく方法としては、下記の通りです。

    ①各言語のページbodyにそれぞれclassを独自付与(ja,en等)
    ②それをif文等での表示分岐したい
    (header.php上でjavascriptのdocument writeなどを使用? or
    出し分け用のphpファイル作成? or
    function.phpに独自classを追記して当該ファイル内で分岐? など)

    ここら辺の方法が思いつきますが、実際にプログラムコードが書けないため
    どれが今のサイトに適しているのか当方ではいまいち判断がつきません。

    ●当該サイトのコンディション
    ・表示場所はheaderエリア
    ・表示分けするコンテンツはpタグ程度のテキストのみ
    ・woocomerceの商品一覧リストを固定ページに表示させており、その固定ページがhtml同一になってしまっている
    ・その他の固定ページは出し分けできている

    以上を踏まえ、何かアドバイス頂けたら幸いです。
    プログラム分かる方なら難なく解決出来る問題だと思うのですが、
    知識がないため自力で解決しようにもわかりやすい使用例を見つけることもできず難航しております。
    どうぞよろしくお願いいたします。

    ps.もうまもなくサイトが完成というところなのですが、
    こういった件には子テーマを作成した方が簡単ということもあるんでしょうか?
    そういった見解も頂けたら、嬉しいです。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • samidare

    (@micoshiva)

    <?php $locale = get_locale(); /* 現在のロケールを取得 */ ?>
    <?php if (‘en_US’ == $locale ) : /* 英語版 */?>

    <!– 英語版の内容 –>

    <?php else: /* 日本語版 */ ?>

    <!– 日本語の内容 –>

    <?php endif; ?>

    で解決しました。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「同一htmlでのコンテンツ出し分け」には新たに返信することはできません。