Вопросы по разработке и модификации CS-Cart

Привет. Подскажите, как заставить youtube ролик который находится в popup окне останавливаться после его закрытия?

Окно закрываю, а звуковая дорожка играет дальше.

Прошу помощи, вопрос так и не решен, во вкладках на странице товара происходит тоже самое, как пример добавить вкладку с роликом youtube.

Прошу помощи, вопрос так и не решен, во вкладках на странице товара происходит тоже самое, как пример добавить вкладку с роликом youtube.

Как вы видео вставляете? Если через iframe, то никак. Если через embed code, то есть решения

http://stackoverflow.com/questions/6671232/youtube-api-stop-video

Но код писать в любом случае под CS-Cart надо

Здравствуйте!

Хотел добавить новую less переменную изменяемую из админки (типа gridColumns)

Нашел php класс less и его функции getLayoutStyleVariables

    public static function getLayoutStyleVariables($layout_data = array())
    {
        if (empty($layout_data)) {
            $layout_data = Registry::get('runtime.layout');
        }
    // default values
    $variables = array(
        'gridColumns' => '16',
        'fluidContainerMaxWidth' => '960px',
        'fluidContainerMinWidth' => '760px'
    );

    if ($layout_data['layout_width'] == 'fluid') {
        $variables['fluidContainerMinWidth'] = $layout_data['min_width'] . 'px';
        $variables['fluidContainerMaxWidth'] = $layout_data['max_width'] . 'px';

    } elseif ($layout_data['layout_width'] == 'full_width') {
        $variables['fluidContainerMinWidth'] = 'auto';
        $variables['fluidContainerMaxWidth'] = 'auto';
    }

    if (!empty($layout_data['width'])) {
        $variables['gridColumns'] = $layout_data['width'];
    }

    return self::arrayToLessVars($variables);
} </pre>

Дальше не хватает знаний php.

Надо добавить мои данные в массив $variables или заново его переписать.

Создал в моем модуле init.post.php

<?php

use Tygh\Themes\Styles;
use Tygh\Registry;
use Tygh\Less;

$variabless2 = new Less();

Дальше все, как получить доступ к getLayoutStyleVariables ?

Спасибо.

Можно добавлять новые переменные, расширив схему темы:

design/themes/ВАША_ТЕМА/styles/schema.json

Можно добавлять новые переменные, расширив схему темы:

design/themes/ВАША_ТЕМА/styles/schema.json

Да, через тему можно, но хотелось бы попробовать через модуль.

Есть ли такая возможность?

Проблема с выводом. В блоке товары вывожу рекомендуемые товары со своим заполнением. Это заполнение должно брать товары из другой категории и сортировать их так, чтобы выводилось три самых первых("верхних") товара.

Товары эти выводит, но сортировать не хочет. В чем загвозка?

// делаем новое заполнение для рекомендуемых товаров
function fn_my_changes_get_products($params, &$fields, &$sortings, &$condition, &$join, $sorting, &$group_by, $lang_code, $having){
if (!empty($params['clocks_and_phones_autofill'])) {
    $product_category = db_get_field("SELECT category_id FROM ?:products_categories WHERE product_id = ?i AND link_type = 'M'", $params['clocks_and_phones_autofill_for_product_id']);
    $category_data = fn_get_category_data($product_category);

    if ( $category_data['parent_id'] == 1 ) {
        // если товар относится к часам, то показываем телефоны
        $ids = db_get_fields("SELECT product_id FROM ?:products_categories WHERE category_id = ?i ORDER BY position DESC", 48);
    } else {
        // во всех других случаях - часы
        $ids = db_get_fields("SELECT product_id FROM ?:products_categories WHERE category_id = ?i ORDER BY position DESC", 1);
    }

    $fields[] = '?:products_categories.position as position';
    $sortings['position'] = 'position';
    $condition .= ' AND products.product_id IN (' . implode(", ", $ids) . ') ';
    $join .= ' LEFT JOIN ?:products_categories ON ?:products_categories.product_id = products.product_id';
}


return true;

}

Да, через тему можно, но хотелось бы попробовать через модуль.

Есть ли такая возможность?

Нужно копать. Насколько мне известно, хуков там нету.

Проблема с выводом. В блоке товары вывожу рекомендуемые товары со своим заполнением. Это заполнение должно брать товары из другой категории и сортировать их так, чтобы выводилось три самых первых("верхних") товара.

Товары эти выводит, но сортировать не хочет. В чем загвозка?

