Last product - więcej na raz

BeeR

No avatar

2007-09-03 20:13

W jaki sposób wyświetlić więcej niż 1 produkt ostatnio dodany ?

» Quick.Cart v2.x

merci

No avatar

2007-09-04 09:18

BeeR - wymagana jest modyfikacja kodu tego dodatku, sprobuje Ci to opisac. Otworz plik plugins/lastProduct/lastProduct.php i przed linia w ktorej znajduje sie:

rsort$aFileSORT_NUMERIC );

dodaj:

$content null;
$iCount2 0;

Nastepnie przed linia:

$bFind true;

wklej kod:

$iCount2++;
$content .= $tpl->tbHtml$sFile'LAST_PRODUCT' );

a zaraz przed linia:

break;

wklej

if($iCount2 == 2)

teraz linie, ktora znajduje sie za ta:

if( isset( $bFind ) )

zamien na nastepujaca:

return $content;


Mam nadzieje, ze niczego nie pominelam.

BeeR

No avatar

2007-09-04 10:43

Działa bardzo dobrze :) Wielkie podziękowania...

Czy każdy plugin wyświetla tylko te pozycje, które mają zdjęcie ?

P.S.
Jeszcze 1 problem... chciałem wyświetlić cenę... w template dodałem

$lang[Price]: $aList[sPrice] $config[currency_symbol]

Jednak wyświetla się tylko:

Cena: PLN

merci

No avatar

2007-09-05 08:25

BeeR - nie kazdy ale LastProduct i RandomProduct potrzebuja zdjecia. Zeby wyswietllic cene pod obrazkiem z LastProduct do pliku templates/lastProduct.tpl dodaj:

$aList[fPrice$config[currency_symbol]

MirasZelazny

Avatar: MirasZelazny

2010-06-20 01:53

Witam

powracam z pytaniem tylko w wersji 3.5
Ktoś wie jak to zrobić?

Pzdr Miras

diamel

Avatar: diamel

2010-06-22 12:11

W wersji 3.x zrobiłem to trochę łopatologicznie ale grunt że działa. Mianowicie postępujesz analogicznie wklejając ten sam kod tylko zmienną nazywasz sobie inaczej i w linijce ze swoją zmienną odejmujesz np.1 dla poprzedniego produktu i analogicznie dla jeszcze wcześniejszego -2 u mnie $iRes = $iRes-1;

Trzeba pamiętać by wszedzie pozmieniac nazwy tych zmiennych.
Przeanalizuj sobie kod:

/**
* Return res product
* @return string
* @param string $sFile
*/
function throwResProduct( $sFile = 'container.tpl' ){
$oTpl =& TplParser::getInstance( );
$oFile =& Files::getInstance( );
if( !isset( $oFile->aImagesDefault[2] ) ){
return null;
}

$iRes = 0;
foreach( $oFile->aImagesDefault[2] as $iProduct => $iFile ){
if( isset( $this->aProducts[$iProduct] ) && $iProduct > $iRes )
$iRes = $iProduct;
$iRes = $iRes-1;
}

if( $iRes > 0 ){
$aData = $this->aProducts[$iRes];
$aDataImage = $oFile->aFilesImages[2][$oFile->aImagesDefault[2][$aData['iProduct']]];
$aData['iSizeValue1'] = $aDataImage['iSizeValue1'];
$aData['sFileName'] = $aDataImage['sFileName'];
$aData['sFileDescription'] = ( isset( $aDataImage['sFileDescription'] ) ) ? $aDataImage['sFileDescription'] : null;
$aData['sPrice'] = displayPrice( $aData['fPrice'] );
$oTpl->setVariables( 'aData', $aData );
return $oTpl->tbHtml( $sFile, 'RES_PRODUCT' );
}
else
return null;
} // end function throwResProduct

Prowadził ślepy kulawego;)

diamel

Avatar: diamel

2010-06-22 12:14

Aha, w identyczny sposób rozwiązałem wyświetlanie kilka losowych produktów. Programista prawdopodobnie zoptymalizowałby kod i ujął to wszystko w jednej pętli ale ja jestem amatorem;)

Prowadził ślepy kulawego;)

MirasZelazny

Avatar: MirasZelazny

2010-06-26 12:55

dzięki wielkie - i o to chodziło 8-)

Pzdr Miras

Do góry
o nas | kontakt