i'm a newbie about CMS Made Simple, at the current i have a stuck with handle multi language features. (2.2.16 version)
i have already created web page with (english/ vietnamese/ japanese)
with below structure:
1:Home (english)
2: Services
2.1 Sercices_a
2.2 Sercices_b
2.3 Sercices_c
and vietnamese/ japanese have the same page too.
So with each language will have core::page for handle html inside.
with default setting of system, menu navigation are render all menu navigation (english/ vietnamese/ japanese) by using {Navigator} to relate Navigator module in 'Allxone Main Navigation'
Code: Select all
<nav class='main-navigation cf noprint' id='nav' role='navigation'>
{Navigator loadprops='0' template='Allxone Main Navigation'} {* A Navigator module, database Template *}
</nav>
i have also created select option for switcher language as below inside each core::page
Code: Select all
<select id="languageSwitcher" style="background-color: cadetblue">
<option value="1">English</option>
<option value="2">Vietnamese</option>
<option value="3">Japanese</option>
</select>
Code: Select all
{strip}
% {$node|print_r}
{$main_id = ' id=\'main-menu\''}
{function do_class}
{if count($classes) > 0} class='{implode(' ',$classes)}'{/if}
{/function}
{function name='Simplex_menu' depth='1'}
<ul{$main_id}{if isset($ul_class) && $ul_class != ''} class="{$ul_class}"{/if}>
{$main_id = ''}
{$ul_class = ''}
{foreach $data as $node}
{* setup classes for the anchor and list item *}
{$list_class = []}
{$href_class = ['cf']}
{$parent_indicator = ''}
{$aria_support = ''}
{if $node->current || $node->parent}
{* this is the current page *}
{$list_class[] = 'current'}
{$href_class[] = 'current'}
{/if}
{if $node->children_exist}
{$list_class[] = 'parent'}
{$aria_support = ' aria-haspopup=\'true\''}
{$parent_indicator = ' <i class=\'icon-arrow-left\' aria-hidden=\'true\'></i>'}
{/if}
{* build the menu item node *}
{if $node->type == 'sectionheader'}
{$list_class[] = 'sectionheader'}
<li{do_class classes=$list_class}{$aria_support}><span>{$node->menutext}{$parent_indicator}</span>
{if isset($node->children)}
{Simplex_menu data=$node->children depth=$depth+1}
{/if}
</li>
{else if $node->type == 'separator'}
{$list_class[] = 'separator'}
<li{do_class classes=$list_class}'><hr class='separator'/></li>
{else}
{* regular item *}
<li{do_class classes=$list_class}{$aria_support}>
<a{do_class classes=$href_class} href='{$node->url}'{if $node->target != ''} target='{$node->target}'{/if}>{$node->menutext}{$parent_indicator}</a>
{if isset($node->children)}
{Simplex_menu data=$node->children depth=$depth+1}
{/if}
</li>
{/if}
{/foreach}
</ul>
{/function}
{if isset($nodes)}
{Simplex_menu data=$nodes depth='0' ul_class='cf'}
{/if}
{/strip}
for the next step i do not know how can handle make Navigator module only render language menu by selected (default language will be english)
i have try research below this link
https://cmscanbesimple.org/blog/multili ... ade-simple
but can not clearly for the article
I appreciate if someone can help me re-solve these features.