// делаем новое заполнение для рекомендуемых товаров
function fn_my_changes_get_products($params, &$fields, &$sortings, &$condition, &$join, $sorting, &$group_by, $lang_code, $having){
if (!empty($params['clocks_and_phones_autofill'])) {
    $product_category = db_get_field("SELECT category_id FROM ?:products_categories WHERE product_id = ?i AND link_type = 'M'", $params['clocks_and_phones_autofill_for_product_id']);
    $category_data = fn_get_category_data($product_category);

    if ( $category_data['parent_id'] == 1 ) {
        // если товар относится к часам, то показываем телефоны
        $ids = db_get_fields("SELECT product_id FROM ?:products_categories WHERE category_id = ?i ORDER BY position DESC", 48);
    } else {
        // во всех других случаях - часы
        $ids = db_get_fields("SELECT product_id FROM ?:products_categories WHERE category_id = ?i ORDER BY position DESC", 1);
    }

    $fields[] = '?:products_categories.position as position';
    $sortings['position'] = 'position';
    $condition .= ' AND products.product_id IN (' . implode(", ", $ids) . ') ';
    $join .= ' LEFT JOIN ?:products_categories ON ?:products_categories.product_id = products.product_id';
}


return true;

}

Попробуйте добавить

$params['sort_by'] = 'position';

и перед $params в аргументах функции надо амперсанд поставить

Нужно копать. Насколько мне известно, хуков там нету.

Да хуков там нет, но возможно, можно подключиться к функции внутри класса?

Попробуйте добавить

$params['sort_by'] = 'position';

и перед $params в аргументах функции надо амперсанд поставить

Спасибо!

Все заработало

Как вы видео вставляете? Если через iframe, то никак. Если через embed code, то есть решения

http://stackoverflow.com/questions/6671232/youtube-api-stop-video

Но код писать в любом случае под CS-Cart надо

Спасибо. Но что-то никак не получается прикрутить, так что пока еще в поисках решения.

Здравствуйте. Перерыл всю документацию - не могу найти хук или фаил, к которому можно подключиться и изменить на странице товара список выводимых характеристик. Будьте добры, помогите

Здравствуйте. Перерыл всю документацию - не могу найти хук или фаил, к которому можно подключиться и изменить на странице товара список выводимых характеристик. Будьте добры, помогите

Если рядом с заголовком, то

design/themes/YOUR_THEME/templates/views/products/components/product_features_short_list.tpl

Если в вкладке, то

design/themes/YOUR_THEME/templates/views/products/components/product_features.tpl

С хуками там туго, используйте override

Здравствуйте

подскажите кто знает где редактируется шаблон счета для юр лиц - /index.php?dispatch=orders.print_invoice_payment&order_id=113

Перерыл все папки и не могу найти print_invoice_payment.tpl . В моя_тема/temlpates/views/orders - нет и в моя_тема/mail/templates/orders - нет (есть invoice.tpl, print_invoice.tpl).

А то надо поправить поле "Поставщик", так как сейчас отображается - "_supplier: ООО Пример", а должно быть "Поставщик: ООО Пример".

Заранее спасибо.

В вашем магазине отсутствует языковая переменная supplier. Откройте страницу Администрирование > Языки > Переводы, нажмите на кнопку +, в поле ввода Языковая переменная введите supplier, в поле ввода Значение введите Поставщик и нажмите на кнопку Создать.

В вашем магазине отсутствует языковая переменная supplier. Откройте страницу Администрирование > Языки > Переводы, нажмите на кнопку +, в поле ввода Языковая переменная введите supplier, в поле ввода Значение введите Поставщик и нажмите на кнопку Создать.

Cпасибо. Значение появилось.
А нет ли информации где шаблон может лежать?

Cпасибо. Значение появилось.
А нет ли информации где шаблон может лежать?

В design/themes/[ВАША_ТЕМА]/mail/templates/addons/rus_payments и design/backend/mail/templates/addons/rus_payments

Здравствуйте

подскажите кто знает где редактируется шаблон счета для юр лиц

а что подразумевается под шаблоном для юр лиц? в форме 1С?

В design/themes/[ВАША_ТЕМА]/mail/templates/addons/rus_payments и design/backend/mail/templates/addons/rus_payments

Шаблонов две штуки.

Этот design/themes/[ВАША_ТЕМА]/mail/templates/addons/rus_payments - выводится в личном кабинете клиента.

