kimer 0 Опубликовано 26 мая, 2010 Жалоба Share Опубликовано 26 мая, 2010 Выставлена скидка на группу. Можно ли сделать так, чтобы в карточке товара писалось: Розничная цена 1.999,00 руб. Ваша цена 1.939,03 руб. Ваша скидка 3% а в листинге категории только цифры цены со скидкой (1.939,03 руб) заранее спасибо Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 26 мая, 2010 Жалоба Share Опубликовано 26 мая, 2010 Без правки кода нельзя. Нужно наверное править /includes/modules/product_info.php и /includes/classes/vam_price.php Ссылка на сообщение Поделиться на другие сайты
kimer 0 Опубликовано 26 мая, 2010 Автор Жалоба Share Опубликовано 26 мая, 2010 кода там много, разбираться с ним долго (с моим уровнем знаний :) ) соответственно чтобы понять браться или нет мне бы хотелось знать смогу ли я получить положительный результат, т.е. вообще возможно ли разделить выдачу этого текста в карточку и в список, или на выходе один "блок" в оба места? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 26 мая, 2010 Жалоба Share Опубликовано 26 мая, 2010 Странный ответ, если Вы сами не хотите правит, то конечно не сможете. Нужно тогда искать того кто исправит Вам код, например напишите в разделе Коммерческие предложения, либо например напишите пользователю mosquito , я думаю, что это не очень сложная проблема и её можно решить не за дорого. Ссылка на сообщение Поделиться на другие сайты
kimer 0 Опубликовано 26 мая, 2010 Автор Жалоба Share Опубликовано 26 мая, 2010 возможно я нечетко формулирую вопрос можно ли сделать так, чтобы в карточке товара писались цены в виде: "Розничная цена 1.999,00 руб. Ваша цена 1.939,03 руб. Ваша скидка 3%" а в списке товаров только цена цифры цены со скидкой (в данном случае "1.939,03 руб.") с правкой кода или без правки кода, я буду делать, или сторонний человек, бесплатно или за деньги - не важно просто ответ да/нет/не знаю спасибо большое Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 26 мая, 2010 Жалоба Share Опубликовано 26 мая, 2010 Можно всё, т.к. код открыт. Ссылка на сообщение Поделиться на другие сайты
zhenya17 0 Опубликовано 10 ноября, 2015 Жалоба Share Опубликовано 10 ноября, 2015 В 26.05.2010, 15:09:05, kimer сказал: Выставлена скидка на группу. Можно ли сделать так, чтобы в карточке товара писалось: Розничная цена 1.999,00 руб. Ваша цена 1.939,03 руб. Ваша скидка 3% а в листинге категории только цифры цены со скидкой (1.939,03 руб) заранее спасибо Аналогичная ситуация. Хочу, чтобы в карточке товаров отображалась детальная информация по скидкам, а в листинге - только цена клиента. Файл vam_price.php посмотрела, но не допетрила, как его подкорректировать. Может, есть готовое решение? Точнее даже, может я чего-то не понимаю, но разве править не в шаблонах нужно? Важно, чтобы скидка считалась, но чтобы просто в листинге товаров не отображалась фраза "Ваша скидка ...", т.к. она и места много занимает, да и не нужна в каждом поле. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 10 ноября, 2015 Жалоба Share Опубликовано 10 ноября, 2015 Текст Ваша скидка можно заменить на /lang/russian/russian.php т.е. поменять просто 'Ваша скидка' на '' Ссылка на сообщение Поделиться на другие сайты
zhenya17 0 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Этот файл я смотрела, но при предложенном решении возникает 2 проблемы: 1) В листинге товаров остаётся отображение процента, а мне вообще этого не нужно, т.к. оно мешает 2) В карточке товара исчезает надпись "Ваша скидка", остаётся только процент, что тоже не устраивает А хотелось бы, чтобы в карточке товаров оставалось всё как есть, т.е. чтобы была фраза "Ваша скидка ...%", а в листинге товаров чтобы эта фраза отсутствовала целиком. По логике вещей, я должна откорректировать в шаблонах файл product_listing_columns.html , ведь именно он отвечает за то, как выглядит список товаров. Но в этом файле вроде как нет блока вывода скидки. Вот поэтому я в замешательстве... Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Ну тогда правьте /includes/classes/vam_price.php, удаляйте всё лишнее и оставляйте что нужно. Правите в методе FormatSpecialDiscount Там удаляйте, там видно например %, удаляйте его или вообще только число оставляйте. Ссылка на сообщение Поделиться на другие сайты
zhenya17 0 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Подкорректировала метод FormatSpecialDiscount - действительно в нём можно убрать полностью фразу о скидке. Но опять же остаётся проблема, что т.к. мы правим php, а не шаблон, если убрать эту фразу, то она удаляется и в листинге товаров, и в карточке конкретного товара. Можно ли в эту функцию добавить условие типа "если текущая страница = product_info.php, то $price=один формат, иначе $price=другой формат"? С форматами я легко определюсь, но не знаю, как поставить ограничение по текущей странице Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Может как-то так: function FormatSpecialDiscount($pID, $discount, $pPrice, $format, $vpeStatus = 0, $message_old_price, $message_price, $message_discount) { $sPrice = $pPrice - ($pPrice / 100) * $discount; if ($format) { if ($pPrice > 0) if (isset($_GET['products_id']) && strstr($PHP_SELF, FILENAME_PRODUCT_INFO)) { $price = $message_old_price.$this->Format($pPrice, $format); } else { $price = '<span class="productOldPrice">'.$message_old_price.$this->Format($pPrice, $format).'</span><br />'.$message_price.$this->checkAttributes($pID).$this->Format($sPrice, $format).'<br />'.$message_discount.$discount.'%'; } if ($vpeStatus == 0) { return $price; } else { return array ('formated' => $price, 'plain' => $sPrice); } } else { return round($sPrice, $this->currencies[$this->actualCurr]['decimal_places']); } } Ссылка на сообщение Поделиться на другие сайты
zhenya17 0 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Так не работает. Посмотрела, что $PHP_SELF всегда возвращает пустую строку, а FILENAME_PRODUCT_INFO всегда возвращает 'product_info.php'. Ну а в пустой строке, понятно, что такое вхождение не ищется... Заработало вот так: if (isset($_GET['products_id'])) { $price = '<span class="productOldPrice">'.$message_old_price.$this->Format($pPrice, $format).'</span><br />'.$message_price.$this->checkAttributes($pID).$this->Format($sPrice, $format).'<br />'.$message_discount.$discount.'%'; } else { $price = '<span class="productOldPrice">'.$message_old_price.$this->Format($pPrice, $format).'</span><br />'.$message_price.$this->checkAttributes($pID).$this->Format($sPrice, $format); } Т.е. просто убрала лишнее не отрабатывающее условие и проверяю, что в параметрах указан конкретный id товара. Спасибо за наводку! :) Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Может так: function FormatSpecialDiscount($pID, $discount, $pPrice, $format, $vpeStatus = 0, $message_old_price, $message_price, $message_discount) { $sPrice = $pPrice - ($pPrice / 100) * $discount; if ($format) { if ($pPrice > 0) if ($_SERVER['REDIRECT_URL'] == '/product_info.php') { $price = $message_old_price.$this->Format($pPrice, $format); } else { $price = '<span class="productOldPrice">'.$message_old_price.$this->Format($pPrice, $format).'</span><br />'.$message_price.$this->checkAttributes($pID).$this->Format($sPrice, $format).'<br />'.$message_discount.$discount.'%'; } if ($vpeStatus == 0) { return $price; } else { return array ('formated' => $price, 'plain' => $sPrice); } } else { return round($sPrice, $this->currencies[$this->actualCurr]['decimal_places']); } } Ссылка на сообщение Поделиться на другие сайты
zhenya17 0 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Да, такое условие тоже отлично отрабатывает. Считаете его более надёжным, чем "isset($_GET['products_id'])"? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Если нужна ТОЛЬКО карточка товара, то лучше наверное как я написал, хотя и вариант Ваш вариант пойдёт, но в адресе сраницы параметр ?products_id=X может быть не только на странице карточки товара. Но это не принципиально, я так думаю. Ссылка на сообщение Поделиться на другие сайты
zhenya17 0 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Ок, оставлю Ваш вариант if ($_SERVER['REDIRECT_URL'] == '/product_info.php') Спасибо огромное! Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 11 ноября, 2015 Жалоба Share Опубликовано 11 ноября, 2015 Не за что. Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения