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


#735

Добрый день.

Подскажите как сделать, чтобы og:title и og:description были одинаковыми с title и description соответственно?


#736

Добрый день.

Подскажите как сделать, чтобы og:title и og:description были одинаковыми с title и description соответственно?

Смотрите функции модуля Социальные кнопки

app/addons/social_buttons/func.php

Там описание и тайтл обрабатываются


#737

Неверно выразился, на странице товара g:title и og:description были одинаковыми с title и description соответственно


#738

Можно сделать с нашим бесплатным модулем

https://www.ecom-labs.com/cs-cart-multi-vendor-moduli/cs-cart-modul-pages-content-in-blocks.html

Спасибо за помощь! А как добавить в блок, например "?&dispatch=store_locator.search" или "index.php?dispatch=suppliers.view" ?


#739

Неверно выразился, на странице товара g:title и og:description были одинаковыми с title и description соответственно

В указанном файл как раз формируются тайтл и описание на базе основных данных

Спасибо за помощь! А как добавить в блок, например "?&dispatch=store_locator.search" или "index.php?dispatch=suppliers.view" ?

Нужно создать новые страницы макета под эти контроллеры и добавить туда новые блоки


#740

Привет, подскажите, можно ли вывести любую нужную мне станицу в блок? К примеру станицу "Поставщик" вывести во вкладке товара? Я знаю, что это можно сделать через ajax во всплывающим окне, только мне всплывающие окно не подходит для достижения нужного оформления!

({"pages.view?page_id=10"|fn_url}" data-ca-target-id="open_id_ajax" >Диалог Ajax

)

Если можно приведите пожалуйста пример кода, спасибо!

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

1) app/addons/suppliers/func.php после строчки

/**
 * Get supplier name *
 * @param int $supplier_id
 * @return string Found supplier name
 */
function fn_get_supplier_name($supplier_id)
{
    if (!empty($supplier_id)) {
        $supplier_name = db_get_field("SELECT ?:suppliers.name FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i", $supplier_id);
    }
return !empty($supplier_name) ? $supplier_name : __('none');

}

добавляем ниже

/**
 * Get supplier email 
 *
 * @param int $supplier_id
 * @return string Found supplier email
 */

function fn_get_supplier_email($supplier_id)
{
if (!empty($supplier_id)) {
$supplier_email = db_get_field(“SELECT ?:suppliers.email FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i”, $supplier_id);
}

return !empty($supplier_email) ? $supplier_email : __('none');

}
/**

  • Get supplier phone
  • @param int $supplier_id
  • @return string Found supplier phone
    */

function fn_get_supplier_phone($supplier_id)
{
if (!empty($supplier_id)) {
$supplier_phone = db_get_field(“SELECT ?:suppliers.phone FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i”, $supplier_id);
}

return !empty($supplier_phone) ? $supplier_phone : __('none');

}

/**

  • Get supplier fax
  • @param int $supplier_id
  • @return string Found supplier fax
    */

function fn_get_supplier_fax($supplier_id)
{
if (!empty($supplier_id)) {
$supplier_fax = db_get_field(“SELECT ?:suppliers.fax FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i”, $supplier_id);
}

return !empty($supplier_fax) ? $supplier_fax : __('none');

}

/**

  • Get supplier site
  • @param int $supplier_id
  • @return string Found supplier site
    */

function fn_get_supplier_url($supplier_id)
{
if (!empty($supplier_id)) {
$supplier_url = db_get_field(“SELECT ?:suppliers.url FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i”, $supplier_id);
}

return !empty($supplier_url) ? $supplier_url : __('none');

}
/**

  • Get supplier site
  • @param int $supplier_id
  • @return string Found supplier site
    */

function fn_get_supplier_address($supplier_id)
{
if (!empty($supplier_id)) {
$supplier_address = db_get_field(“SELECT ?:suppliers.address FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i”, $supplier_id);
}

return !empty($supplier_address) ? $supplier_address : __('none');

}
/**

  • Get supplier city
  • @param int $supplier_id
  • @return string Found supplier city
    */

function fn_get_supplier_city($supplier_id)
{
if (!empty($supplier_id)) {
$supplier_city = db_get_field(“SELECT ?:suppliers.city FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i”, $supplier_id);
}

return !empty($supplier_city) ? $supplier_city : __('none');

}

/**

  • Get supplier state
  • @param int $supplier_id
  • @return string Found supplier state
    */

function fn_get_supplier_state($supplier_id)
{
if (!empty($supplier_id)) {
$supplier_state = db_get_field(“SELECT ?:suppliers.state FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i”, $supplier_id);
}

return !empty($supplier_state) ? $supplier_state : __('none');

}
/**

  • Get supplier state
  • @param int $supplier_id
  • @return string Found supplier state
    */