А этот design/backend/mail/templates/addons/rus_payments - для чего?

Есть ли возможность счет привязать к письму которое отправляется клиенту после оформления заказа?

И не подскажете как добавить значение НДС в счете, а то оно не показывается? В карточке товара пункта про НДС нет (в демо магазине есть). Может я где-то отключил настройку НДС? Не могу найти инструкцию по этому полю.

Заранее спасибо.

Шаблонов две штуки.

Этот design/themes/[ВАША_ТЕМА]/mail/templates/addons/rus_payments - выводится в личном кабинете клиента.

А этот design/backend/mail/templates/addons/rus_payments - для чего?

В данных директориях находятся файлы шаблонов, которые используются для распечатки и отправки счета на полату заказа.

Директория design/backend/mail/templates/addons/rus_payments содержит файлы шаблонов, которые используются для распечатки и отправки счета на полату заказа на детальной странице заказа в панели администратора магазина.

Есть ли возможность счет привязать к письму которое отправляется клиенту после оформления заказа?

Необходима модификация в коде. Мы рекомендуем вам нанять стороннего разработчика.

И не подскажете как добавить значение НДС в счете, а то оно не показывается? В карточке товара пункта про НДС нет (в демо магазине есть). Может я где-то отключил настройку НДС? Не могу найти инструкцию по этому полю.

Заранее спасибо.

Чтобы настроить налоги, перейдите в панель администратора, во вкладку Администрирование > Доставка и налоги > Налоги. На этой странице вы можете создать новый налог, нажав на +.

При создании нового налога, во вкладке Общее вводится общая информация о налоге, во вкладке Ставки налога указываются пункты назначения и стоимость налога для каждого пункта назначения.

Предварительно пункты назначения необходимо создать во вкладке Администрирование > Доставка и налоги > Пункты назначения.

Более подробную информацию о том как создать пункт назначения вы можете получить из документации, перейдя по ссылке:

http://www.cs-cart.ru/docs/4.3.x/manager/shippings/general/destination/index.html

Всем добрый день.

Подскажите, пожалуйста, как в cs cart реализовать вот такое решение

http://codepen.io/gyduxa/pen/YwKmzM

Суть в том, что в попапе, при просмотре изображений, добавляется минигалерея из превьюшек других доступных фотографий с этой же страницы.

Если возможно, то как добавлять/исключать страницы, на которых такая плюшка видна, а где нет?

Какие строки кода, в каких файлах нужно изменить/дописать и как? Объясните чайнику)

В данных директориях находятся файлы шаблонов, которые используются для распечатки и отправки счета на полату заказа.

Директория design/backend/mail/templates/addons/rus_payments содержит файлы шаблонов, которые используются для распечатки и отправки счета на полату заказа на детальной странице заказа в панели администратора магазина.

Необходима модификация в коде. Мы рекомендуем вам нанять стороннего разработчика.

Чтобы настроить налоги, перейдите в панель администратора, во вкладку Администрирование > Доставка и налоги > Налоги. На этой странице вы можете создать новый налог, нажав на +.

При создании нового налога, во вкладке Общее вводится общая информация о налоге, во вкладке Ставки налога указываются пункты назначения и стоимость налога для каждого пункта назначения.

Предварительно пункты назначения необходимо создать во вкладке Администрирование > Доставка и налоги > Пункты назначения.

Более подробную информацию о том как создать пункт назначения вы можете получить из документации, перейдя по ссылке:

http://www.cs-cart.ru/docs/4.3.x/manager/shippings/general/destination/index.html

Спасибо.

Пробую сюда - design/themes/[ВАША_ТЕМА]/mail/templates/addons/rus_payments/print_invoice_payment.tpl - добавить js. Пробую двумя способами:

1)

_________

_________

2)

_________

_________

Получаю - , но внизу страницы ничего нет.

Подскажите как добавить свой js? ({literal} {/literal} - использовал, (function(_, $) { ... }(Tygh, Tygh.$)); - использовал)

Пробую сюда - design/themes/[ВАША_ТЕМА]/mail/templates/addons/rus_payments/print_invoice_payment.tpl - добавить js. Пробую двумя способами:

1)

_________

_________

2)

_________

_________

Получаю - , но внизу страницы ничего нет.

Подскажите как добавить свой js? ({literal} {/literal} - использовал, (function(_, $) { ... }(Tygh, Tygh.$)); - использовал)

Используйте атрибут data-no-defer

http://kb.cs-cart.com/embedded-script