Как вывести дополнительную цену из БД в списке товаров в админке?

  • 17 Ответов
  • 577 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
Как вывести дополнительную цену из БД в списке товаров в админке.
Добавил код в файл списка товаров в админке
Код
<td>
  <?php echo formatprice($row->product_price, sprintCurrency($row->currency_id));?>
</td>
<td>
  <?php echo formatprice($row->product_myprice, sprintCurrency($row->currency_id));?>
</td>
Добавил в БД строку product_myprice ниже цены товара и заполнил значениями.
Но в админке ничего не выводится.
Подскажите, пожалуйста, какие еще файлы поправить чтобы вывод моей цены заработал.

*

Linfuby

  • Живу я здесь
  • ******
  • 1240
  • 174
  • Всё просто...
\administrator\components\com_jshopping\models\products.php
Функция getAllProducts
Нужно добавить в SELECT Ваше поле (в двух запросах)
pr.product_myprice
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
Вставил в эту функцию, после pr.product_price свою цену pr.product_myprice, в 2-х запросах.
Не сработало, список товаров вообще не выводится. В структуре БД product_myprice существует после product_price.
Где еще нужно добавить?

*

dmitry_stas

  • Профи
  • ********
  • 9653
  • 929
Цитировать
Не сработало, список товаров вообще не выводится.
неправильно вставили значит
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
Переменная product_price_disc

Сначала вывел тут
administrator/components/com_jshopping/views/product_list/tmpl/default.php
Код
<?php echo formatprice($row->product_price_disc, sprintCurrency($row->currency_id));?>

Потом сделал изменения тут
administrator/components/com_jshopping/models/products.php
Код
if ($category_id) {
            $query = "SELECT pr.product_id, pr.product_publish, pr_cat.product_ordering, pr.`".$lang->get('name')."` as name, pr.`".$lang->get('short_description')."` as short_description, man.`".$lang->get('name')."` as man_name, pr.product_ean as ean, pr.product_quantity as qty, pr.product_thumb_image as image, pr.product_price, pr.product_price_disc, pr.currency_id, pr.hits, pr.unlimited, pr.product_date_added, pr.label_id $query_filed FROM `#__jshopping_products` AS pr
                      LEFT JOIN `#__jshopping_products_to_categories` AS pr_cat USING (product_id)
                      LEFT JOIN `#__jshopping_manufacturers` AS man ON pr.product_manufacturer_id=man.manufacturer_id
                      $query_join
                      WHERE pr.parent_id=0 ".$where." ".$this->_allProductsOrder($order, $orderDir, $category_id)." ".$limit;
        }else{
            $mysqlversion = getMysqlVersion();
            if ($mysqlversion < "4.1.0"){
                $spec_where = "cat.`".$lang->get('name')."` AS namescats";
            }else{
                $spec_where = "GROUP_CONCAT(cat.`".$lang->get('name')."` SEPARATOR '<br>') AS namescats";
            }
           
            $query = "SELECT pr.product_id, pr.product_publish, pr.`".$lang->get('name')."` as name, pr.`".$lang->get('short_description')."` as short_description, man.`".$lang->get('name')."` as man_name, ".$spec_where.", pr.product_ean as ean, pr.product_quantity as qty, pr.product_thumb_image as image, pr.product_price, pr.product_price_disc, pr.currency_id, pr.hits, pr.unlimited, pr.product_date_added, pr.label_id $query_filed FROM `#__jshopping_products` AS pr
                      LEFT JOIN `#__jshopping_products_to_categories` AS pr_cat USING (product_id)
                      LEFT JOIN `#__jshopping_categories` AS cat ON pr_cat.category_id=cat.category_id
                      LEFT JOIN `#__jshopping_manufacturers` AS man ON pr.product_manufacturer_id=man.manufacturer_id
                      $query_join
                      WHERE pr.parent_id=0 ".$where." GROUP BY pr.product_id ".$this->_allProductsOrder($order, $orderDir)." ".$limit;
        }
После того как добавил в селект переменную список товаров вообще не выводится.

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
Огромное спасибо, все получилось!
Вопрос закрыт, невнимателен в коде сайта.

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
Огромное спасибо, все получилось!
Вопрос закрыт, невнимателен в коде сайта.
В карточке товара для вывода моей цены сработал код
Код
formatprice($this->product->product_price_disc)
А как в категории или в другом месте вывести мою цену? Код ниже не работает, ничего не выводит.
components/com_jshopping/templates/default/list_products/product.php
Код
<?php print formatprice($product->product_price_disc);?>

*

dmitry_stas

  • Профи
  • ********
  • 9653
  • 929
\components\com_jshopping\lib\jtableauto.php function getBuildQueryListProductDefaultResult
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
\components\com_jshopping\lib\jtableauto.php function getBuildQueryListProductDefaultResult
А что относительно корзины?
<?php print formatprice($prod['price_disc'])?> // в оригинале было ['price']
« Последнее редактирование: 21.10.2015, 12:49:02 от tomas_morgam »

*

dmitry_stas

  • Профи
  • ********
  • 9653
  • 929
с корзины надо начинать было. тогда бы вам сразу сказали, что там далеко не одна строка. вывести цену - это одно. а учитывать ее при покупке - совсем другое. ковыряйте модель cart
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
с корзины надо начинать было. тогда бы вам сразу сказали, что там далеко не одна строка. вывести цену - это одно. а учитывать ее при покупке - совсем другое. ковыряйте модель cart
Спасибо, это также получилось. И последнее, правка емейл, где смотреть? Открыл модель checkout.php - не понятно где именно вытягивается цена и как "подсунуть" свою переменную.

*

dmitry_stas

  • Профи
  • ********
  • 9653
  • 929
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
какой email?
Шаблон письма-заказа, который отсылается на почту.
/components/com_jshopping/templates/default/checkout/orderemail.php
Код
<?php print formatprice($prod->product_price_disc*$prod->product_quantity, $order->currency_code); ?>

*

dmitry_stas

  • Профи
  • ********
  • 9653
  • 929
ну так а вы в заказ уже сохранили свою цену?

может вам проще было для этого использовать обычную (стандартную) цену? а вашу новую просто показывать там где сейчас показываете стандартную.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
Да, цену подключил в форме заказа просто сменив "price" на "price_disc".
Код
<?php print formatprice(($prod['price_disc'])*$prod['quantity']);?>
С формирование емейл так не выходит.

Так я и не могу найти где выводится стандатрая цена, чтобы изменить на новую.

*

dmitry_stas

  • Профи
  • ********
  • 9653
  • 929
ну так а вы в заказ уже сохранили свою цену?
письмо отправляется на основе заказа.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

tomas_morgam

  • Осваиваюсь на форуме
  • ***
  • 126
  • 0
Как вывести в списке товара возле названия список категорий, к которым подключен товар (товар в 2-3 категориях).
Желательно перед этим кодом
Код
<?php if (!$manufacturer_id){?>        
   <td>
      <?php echo $row->man_name;?>
   </td>
   <?php }?>

*

Linfuby

  • Живу я здесь
  • ******
  • 1240
  • 174
  • Всё просто...
Код: php
<?php if (!$category_id){?>
   <td>
      <?php echo $row->namescats;?>
   </td>
   <?php }?>
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054