chinouk Posted October 14, 2013 Share Posted October 14, 2013 Hallo, Ik heb een aantal aanbiedingen die ik graag wil presteren op mijn homepage. Alleen toont prestashop er maximaal 1. Ik kan ook nergens in de configuratie vinden hoe ik dit aantal kan verhogen (zoals bv bij 'aanbevolen producten'). Weet iemand waar dit staat? Graag hoor ik! Alvast dank. Link to comment Share on other sites More sharing options...
scorpionsworld Posted October 16, 2013 Share Posted October 16, 2013 Weet iemand waar dit staat? Ja....dat staat nergens. Standaard, in Prestashop 1.5.6, word er willekeurig 1 aanbieding uitgekozen en weergegeven op de frontoffice. Wil je meerdere aanbiedingen weergeven zul je een andere of aangepaste module moeten gebruiken. Link to comment Share on other sites More sharing options...
chinouk Posted October 16, 2013 Author Share Posted October 16, 2013 Ah ok... nou, dat is verhelderend. Hoef ik ook niet meer verder te zoeken. Heb je misschien een suggestie voor hoe ik dit anders zou kunnen oplossen (heb je tip voor een alternatieve module) Of kan ik iets in de code aanpassen.. maybe? Dank voor het meedenken. Link to comment Share on other sites More sharing options...
scorpionsworld Posted October 16, 2013 Share Posted October 16, 2013 Ah ok... nou, dat is verhelderend. Hoef ik ook niet meer verder te zoeken. Heb je misschien een suggestie voor hoe ik dit anders zou kunnen oplossen (heb je tip voor een alternatieve module) Of kan ik iets in de code aanpassen.. maybe? Dank voor het meedenken. Dat kan. Ten eerste kun je het aantal aanbiedingen wat uit de database opgehaald word door de module aanpassen door in het bestand /modules/blockspecials/blockspecials.php op regel 106 met public function hookRightColumn($params) { if (Configuration::get('PS_CATALOG_MODE')) return; // We need to create multiple caches because the products are sorted randomly $random = date('Ymd').'|'.round(rand(1, max(Configuration::get('BLOCKSPECIALS_NB_CACHES'), 1))); if (!Configuration::get('BLOCKSPECIALS_NB_CACHES') || !$this->isCached('blockspecials.tpl', $this->getCacheId('blockspecials|'.$random))) { if (!($specials = Product::getRandomSpecial((int)$params['cookie']->id_lang)) && !Configuration::get('PS_BLOCK_SPECIALS_DISPLAY')) return; $this->smarty->assign(array( 'special' => $special, 'priceWithoutReduction_tax_excl' => Tools::ps_round($special['price_without_reduction'], 2), 'mediumSize' => Image::getSize(ImageType::getFormatedName('medium')), )); } return $this->display(__FILE__, 'blockspecials.tpl', $this->getCacheId('blockspecials|'.$random)); } te vervangen voor: public function hookRightColumn($params) { if (Configuration::get('PS_CATALOG_MODE')) return; // We need to create multiple caches because the products are sorted randomly $random = date('Ymd').'|'.round(rand(1, max(Configuration::get('BLOCKSPECIALS_NB_CACHES'), 1))); if (!Configuration::get('BLOCKSPECIALS_NB_CACHES') || !$this->isCached('blockspecials.tpl', $this->getCacheId('blockspecials|'.$random))) { if (!($specials = Product::getPricesDrop((int)$params['cookie']->id_lang, 0, 3, false, 'date_upd')) && !Configuration::get('PS_BLOCK_SPECIALS_DISPLAY')) return; foreach($specials as &$special) { $special['priceWithoutReduction_tax_excl'] = Tools::ps_round($special['price_without_reduction'], 2); } $this->smarty->assign(array( 'specials' => $specials, 'mediumSize' => Image::getSize(ImageType::getFormatedName('medium')), )); } return $this->display(__FILE__, 'blockspecials.tpl', $this->getCacheId('blockspecials|'.$random)); } Waarbij 3 het aantal op te halen producten is. Om vervolgens in de template voor blockspecials (/modules/blockspecials/blockspecials.tpl) een foreach loop in te bouwen om alle opgehaalde aanbiedingen weer te kunnen geven. Vervang {if $special} <ul class="products clearfix"> <li class="product_image"> <a href="{$special.link}"><img src="{$link->getImageLink($special.link_rewrite, $special.id_image, 'medium_default')|escape:'html'}" alt="{$special.legend|escape:html:'UTF-8'}" height="{$mediumSize.height}" width="{$mediumSize.width}" title="{$special.name|escape:html:'UTF-8'}" /></a> </li> <li> {if !$PS_CATALOG_MODE} {if $special.specific_prices} {assign var='specific_prices' value=$special.specific_prices} {if $specific_prices.reduction_type == 'percentage' && ($specific_prices.from == $specific_prices.to OR ($smarty.now|date_format:'%Y-%m-%d %H:%M:%S' <= $specific_prices.to && $smarty.now|date_format:'%Y-%m-%d %H:%M:%S' >= $specific_prices.from))} <span class="reduction"><span>-{$specific_prices.reduction*100|floatval}%</span></span> {/if} {/if} {/if} <h5 class="s_title_block"><a href="{$special.link}" title="{$special.name|escape:html:'UTF-8'}">{$special.name|escape:html:'UTF-8'}</a></h5> {if !$PS_CATALOG_MODE} <span class="price-discount">{if !$priceDisplay}{displayWtPrice p=$special.price_without_reduction}{else}{displayWtPrice p=$priceWithoutReduction_tax_excl}{/if}</span> <span class="price">{if !$priceDisplay}{displayWtPrice p=$special.price}{else}{displayWtPrice p=$special.price_tax_exc}{/if}</span> {/if} </li> </ul> <p> <a href="{$link->getPageLink('prices-drop')|escape:'html'}" title="{l s='All specials' mod='blockspecials'}">» {l s='All specials' mod='blockspecials'}</a> </p> {else} Voor {if isset($specials) AND $specials} {foreach from=$specials item=special} <ul class="products clearfix"> <li class="product_image"> <a href="{$special.link}"><img src="{$link->getImageLink($special.link_rewrite, $special.id_image, 'medium_default')|escape:'html'}" alt="{$special.legend|escape:html:'UTF-8'}" height="{$mediumSize.height}" width="{$mediumSize.width}" title="{$special.name|escape:html:'UTF-8'}" /></a> </li> <li> {if !$PS_CATALOG_MODE} {if $special.specific_prices} {assign var='specific_prices' value=$special.specific_prices} {if $specific_prices.reduction_type == 'percentage' && ($specific_prices.from == $specific_prices.to OR ($smarty.now|date_format:'%Y-%m-%d %H:%M:%S' <= $specific_prices.to && $smarty.now|date_format:'%Y-%m-%d %H:%M:%S' >= $specific_prices.from))} <span class="reduction"><span>-{$specific_prices.reduction*100|floatval}%</span></span> {/if} {/if} {/if} <h5 class="s_title_block"><a href="{$special.link}" title="{$special.name|escape:html:'UTF-8'}">{$special.name|escape:html:'UTF-8'}</a></h5> {if !$PS_CATALOG_MODE} <span class="price-discount">{if !$priceDisplay}{displayWtPrice p=$special.price_without_reduction}{else}{displayWtPrice p=$special.priceWithoutReduction_tax_excl}{/if}</span> <span class="price">{if !$priceDisplay}{displayWtPrice p=$special.price}{else}{displayWtPrice p=$special.price_tax_exc}{/if}</span> {/if} </li> </ul> {/foreach} <p> <a href="{$link->getPageLink('prices-drop')|escape:'html'}" title="{l s='All specials' mod='blockspecials'}">» {l s='All specials' mod='blockspecials'}</a> </p> {else} Check vervolgens of er een template override bestaat in je theme (/themes/[JOUWTHEMENAAM]/modules/blockspecials/blockspecials.tpl). Zo ja, vervang dezelfde code in dit template bestand als bovenstaande. Link to comment Share on other sites More sharing options...
chinouk Posted October 18, 2013 Author Share Posted October 18, 2013 Yes! Het werkt... :) A big thanks!! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now