Здраствуйте.
Нужно доработать меню выбора языка.
есть переделанный модуль выбор языка
override\modules\ps_languageselector\ps_languageselector.php
<?php
use PrestaShop\PrestaShop\Core\Module\WidgetInterface;
if (!defined('_PS_VERSION_'))
exit;
class Ps_LanguageselectorOverride extends Ps_Languageselector implements WidgetInterface
{
public function install()
{
if (!parent::install() || !$this->registerHook('XXXXXX'))
return false;
return true;
}
public function getWidgetVariables($hookName = null, array $configuration = [])
{
$id_shop = (int)$this->context->shop->id;
$id_group = (int)$this->context->shop->id_shop_group;
$shop = new Shop($id_shop);
$shopsList = $shop::getShops(false, $id_group);
foreach ($shopsList as $index => $currShop) {
$shopsList[$index]['lang'] = Language::getLanguages(true, $currShop['id_shop'])[0];
}
return array(
'shopsGroup' => $shopsList,
'currentShop' => $id_shop
);
}
public function hookDisplayXXXXXX($params)
{
$shopsList = $this->getWidgetVariables();
if (1 < count($shopsList['shopsGroup'])) {
$this->smarty->assign($shopsList);
return $this->fetch('module:ps_languageselector/ps_languageselector.tpl');
}
return false;
}
}
/themes/xxx/modules/ps_languageselector/ps_languageselector.tpl
<div id="mod-ps-languageselector">
<h4>{l s='Language:' d='Shop.Theme.Global'}</h4>
{if isset($shopsGroup)}
{foreach from=$shopsGroup item=shop}
<a href="http://{$shop.domain}" class="{if $shop.id_shop == $currentShop}active{/if}">
{if isset($shop.lang.id_lang)}
<img src="/img/l/{$shop.lang.id_lang}.jpg" alt="{$shop.lang.language_code}" title="{$shop.lang.name}" />
{else}
<img src="/img/l/none.jpg" alt="Flag no found">
{/if}
</a>
{/foreach}
{/if}
</div>
суть в том что он меняет выбор языка на выбор магазина
<div class="language-selector-wrapper">
<div class="language-selector dropdown js-dropdown">
<div class="desktop-dropdown">
<span id="language-selector-label" class="hidden-md-up">{l s='Language:' d='Shop.Theme.Global'}</span>
<button class="btn-unstyle dropdown-current expand-more" data-toggle="dropdown" data-offset="0,2px" aria-haspopup="true" aria-expanded="false" aria-label="{l s='Language dropdown' d='Shop.Theme.Global'}">
<span><img src="{$urls.img_lang_url}{$current_language.id_lang}.jpg" alt="{$current_language.name_simple}" width="16" height="11"></span>
<span> {$current_language.name_simple}</span>
<span class="dropdown-icon"><span class="expand-icon"></span></span>
</button>
<div class="dropdown-menu js-language-source" aria-labelledby="language-selector-label">
<ul class="language-list">
{foreach from=$languages item=language}
<li {if $language.id_lang == $current_language.id_lang} class="current" {/if}>
<a href="{url entity='language' id=$language.id_lang}" title="{$language.name}" class="dropdown-item" data-iso-code="{$language.iso_code}">
<span class="l-name">
<span><img src="{$urls.img_lang_url}{$language.id_lang}.jpg" alt="{$language.name_simple}" width="16" height="11"></span>
<span> {$language.name_simple}</span>
</span>
<span class="l-code">{$language.iso_code}</span>
</a>
</li>
{/foreach}
</ul>
</div>
</div>
</div>
</div>
этот код родной для шаблона. нужно адаптировать код к шаблону