Помогите вывести в спецпредложения старую цену!

Тема в разделе "Shop-script", создана пользователем alex79a, 21 окт 2008.

Статус темы:
Закрыта.
  1. alex79a

    alex79a Создатель

    Регистр.:
    30 сен 2008
    Сообщения:
    27
    Симпатии:
    1
    Подскажите пожалуйста, как можно вывести в спецпредложениях на главной странице отображение рядом с основной ценой, зачеркнутую старую цену.
    Также как в описании товара, там зачеркнутая старая цена есть, она рядом с новой пишется, а мне нужно чтобы эта же инфа выводилась в спецпредложении на главной.

    Я тут пытался сам разобраться нашел два файла, где ковырять, как мне кажется.
    Вот эти файлы:

    product_detailed.tpl

    home.tpl

    Поковырял я их, но ничего что то не получилось.

    Может кто сталкивался с такой задачей, если не трудно напишите как сделать, ОЧЕНЬ НУЖНО!
     
  2. alex79a

    alex79a Создатель

    Регистр.:
    30 сен 2008
    Сообщения:
    27
    Симпатии:
    1
    Неужели никто не знает как вывести на главной странице в спецпредложениях отображение старой цены перечеркнутой?
    Я уже два дня бьюсь над этой проблемой, очень нужно сделать вывод старой цены.

    Подскажите пожалуйста, вопрос ведь не очень сложный, как мне кажется. Наверняка многие решали похожую проблему!
     
  3. Zolinger

    Zolinger Постоялец

    Регистр.:
    29 сен 2008
    Сообщения:
    111
    Симпатии:
    69
    RE:

    В шаблоне product_detailed.tpl есть такой код:
    PHP:
                            {if $currencies_count ne 0 && $product_info.Price 0}
                                {* 
    show list price? *}
                                {if 
    $product_info.list_price && 
                                        
    $product_info.list_price $product_info.Price && 
                                        
    $product_info.Price 0
                                    {
    $smarty.const.LIST_PRICE}: 
                                    <
    font color=brown>
                                        <
    strike>{$product_info.list_priceWithUnit}</strike>                                </font>
                                    <
    br>
                                {/if}
    он отвечает за формирование поля "Старая цена".
    Посмотри формирование переменных в product_detailed.php. Сделай похожее с учетом синтаксиса в home.php (оба файла лежат в includes) и добавь новые данные в home.tpl.html

    Готового кода у меня нет. Сделать не сложно, но времени сейчас маловато.
     
  4. alex79a

    alex79a Создатель

    Регистр.:
    30 сен 2008
    Сообщения:
    27
    Симпатии:
    1
    Zolinger спасибо за помощь, но что то я поискал этот код и, к сожалению, не нашел.
    Я не очень силен в PHP поэтому прошу, может быть кто поможет с кодом и выложит готовый если есть, чтобы скопировать и вставить сразу в нужное место, ведь наверняка поменять пару строчек.
     
  5. alex79a

    alex79a Создатель

    Регистр.:
    30 сен 2008
    Сообщения:
    27
    Симпатии:
    1
    Может кто нибудь поможет и выложит подправленный код для вывода старой цены в спецпредложениях... Ну очень нужно.
    А то чета не могу разобраться...
     
  6. Zolinger

    Zolinger Постоялец

    Регистр.:
    29 сен 2008
    Сообщения:
    111
    Симпатии:
    69
    решение

    Если кому-то еще понадобится...

    Изменения в в файлах home.tpl.html и home.php

    home.php
    строка 40.
    вместо:
    PHP:
    $q1 db_query("SELECT productID, name, default_picture, Price, categoryID FROM ".
                        
    PRODUCTS_TABLE.
                        
    " where productID=$row[0]") or die (db_error());
    вот это:
    PHP:
    $q1 db_query("SELECT productID, name, default_picture, Price, categoryID, list_price FROM ".
                        
    PRODUCTS_TABLE.
                        
    " where productID=$row[0]") or die (db_error());
    строка 54. вместо:
    PHP:
                        $row1[2] = $picture_row[0];
                        
    $row1[3] = show_price($row1[3]);
                        
    $result[] = $row1;
    вот это:
    PHP:
                        $row1[2] = $picture_row[0];
                        
    $row1[3] = show_price$row1["Price"] );
                        
    $row1[4] = show_price$row1["list_price"] );
                        
    $row1[5] = show_price$row1["list_price"]-$row1["Price"] );
                        if ( 
    $row1["list_price"] ) {
                            
    $row1[6] = ceil(((($row1["list_price"]-$row1["Price"])/$row1["Price"])*100));
                        }
                        
    $row1[7] = (int)$row1["Price"];
                        
    $row1[8] = (int)$row1["list_price"];
                        
    $result[] = $row1;
    home.tpl.html

    Специальные предложения в стандартном шаблоне оформлены в виде таблицы.
    Нужно добавить этот код туда, где Вам хотелось бы видеть информацию о скидке,
    например под ценой:
    PHP:
       <!-- Start Old price -->

       {if 
    $special_offers[i][8]>&& $special_offers[i][8]>$special_offers[i][7] && $special_offers[i][7]>0}<br>
       <
    font color="brown"><strike>{$special_offers[i][4]}</strike></font><br>
       {
    $smarty.const.YOU_SAVE}: <font color=brown> {$special_offers[i][5]} ({$special_offers[i][6]}%)
       {/if}

       <!-- 
    End Old Price -->
     
    AlexandriusIII, Quake_SS, ndmitry и ещё 1-му нравится это.
  7. alex79a

    alex79a Создатель

    Регистр.:
    30 сен 2008
    Сообщения:
    27
    Симпатии:
    1
    Zolinger
    Огромное спасибо за помощь!:)
    Почему-то при загрузке страницы сайта выскакивает ошибка
    Warning: Division by zero in /home/.../includes/home.php on line 58

    Еще я заметил, что почему то часть товаров выводятся нормально в спецпредложения вместе со старой ценой, а часть ну никак не хотят в спецпредложении на главной выводить старую цену.
    Но если кликнуть на товар, то в разделе магазина, где находится этот товар старая цена присутствует.

    Я уже все описания в админке перерыл, думал, что может там чего, но ничего не нашел.
    Непонятно, почему одни товары нормально выводятся на главной со старой ценой, а другие нет, что с ними ни делай...
    Не знаете, в чем может быть причина?
     
  8. Zolinger

    Zolinger Постоялец

    Регистр.:
    29 сен 2008
    Сообщения:
    111
    Симпатии:
    69
    охота на косЯки...

    Угу. Глюки найдены и устранены.
     
  9. AlexandriusIII

    AlexandriusIII Писатель

    Регистр.:
    13 дек 2008
    Сообщения:
    6
    Симпатии:
    0
    Можно поделиться решением устранения глюков?
     
  10. Welho®

    Welho® Предвестник пьянки

    Регистр.:
    4 дек 2007
    Сообщения:
    855
    Симпатии:
    330
    не тупи, в шестом посте уже исправленный вариант :)
     
Статус темы:
Закрыта.