function fn_get_supplier_zipcode($supplier_id)
{
if (!empty($supplier_id)) {
$supplier_zipcode = db_get_field(“SELECT ?:suppliers.zipcode FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i”, $supplier_id);
}

return !empty($supplier_zipcode) ? $supplier_zipcode : __('none');

}
/**

  • Get supplier country
  • @param int $supplier_id
  • @return string Found supplier country
    */

function fn_get_supplier_country($supplier_id)
{
if (!empty($supplier_id)) {
$supplier_country = db_get_field(“SELECT ?:suppliers.country FROM ?:suppliers WHERE ?:suppliers.supplier_id = ?i”, $supplier_id);
}

return !empty($supplier_country) ? $supplier_country : __('none');

}

далее в паке design/themes/responsive/templates/blocks/static_templates создаем файл supplier.tpl. В него вставляем этот код:

<div id="block_company_{$supplier.supplier_id}">
    
    <div class=" company-page-info">
        <div class="ty-company-detail__info-list ty-company-detail_info-first">
            <div class="ty-company-detail__info-title">{__("contact_information")}</div>
     
            
              <!--  <div class="ty-company-detail__control-group" id="supplier_email">
                    <label class="ty-company-detail__control-lable">{__("email")}:</label>
                    <span><a href="mailto:{$supplier.email}">{$product.supplier_id|fn_get_supplier_email}</a></span>
                </div>-->
            
        
                <div class="ty-company-detail__control-group" id="supplier_phone">
                    <label class="ty-company-detail__control-lable">{__("phone")}:</label>
                    <span>{$product.supplier_id|fn_get_supplier_phone}</span>
                </div>
           
           
                <div class="ty-company-detail__control-group" id="supplier_phone">
                    <label class="ty-company-detail__control-lable">{__("fax")}:</label>
                    <span>{$product.supplier_id|fn_get_supplier_fax}</span>
                </div>
           
          
                <div class="ty-company-detail__control-group" id="supplier_website">
                    <label>{__("website")}:</label>
                    <span>{$product.supplier_id|fn_get_supplier_url}</span>
                </div>
          
        </div>
        <div class="ty-company-detail__info-list">
            <div class="ty-company-detail__info-title">{__("shipping_address")}</div>
            <div class="ty-company-detail__control-group">
                <span>{$product.supplier_id|fn_get_supplier_address}</span>
            </div>
            <div class="ty-company-detail__control-group">
                <span>{$product.supplier_id|fn_get_supplier_city}, {$product.supplier_id|fn_get_supplier_state}, {$product.supplier_id|fn_get_supplier_country}</span>
            </div>
{__("zipcode")}: {$product.supplier_id|fn_get_supplier_zipcode}
        </div>
    </div>


</div>

Далее, в админ панели во вкладках товара создаем новый блок "Шаблон" в нем выбираем supplier.tpl (Поставщики)


#741

Может кто подскажет. Как сделать что бы основной домен сайта не подставлялся в ссылке?

{__("url_vk")}

{$product.supplier_id|fn_get_supplier_url_vk} - ссылка на соц.сеть!

Получается сейчас: mydomen.ru/vk.com/id7908

Надо, чтобы мой домен не учитывался, сразу был переход на vk.com/id7908


#742

Может кто подскажет. Как сделать что бы основной домен сайта не подставлялся в ссылке?

{__("url_vk")}

{$product.supplier_id|fn_get_supplier_url_vk} - ссылка на соц.сеть!

Получается сейчас: mydomen.ru/vk.com/id7908

Надо, чтобы мой домен не учитывался, сразу был переход на vk.com/id7908

Попробуйте так

 {__("url_vk")}

#743

Попробуйте так

 {__("url_vk")}

Благодарю тебя добрый человек!


#744

Привет, прошу о помощи опять) В карточку товара "default_template.tpl" перенес код ссылки "Добавить в список сравнения" из "add_to_compare_list.tpl" . Проблема заключается в том, что почему то не подставляется "product_id"

Должно быть к примеру:

 /index.php?dispatch=product_features.add_product&product_id=1&redirect_url=index.php%3Fsl%3Dru%26dispatch%3Dproducts.view%26product_id%3D3

А при перенесении кода получается:

/index.php?dispatch=product_features.add_product&product_id=&redirect_url=index.php%3Fsl%3Dru%26dispatch%3Dproducts.view%26product_id%3D3

код:

{if !$config.tweaks.disable_dhtml}
    {assign var="ajax_class" value="cm-ajax cm-ajax-full-render"}
{/if}

