szamriy Posted June 8, 2013 Share Posted June 8, 2013 (edited) $subj вместо фотки товара? print_r показывает, что есть только id_manufacturer, а нужно название. Подскажите плиз каком файле формируется $product который в шаблоне shopping-cart-product-line.tpl Edited June 8, 2013 by szamriy (see edit history) Link to comment Share on other sites More sharing options...
Kerm Posted June 8, 2013 Share Posted June 8, 2013 $product.manufacturer_name Link to comment Share on other sites More sharing options...
absent Posted June 9, 2013 Share Posted June 9, 2013 там и в tpl и ajax-cart.js правки делать Link to comment Share on other sites More sharing options...
ai.egorov Posted June 9, 2013 Share Posted June 9, 2013 (edited) Для любой ситуации, вы можете просто вывести доступные значения для переменной через print_r к примеру. 1. {$abc|var_dump} 2. {$abc|@print_r} 3. {$abc|@debug_print_var} Потом использовать нужное значение для подстановки. Например с переменной product: {$product|var_dump} {$product|@print_r} {$product|@debug_print_var} Выводить лучше в блоке, например с классом warning, тогда будет отделяться от кода и выделяться на фоне. <span class="warning"> {$product|@print_r} </span> Пример со страницы товара product.tpl, к примеру: <div class="warning">Product Object ( [tax_name] => deprecated [tax_rate] => 0 [id_manufacturer] => 0 [id_supplier] => 1 [id_category_default] => 53 [id_shop_default] => 1 [manufacturer_name] => [.. пропуск ..] [description] => [description_short] => [quantity] => 10 [minimal_quantity] => 1 [fieldsRequired:protected] => Array ( [0] => price ) [fieldsSize:protected] => Array ( [reference] => 32 [supplier_reference] => 32 [location] => 64 [ean13] => 13 [upc] => 12 ) [.. пропуск ..] ) 1</div> В итоге мы можем выдергивать различные значения, не только производителя. Edited June 9, 2013 by Andrey I. Egorov (see edit history) Link to comment Share on other sites More sharing options...
szamriy Posted June 9, 2013 Author Share Posted June 9, 2013 (edited) в shopping-cart-product-line.tpl {$product|@print_r} показывает наличие только цифрового айди производителя, названия к сожалению нет а мне нужно именно название и именно в корзине покупателя, в других местах я уже все поправил $product.manufacturer_name нет такого Edited June 9, 2013 by szamriy (see edit history) Link to comment Share on other sites More sharing options...
ai.egorov Posted June 9, 2013 Share Posted June 9, 2013 ..нет такого.. смотрите что доступно через product, есть ли там упоминание производителя, если да, то через производителя как переменную, выводите наименование Link to comment Share on other sites More sharing options...
szamriy Posted June 9, 2013 Author Share Posted June 9, 2013 смотрите что доступно через product, есть ли там упоминание производителя, если да, то через производителя как переменную, выводите наименование а если нет? где формируется продукт, который в корзине светится? как его найти, чтоб добавить? Link to comment Share on other sites More sharing options...
absent Posted June 9, 2013 Share Posted June 9, 2013 а если нет? где формируется продукт, который в корзине светится? как его найти, чтоб добавить? уточни. ajax-cart.js Link to comment Share on other sites More sharing options...
szamriy Posted June 9, 2013 Author Share Posted June 9, 2013 (edited) ajax-cart.js в базу за данными не лазит, он работает с уже сформированной страницей. Мне нужно найти место, где формируется список, который фигурирует в файле shopping-cart-product-line.tpl под именем $product там есть $product.id_manufacturer, а мне нужно $product.manufacturer_name Edited June 9, 2013 by szamriy (see edit history) Link to comment Share on other sites More sharing options...
Kerm Posted June 9, 2013 Share Posted June 9, 2013 (edited) Что значит нету такого? У меня выводится производитель в корзине через $product.manufacturer_name и все работает! В файле shopping-cart-product-line.tpl прописано у меня это. Преста 1.4. В Cart.php где идет getProducts() надо дописать: LEFT JOIN `'._DB_PREFIX_.'manufacturer` m ON (m.`id_manufacturer` = p.`id_manufacturer`) И после еще в select: m.`name` as manufacturer_name Edited June 9, 2013 by Kerm (see edit history) Link to comment Share on other sites More sharing options...
szamriy Posted June 9, 2013 Author Share Posted June 9, 2013 у меня PrestaShop™ 1.5.4.1, вставляю {$product|@print_r} и на выдохе получаю следующее: Array ( [id_product_attribute] => 0 [id_product] => 119 [cart_quantity] => 1 [id_shop] => 1 [name] => ABDECKHAUBE STANDFAHRZEUGE [is_virtual] => 0 [description_short] => [available_now] => [available_later] => [id_category_default] => 2 [id_supplier] => 0 [id_manufacturer] => 3 [on_sale] => 0 [ecotax] => 0.000000 [additional_shipping_cost] => 0.00 [available_for_order] => 1 [price] => 81.15 [weight] => 1.610000 [quantity_available] => -34 [width] => 0.000000 [height] => 0.000000 [depth] => 0.000000 [out_of_stock] => 2 [active] => 1 [date_add] => 2013-05-31 13:39:02 [date_upd] => 0000-00-00 00:00:00 [quantity] => 1 [link_rewrite] => abdeckhaube-standfahrzeuge [category] => home [unique_id] => 11900 [id_address_delivery] => 0 [wholesale_price] => 0.000000 [advanced_stock_management] => 0 [supplier_reference] => [customization_quantity] => [id_customization] => [price_attribute] => [ecotax_attr] => [reference] => 83190005958 [weight_attribute] => [ean13] => [upc] => [pai_id_image] => [pai_legend] => [minimal_quantity] => 1 [stock_quantity] => -34 [price_wt] => 95.76 [total_wt] => 95.76 [total] => 81.15 [reduction_applies] => [quantity_discount_applies] => [id_image] => ru-default [allow_oosp] => 1 [features] => Array ( ) [rate] => 18 [tax_name] => НДС RU 18% [price_without_specific_price] => 95.76 [is_discounted] => ) 1 Link to comment Share on other sites More sharing options...
ai.egorov Posted June 9, 2013 Share Posted June 9, 2013 (edited) .. [id_manufacturer] => 3 .. просто $manufacturer или $manufacturers что вам выдаст? Edited June 9, 2013 by Andrey I. Egorov (see edit history) Link to comment Share on other sites More sharing options...
Kerm Posted June 9, 2013 Share Posted June 9, 2013 Ну ты глянь в cart.php что я написал, скорее всего у тебя там это есть...и отредактируй как я написал. 1 Link to comment Share on other sites More sharing options...
szamriy Posted June 9, 2013 Author Share Posted June 9, 2013 просто $manufacturer или $manufacturers что вам выдаст? и тот и тот выдает "1", типа отработал, но переменная пустая classes/Cart.php похоже это оно но там sql слегка отличается, от версии 1.4, но уже известно что и где копать, спасибо Link to comment Share on other sites More sharing options...
absent Posted June 9, 2013 Share Posted June 9, 2013 и тот и тот выдает "1", типа отработал, но переменная пустая classes/Cart.php похоже это оно но там sql слегка отличается, от версии 1.4, но уже известно что и где копать, спасибо как это 1. должен отдавать данные. print_r делал? Link to comment Share on other sites More sharing options...
szamriy Posted June 9, 2013 Author Share Posted June 9, 2013 как это 1. должен отдавать данные. print_r делал? {$manufacturer|@print_r} вот это и выдает единицу, в принципе все правильно, она означает, что команда отработала без ошибок, а ниче не вывела ибо выводить нечего Link to comment Share on other sites More sharing options...
absent Posted June 9, 2013 Share Posted June 9, 2013 должно выводить данные а не 1 Link to comment Share on other sites More sharing options...
szamriy Posted June 9, 2013 Author Share Posted June 9, 2013 выводит и данные (пусто, просто их нет) и код возврата (1 в данном случае) как разберусь полностью с вопросом, отпишусь Link to comment Share on other sites More sharing options...
szamriy Posted June 10, 2013 Author Share Posted June 10, 2013 отписываюсь как и обещал: в classes/Cart.php нужно внести след изменения: 424 строка $sql->select('cp.`id_product_attribute`, cp.`id_product`, cp.`quantity` AS cart_quantity, cp.id_shop, pl.`name`, p.`is_virtual`, pl.`description_short`, pl.`available_now`, pl.`available_later`, p.`id_product`, product_shop.`id_category_default`, p.`id_supplier`, p.`id_manufacturer`, m.`name` AS manufacturer_name, product_shop.`on_sale`, product_shop.`ecotax`, product_shop.`additional_shipping_cost`, product_shop.`available_for_order`, product_shop.`price`, p.`weight`, stock.`quantity` quantity_available, p.`width`, p.`height`, p.`depth`, stock.`out_of_stock`, product_shop.`active`, p.`date_add`, p.`date_upd`, IFNULL(stock.quantity, 0) as quantity, pl.`link_rewrite`, cl.`link_rewrite` AS category, CONCAT(cp.`id_product`, IFNULL(cp.`id_product_attribute`, 0), IFNULL(cp.`id_address_delivery`, 0)) AS unique_id, cp.id_address_delivery, product_shop.`wholesale_price`, product_shop.advanced_stock_management, ps.product_supplier_reference supplier_reference'); 453 строка (добавить): $sql->leftJoin('manufacturer', 'm', 'm.`id_manufacturer` = p.`id_manufacturer`'); 459 строка (добавить): $sql->where('m.`id_manufacturer` = p.`id_manufacturer`'); теперь можно использовать $product.manufacturer_name в shopping-cart-product-line.tpl и $product["manufacturer_name"] в mail/order_conf.html спасибо всем за помощь 2 Link to comment Share on other sites More sharing options...
Recommended Posts