Автор Тема: Изменить в Спецпредлжениях.  (Прочитано 11796 раз)

Оффлайн Alex Nova

  • Пользователь
  • **
  • Сообщений: 38
  • http://fialki.info
    • Просмотр профиля
Изменить в Спецпредлжениях.
« : Октября 13, 2012, 11:35:14 am »
День добрый всем!
Есть вопрос по шаблону. Cайт fialki.info
У меня на главной странице выводятся спец предложения, но там только название картинка и цена. А мне бы нужно вывести данные из дополнительных параметров типа (лист, детка, взрослое растение) Можно прямо под ценой.  Люди видят фото взрослого растения а это всего лишь еще детка. Пробовал сам но чета запутался в конец...
Может делал уже кто подскажите...

nictboom

  • Гость
Re: Изменить в Спецпредлжениях.
« Ответ #1 : Октября 13, 2012, 11:53:43 am »
а если так home.php (чуть поправил!):
<?php
/*****************************************************************************
 *                                                                           *
 * Shop-Script FREE                                                          *
 * Copyright (c) 2005 WebAsyst LLC. All rights reserved.                     *
 *                                                                           *
 ****************************************************************************/

    // front-end homepage
    
if (!$categoryID && !isset($productID))
    {  
        
$f file("./core/aux_pages/index");
            
$out implode(""$f);
    
$smarty->assign("index"$out);  
           
    
//special offers
    
$idp=0;
    
$result = array();
    
$q db_query('SELECT pt.productID, name, picture, Price,list_price, brief_description, hurl FROM '.SPECIAL_OFFERS_TABLE." as st left join ".PRODUCTS_TABLE." as pt on pt.productID=st.productID where picture!=''  order by sort_order") or die (db_error());
    while (
$row1 db_assoc_q($q))
    {
       
        if (
file_exists("./products_pictures/".$row1['picture']))
        {
           
$s rtrim($row1['picture'], '.jpg');
           
$row1['picture'] = $s."-S.jpg";
                   
$row1['Price'] = round($row1['Price']/CURRENCY_val,2);
           
$row1['Price'] = show_price($row1['Price']);
                   
$row1['list_price'] = round($row1['list_price']/CURRENCY_val,2);
           
$row1['list_price'] = show_price($row1['list_price']);

           if (
$row1['hurl'] != "" && CONF_CHPU) {$row1['hurl'] = REDIRECT_PRODUCT."/".$row1['hurl'];} else {$row1['hurl'] = "index.php?productID=".$row1['productID'];}
           
$result[] = $row1;
        }
           
$idp .=$row1['productID'].',';
       }

                
$idp='('.substr($idp0strlen($idp)-1).')';
                
$sql_p="SELECT pov.`productID` FROM `".PRODUCTS_TABLE."` as p,".PRODUCT_OPTIONS_V_TABLE." as pov where p.`productID`=pov.`productID` and p.`productID` in ".$idp."  group by p.`productID`";
                
$q_p db_query($sql_p);  $pi=0;
                
$p=db_arAll($sql_p); $optname=array();
                foreach (
$p as $pvalue)
                {
                     
                   
$sql2="SELECT po.* FROM ".PRODUCT_OPTIONS_TABLE." as po,".PRODUCT_OPTIONS_V_TABLE." as pov where po.`optionID`=pov.`optionID` and pov.productID=".$pvalue["productID"]." group by po.`optionID` order by po.sort_order";
                   
$p2=db_arAll($sql2); $variant=array();
                   foreach (
$p2 as $opions)
                   {
                   
                     
$sql_v"select ovv.name,pov.* from ".PRODUCT_OPTIONS_VAL_TABLE." as ovv,".PRODUCT_OPTIONS_V_TABLE." as pov where ovv.variantID = pov.`variantID` and  ovv.optionID =".$opions['optionID']." AND pov.productID =".$pvalue['productID']." GROUP BY ovv.`variantID` order by ovv.sort_order";      
                     
$variant[$opions['optionID']]['var']=db_arAll($sql_v);
                     
$variant[$opions['optionID']]['name']=$opions["name"];  
                   
                    if (!
in_array($opions['name'],$optname))  
                    
$optname[] =$opions["name"];
                    
# $variant[$opions['optionID']]['name']=$opions['optionID'];  
                     
                   
}  
                   
$rez[$pvalue['productID']]=$variant;
                   
$sql_p="select picture from ".PRODUCT_OPTIONS_V_TABLE." where `default`=1 and `picture` is not NULL AND `picture` != '' and `productID`=".$pvalue["productID"].' LIMIT 1';
                   
$rezult=db_query($sql_p);
                   
$rezult=mysql_fetch_row($rezult);
                   
$p_default[$pvalue['productID']]=$rezult[0];  
                   unset(
$variant,$sql_v);
                }
               
               
$smarty->assign("options"$rez);
    
$smarty->assign("special_offers",$result);
   }
?>

то есть по аналогии category.php и из product_brief.tpl.html взять вывод доп.опций
{assign var="id" value=$special_offer.productID}
{foreach from=$options[$id] item=option key=key name=option}
                   <b>{$option.name}:</b>               
                       {$option.var.0.name}
             {/foreach}
и не забываем бэкапится перед использованием.
« Последнее редактирование: Октября 13, 2012, 09:20:40 pm от nictboom »

Оффлайн Alex Nova

  • Пользователь
  • **
  • Сообщений: 38
  • http://fialki.info
    • Просмотр профиля
Re: Изменить в Спецпредлжениях.
« Ответ #2 : Октября 14, 2012, 02:37:20 pm »
Не совсем то. Ниже цены под каждым цветком: Детка, Взрослое растение, Лист...
А так не очень красиво получается.  Или может я не так что-то делаю..

nictboom

  • Гость
Re: Изменить в Спецпредлжениях.
« Ответ #3 : Октября 14, 2012, 03:03:29 pm »
так а в чем проблема то, вставить код под ценой(<font style="color: #900; font-weight: bold;"><b>{$какаято_цена}</b></font>) и убрать в нем <b>{$option.name}</b> это название опции. и по идее останутся только значения: Детка, Взрослое растение, Лист... а там обрамляйте как угодно например:
<span style="color:#006699;font-size:14px;">{$option.var.0.name}</span>
« Последнее редактирование: Октября 14, 2012, 03:07:02 pm от nictboom »

Оффлайн Alex Nova

  • Пользователь
  • **
  • Сообщений: 38
  • http://fialki.info
    • Просмотр профиля
Re: Изменить в Спецпредлжениях.
« Ответ #4 : Октября 14, 2012, 04:16:17 pm »
Все, допер... )))
Все отлично получилось...
Огромное спасибо.