{if !$hide_compare_list_button}
{$c_url = $redirect_url|default:$config.current_url|escape:url}
{include file=“buttons/button.tpl” but_text=__(“add_to_comparison_list”) but_href=“product_features.add_product?product_id=$product_id&redirect_url=$c_url” but_role=“text” but_target_id=“comparison_list,account_info*” but_meta=“ty-btn__text ty-add-to-compare $ajax_class” but_rel=“nofollow”}
{/if}


#745

Привет, прошу о помощи опять) В карточку товара "default_template.tpl" перенес код ссылки "Добавить в список сравнения" из "add_to_compare_list.tpl" . Проблема заключается в том, что почему то не подставляется "product_id"

Должно быть к примеру:

 /index.php?dispatch=product_features.add_product&product_id=1&redirect_url=index.php%3Fsl%3Dru%26dispatch%3Dproducts.view%26product_id%3D3

А при перенесении кода получается:

/index.php?dispatch=product_features.add_product&product_id=&redirect_url=index.php%3Fsl%3Dru%26dispatch%3Dproducts.view%26product_id%3D3

код:

{if !$config.tweaks.disable_dhtml}
    {assign var="ajax_class" value="cm-ajax cm-ajax-full-render"}
{/if}

{if !$hide_compare_list_button}
{$c_url = $redirect_url|default:$config.current_url|escape:url}
{include file=“buttons/button.tpl” but_text=__(“add_to_comparison_list”) but_href=“product_features.add_product?product_id=$product_id&redirect_url=$c_url” but_role=“text” but_target_id=“comparison_list,account_info*” but_meta=“ty-btn__text ty-add-to-compare $ajax_class” but_rel=“nofollow”}
{/if}

but_href="product_features.add_product?product_id=$product_id&redirect_url=$c_url"

замените на

but_href="product_features.add_product?product_id=`$product.product_id`&redirect_url=$c_url"

#746
but_href="product_features.add_product?product_id=$product_id&redirect_url=$c_url"

замените на

but_href="product_features.add_product?product_id=`$product.product_id`&redirect_url=$c_url"

Работает, спасибо!


#747

Привет. подскажите в чем может быть проблема? Когда ставлю точные координаты, на карте отображается не то место!

<div class="cm-map" data-ca-geocode="51.561146, 85.916564">

Точный адрес написать нет возможности, так как место на карте не имеет точного адреса, улицу и т.п. (


#748

Добрый день,

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

http://prntscr.com/eja00x

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

http://prntscr.com/eja04n


#749

Попробуйте в файле

design/backend/templates/addons/buy_together/hooks/orders/items_list_row.override.tpl

поменять



на



#750

Добрый день, подскажите по такому вопросу: в карточке товар есть форма покупки в один клик call_requests_form.

В эту форму необходимо добавить доп. поля в шаблоне это легко сделать. Но вот как их отправлять на email (можно без занесения в базу даже)?

Я так понял для этого в базу нужно эти поля добавлять?


#751

Добрый день, подскажите по такому вопросу: в карточке товар есть форма покупки в один клик call_requests_form.

В эту форму необходимо добавить доп. поля в шаблоне это легко сделать. Но вот как их отправлять на email (можно без занесения в базу даже)?

Я так понял для этого в базу нужно эти поля добавлять?

Смотря какие поля! Что вы хотите добавить?


#752

Добрый день, подскажите по такому вопросу: в карточке товар есть форма покупки в один клик call_requests_form.
В эту форму необходимо добавить доп. поля в шаблоне это легко сделать. Но вот как их отправлять на email (можно без занесения в базу даже)?
Я так понял для этого в базу нужно эти поля добавлять?


Шаблоны тут (при использовании старого редактора писем)

design/backend/mail/templates/addons/call_requests

Список параметров передается в шаблон тут (см. массив data)

app/addons/call_requests/func.php


#753

Привет вопрос такой, можно ли через модуль "мои изменения" модифицировать другие модули (php)? Подобно overrides для внесение изменений в шаблоны? Хочу у готового модуля немного переписать php.Изменять оригинальный модуль нет желания, так как после обновления очередной версии все пропадет( Дважды одно и тоже делать желания нет. спасибо за ответ!


#754

Привет вопрос такой, можно ли через модуль "мои изменения" модифицировать другие модули (php)? Подобно overrides для внесение изменений в шаблоны? Хочу у готового модуля немного переписать php.Изменять оригинальный модуль нет желания, так как после обновления очередной версии все пропадет( Дважды одно и тоже делать желания нет. спасибо за ответ!

К сожалению, нельзя