Jump to content

Вывод дополнительного поля для товара в корзине


Recommended Posts

Добрый день!

 

Сделал дополнительное поле для товара, из админки все прописывается и на странице товара (product.tpl) отображается прописанное значение из бд, но есть затык, потому что нужно выводить данное поле еще и в корзине (shopping-cart-product-line.tpl) для каждого товара соответственно. В product.tpl выводится таким вот образом {$product->my_field}, то же самое пытаюсь сделать в shopping-cart-product-line.tpl и получаю такую ошибку -

 

"Notice: Trying to get property of non-object in /home/admin/web/newhost.ru/public_html/tools/smarty/sysplugins/smarty_internal_templatebase.php(171) : eval()'d code on line 86"

 

В программировании не силен, помогите пожалуйста.

Link to comment
Share on other sites

Добрый день!

 

Сделал дополнительное поле для товара, из админки все прописывается и на странице товара (product.tpl) отображается прописанное значение из бд, но есть затык, потому что нужно выводить данное поле еще и в корзине (shopping-cart-product-line.tpl) для каждого товара соответственно. В product.tpl выводится таким вот образом {$product->my_field}, то же самое пытаюсь сделать в shopping-cart-product-line.tpl и получаю такую ошибку -

 

"Notice: Trying to get property of non-object in /home/admin/web/newhost.ru/public_html/tools/smarty/sysplugins/smarty_internal_templatebase.php(171) : eval()'d code on line 86"

 

В программировании не силен, помогите пожалуйста.

 

если вы его правильно добавили и он выводится в product.tpl, то по идее он и в shopping-cart-product-line.tpl должен выводится, может всё-таки кеш не почистили?

Link to comment
Share on other sites

если вы его правильно добавили и он выводится в product.tpl, то по идее он и в shopping-cart-product-line.tpl должен выводится, может всё-таки кеш не почистили?

 

Почистил, дело насколько я понимаю в том что в контексте листинга товаров в корзине данный вывод работать не будет, нужно где то дописывать эту возможность, например чтобы она бралась из БД по product_id и выводилась, вывод подобных вещей в корзине, сделан например так {$product.name} (вывод названия товара)

Link to comment
Share on other sites

Почистил, дело насколько я понимаю в том что в контексте листинга товаров в корзине данный вывод работать не будет, нужно где то дописывать эту возможность, например чтобы она бралась из БД по product_id и выводилась, вывод подобных вещей в корзине, сделан например так {$product.name} (вывод названия товара)

{$product.my_field} ?

в product.tpl обращение к объекту, а в shopcart к массиву

Edited by wagood (see edit history)
Link to comment
Share on other sites

{$product.my_field} ?

в product.tpl обращение к объекту, а в shopcart к массиву

 

Я имел ввиду что вещи которые там уже выводятся по умолчанию, выводятся таким образом, например, название товара {$product.name}. Я пробовал выводить мое поле так же как и в product.tpl  {$product->my_field} , так и {$product.my_field}. Я прошу прощения, в программировании не силен, но надеюсь на какую то помощь в том как мне можно реализовать то что  я хочу. Получается мне нужно определить мое поле в некоем массиве? Где это делается? Возможно мне помогло бы понимание, того как реализован вывод названия товара в корзине.

Link to comment
Share on other sites

За вывод товара в корзине отвечает функция getProducts в классе Cart. Там жёстко в запросе заданы те поля которые выводятся. Вам надо переопределить этот класс в папке /override и изменить запрос $sql->select('...') так чтобы туда попало ваше добавленное поле. 

Link to comment
Share on other sites

За вывод товара в корзине отвечает функция getProducts в классе Cart. Там жёстко в запросе заданы те поля которые выводятся. Вам надо переопределить этот класс в папке /override и изменить запрос $sql->select('...') так чтобы туда попало ваше добавленное поле. 

 

В общем плане все ясно, но я не понимаю как правильно составить запрос в моем случае.

 

На случай если мне сможет кто то помочь как составить такой запрос. Есть поле в таблице product_lang и мне нужно получать значение этого поля по product_id и выводить его в шаблоне shopping-cart-product-line.tpl, как составить запрос я не знаю, поскольку не силен в этом.

Link to comment
Share on other sites

Ну это уже от того что там у вас в этом запросе, он может быть разный для разных версий, ориентировочно, что-то типа вместо p.`weight`, написать p.`weight`, p.`my_field`

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...