ご回答ありがとうございます。お礼が遅れ失礼しました。
お手数をお掛けして申し訳ございませんが、view.phpのどこを変更すると選択肢の言語が変更されるのでしょうか。
ご教示いただけますと幸いです。
よろしくお願いいたします。
<?php defined('C5_EXECUTE') or die("Access Denied."); ?>
<div class="ccm-block-switch-language">
<form method="post" class="form-inline">
<?php echo $label?>
<?php echo $form->select('language', $languages, $activeLanguage, array(
'data-select' => 'multilingual-switch-language',
'data-action' => $view->action('switch_language', $cID, '--language--')
))?>
</form>
</div>
言語の切り替え 選択肢の言語変更
2018年4月10日 at 20:36
フランス語、英語、日本語三カ国語のサイトを作っています。
言語の切り替えの選択肢で表示される言語が、自動的に開かれているページの言語に翻訳されます。しかし、例えばフランス語ページから日本語に移りたい人はフランス語が読めないことがあるわけで、これは実は問題があるのではないかと考えます。日本語が読めない人が日本語ページから別の言語に移りたい場合の方が問題多いかもしれません。
添付の画像は、フランス語のページでの言語の切り替えの表示です。
どのページで見ても選択肢はその国の言葉で表示することはできますでしょうか。
つまり、
français
English
日本語
とすることは可能でしょうか。
ご教示頂けますと幸いです。よろしくお願い致します。
タグ:
Re: 言語の切り替え 選択肢の言語変更
2018年4月16日 at 20:55
これだと、一気にselectの入れてるので
concrete > blocks > switch_language > templates > flags > view.php
を参照して
<div class="ccm-block-switch-language-flags">
<div class="ccm-block-switch-language-flags-label"><?php echo $label?></div>
<?php foreach($languageSections as $ml) { ?>
<a href="<?php echo $view->action('switch_language', $cID, $ml->getCollectionID())?>"
title="<?php echo $ml->getLanguageText($locale)?>"
class="<?php if ($activeLanguage == $ml->getCollectionID()) { ?>ccm-block-switch-language-active-flag<?php } ?>"><?php
print $ih->getSectionFlagIcon($ml);
?></a>
<?php } ?>
</div>
foreach($languageSections as $ml)
で、各言語のリンクがリストで出てきます。
<?php echo $view->action('switch_language', $cID, $ml->getCollectionID())?>
が各リンクです。
<?php echo $ml->getLanguageText($locale)?>
で各テキストが表示されますので
言葉だけのメニューをループで作ると
<div class="ccm-block-switch-language-flags">
<div class="ccm-block-switch-language-flags-label"><?php echo $label?></div>
<?php foreach($languageSections as $ml) { ?>
<a href="<?php echo $view->action('switch_language', $cID, $ml->getCollectionID())?>"
title="<?php echo $ml->getLanguageText($locale)?>"
class="<?php if ($activeLanguage == $ml->getCollectionID()) { ?>ccm-block-switch-language-active-flag<?php } ?>"><?php echo $ml->getLanguageText($locale)?></a>
<?php } ?>
</div>
となります。
あとは、$ml->getLanguageText($locale)のテキストに応じて変更してみてください。
concrete > blocks > switch_language > templates > flags > view.php
を参照して
<div class="ccm-block-switch-language-flags">
<div class="ccm-block-switch-language-flags-label"><?php echo $label?></div>
<?php foreach($languageSections as $ml) { ?>
<a href="<?php echo $view->action('switch_language', $cID, $ml->getCollectionID())?>"
title="<?php echo $ml->getLanguageText($locale)?>"
class="<?php if ($activeLanguage == $ml->getCollectionID()) { ?>ccm-block-switch-language-active-flag<?php } ?>"><?php
print $ih->getSectionFlagIcon($ml);
?></a>
<?php } ?>
</div>
foreach($languageSections as $ml)
で、各言語のリンクがリストで出てきます。
<?php echo $view->action('switch_language', $cID, $ml->getCollectionID())?>
が各リンクです。
<?php echo $ml->getLanguageText($locale)?>
で各テキストが表示されますので
言葉だけのメニューをループで作ると
<div class="ccm-block-switch-language-flags">
<div class="ccm-block-switch-language-flags-label"><?php echo $label?></div>
<?php foreach($languageSections as $ml) { ?>
<a href="<?php echo $view->action('switch_language', $cID, $ml->getCollectionID())?>"
title="<?php echo $ml->getLanguageText($locale)?>"
class="<?php if ($activeLanguage == $ml->getCollectionID()) { ?>ccm-block-switch-language-active-flag<?php } ?>"><?php echo $ml->getLanguageText($locale)?></a>
<?php } ?>
</div>
となります。
あとは、$ml->getLanguageText($locale)のテキストに応じて変更してみてください。
Re: 言語の切り替え 選択肢の言語変更
2018年7月9日 at 10:53
お世話になります。
concrete5 GitHub で報告し
http://github.com/concrete5/concrete5/issues/6817
マージされました
http://github.com/concrete5/concrete5/pull/6824
次期バージョンの concrete5 で取り入れられます!
ありがとうございました。
これからも改善点がございましたらご要望をお願いします!
concrete5 GitHub で報告し
http://github.com/concrete5/concrete5/issues/6817
マージされました
http://github.com/concrete5/concrete5/pull/6824
次期バージョンの concrete5 で取り入れられます!
ありがとうございました。
これからも改善点がございましたらご要望をお願いします!
Your post has been saved and will be published after approval by the forum moderator.
pictron
Re: 言語の切り替え 選択肢の言語変更
concrete > blocks > switch_language
ですので、このview.phpを
application > blocks > switch_language > templates > 任意の名前 > view.php
のカスタムテンプレートで変更すればできます。
どこかでやったので、もしPHPのカストマイズがわからなければ探します。