Перевод на другой язык

Доброго времени суток, Ув администрация.
Перевожу свой сайт на украинский язык в основном через базу и заметил несколько моментов, может подскажите как решить

  1. Блок homepage-bar main-bar не могу перевести названия на украинский “Оплата” “Доставка” “Скидки” “Гарантия”
    2.Блок tabs__caption не могу перевести названия на украинский * [ Новинки]* [ Скидки]* [ Лидеры продаж]* [ Рекомендуемые]
    3.В карточке товара не могу добавить табы, доставка, оплата,
    4.В карточке товара не могу перевести таб “Характеристики”
    5.Можно ли создать страницу на укр. языке, хотя бы на уровне базы. Например есть таблица “products” или “categories” добавить туда столбец language_id и прописать urlы

Добрый,

  1. этот блок не переводится пока(
  2. этот тоже, потому что задается в админке
  3. нужно добавить информационные страницы для вашего языка и у них поставить ship_tab и pay_tab
  4. по умолчанию нет таба характеристики, смотрите в файле, скорее всего там задан статичный текст
  5. чтобы разные урлы были у страниц? нет так нельзя, в следующих версиях планируется сделать сделать префиксы для url

Спасибо, табы ship_tab и pay_tab проставил все ок, “характеристики” что на русском что на украинским написание одинаковое, не проблема. Но вот заметил, что в украинской версии не отображаются фильтры справа , только фильтр по производителю выводится, это тоже баг или может что то не так делаю?

По фильтрам не смотрел еще для разных языков как там все устроено.

У спецификаций заданы значения для вашего языка?

Да, спецификации заданы и отображаются на станице товара, но фильтров в категории нету, только бренды и кстати на вашем сайте тоже http://ns.nexoos.ru/products_filter.php?type=filter&cat=2&cPath=2&f17=red.png&language=uk

Я понял, будем разбираться, правки в следующих версиях будут, добавил в задачи.
Если найдете что еще не переводится, пишите в этой теме, будем править.

1 лайк

С фильтрами разобрался, нужно было через базу заполнить таблицы specification_***** и specification_filters*** на нужных я зыках и фильтры стали отображаться как положено, но Заметил , что
при заполнении таблицы products_specifications на 2-х языках, значения спецификаций дублируется http://ns.nexoos.ru/samsung-galaxy-tab-3.html?language=ru, обратите внимание на “тестовое поле” подскажите, что это может быть.
Вообще советую со спецификациями работать через базу sql,

В файле \inc\get_spec_array.inc.php

Заместо

$prod_query = vam_db_query( "select ps.specification from products_specifications ps where products_id = ".$products_id." and ps.specifications_id = '".$id."'" );

Вставьте

$prod_query = vam_db_query( "SELECT ps.specification FROM ".TABLE_PRODUCTS_SPECIFICATIONS." ps WHERE products_id = ".(int)$products_id." AND ps.specifications_id = '".(int)$id."' AND ps.language_id = " . (int)$_SESSION['languages_id'] );

Вставил, перестала открываться карточка товара

Скорее всего ошибку при вставке допустили

Да вроде правильно сделал, может из за того что спецификации в табах, даже не знаю что это может быть.
if($only_name){
$field_array[ $id ] = array (
‘id’ => $id,
‘sort_order’ => $specifications_heading[ ‘specification_sort_order’ ],
‘column_name’ => $specifications_heading[ ‘products_column_name’ ],
‘column_justify’ => $specifications_heading[ ‘column_justify’ ],
‘name’ => $specifications_heading[ ‘specification_name’ ],
‘prefix’ => $specifications_heading[ ‘specification_prefix’ ],
‘suffix’ => $specifications_heading[ ‘specification_suffix’ ],
‘display’ => $specifications_heading[ ‘filter_display’ ],
‘show_filter’ => $specifications_heading[ ‘show_filter’ ],
‘enter’ => $specifications_heading[ ‘enter_values’ ],
‘group_id’ => $group_id,
);
}
else{
$prod_query = vam_db_query( “SELECT ps.specification FROM “.TABLE_PRODUCTS_SPECIFICATIONS.” ps WHERE products_id = “.(int)$products_id.” AND ps.specifications_id = '”.(int)$id."’ AND ps.language_id = " . (int)$_SESSION[‘languages_id’] );

            if ( vam_db_num_rows($prod_query) > 0 ) {
                $field_array[$id] = array(
                    'ids' =>         $id,
                    'name' => $specifications_heading[ 'specification_name' ],
                    'desc' => $specifications_heading[ 'specification_description' ],
                    'prefix' =>     $specifications_heading[ 'specification_prefix' ],
                    'suffix' =>     $specifications_heading[ 'specification_suffix' ],
                    'display' =>    $specifications_heading[ 'filter_display' ],
                    'show_filter' =>    $specifications_heading[ 'show_filter' ],

Тогда нужно узнать ошибку какую выдает

Ничего не выводит, попробовал В файле \includes\application_top.php Заместо ini_set(‘display_errors’,0); Вставить ini_set(‘display_errors’,1); и поставить в админке nexoos “показывать ошибки php” результат белый экран на любой кароточке

Чуть не правильный код выслали, проблема с кавычками, подправил, все работает, спасибо Код если кому надо переводить :
$prod_query = vam_db_query(“select ps.specification from products_specifications ps where products_id = “.(int)$products_id.” AND ps.specifications_id = '”.(int)$id."’ AND ps.language_id = " . (int)$_SESSION[‘languages_id’] );

1 лайк

Подправил код

Доброго времени суток. Если выставляешь скидку, на русском языке пишется время оставшееся до конца акции дней, на украинском пишется тоже дней но вместо “дней” нужно чтобы писалось “днів”

ок, спасибо

в templates/nexshops/module/main_tabs_products.html

меняем

            {if $item.type === 'tab_new'}<i class="icon-new"></i>{/if}
            {if $item.type === 'tab_specials'}<i class="icon-sale"></i>{/if}
            {if $item.type === 'tab_best_sellers'}<i class="icon-star-empty"></i>{/if}
            {if $item.type === 'tab_recomend'}<i class="icon-thumb-up"></i>{/if}
            <span class="dotted_tab_text">{$item.name}</span>

на

		{if $smarty.session.language_code == 'ru'}
            {if $item.type === 'tab_new'}<i class="icon-new"></i>{/if}
            {if $item.type === 'tab_specials'}<i class="icon-sale"></i>{/if}
            {if $item.type === 'tab_best_sellers'}<i class="icon-star-empty"></i>{/if}
            {if $item.type === 'tab_recomend'}<i class="icon-thumb-up"></i>{/if}
            <span class="dotted_tab_text">{$item.name}</span>
		{/if}
		{if $smarty.session.language_code == 'uk'}
            {if $item.type === 'tab_new'}
				<i class="icon-new"></i>
				<span class="dotted_tab_text">Новинки</span>
			{/if}
            {if $item.type === 'tab_specials'}
				<i class="icon-sale"></i>
				<span class="dotted_tab_text">Знижки</span>
			{/if}
            {if $item.type === 'tab_best_sellers'}
				<i class="icon-star-empty"></i>
				<span class="dotted_tab_text">Лідери продажу</span>
			{/if}
            {if $item.type === 'tab_recomend'}
				<i class="icon-thumb-up"></i>
				<span class="dotted_tab_text">Рекомендовані</span>
			{/if}
        {/if}
1 лайк

с версии 7.1 сделано