Jump to content

Produit Phares Aleatoire ?


Recommended Posts

Bonjour,

 

Il existe un topic permettant de mettre en palce cela sinon il existe un module gratuit pour cette version http://www.prestatoolbox.fr/modules-gratuits/264-produits-phares-aleatoires.html

 

Merci, Mais a tu le topic pour mettre en place cela ? je l'avait deja fait sur mon ancien prestashop, je sait que ces une ligne de code a changer mais je ne sait plus ou et quoi merci

Link to comment
Share on other sites

Je met mon homefeatured.php car j'ai essayer plusieur solution, code etc rien ne va !!! :s

<?php
/*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <[email protected]>
*  @copyright  2007-2013 PrestaShop SA
*  @license    http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*/

if (!defined('_PS_VERSION_'))
    exit;

class HomeFeatured extends Module
{
    private $_html = '';
    private $_postErrors = array();

    function __construct()
    {
        $this->name = 'homefeatured';
        $this->tab = 'front_office_features';
        $this->version = '1.1';
        $this->author = 'PrestaShop';
        $this->need_instance = 0;

        parent::__construct();

        $this->displayName = $this->l('Featured products on the homepage.');
        $this->description = $this->l('Displays featured products in the middle of your homepage.');
    }

    function install()
    {
        $this->_clearCache('homefeatured.tpl');
        Configuration::updateValue('HOME_FEATURED_NBR', 8);

        if (!parent::install()
            || !$this->registerHook('displayHome')
            || !$this->registerHook('header')
            || !$this->registerHook('addproduct')
            || !$this->registerHook('updateproduct')
            || !$this->registerHook('deleteproduct')
        )
            return false;
        return true;
    }
    
    public function uninstall()
    {
        $this->_clearCache('homefeatured.tpl');
        return parent::uninstall();
    }

    public function getContent()
    {
        $output = '<h2>'.$this->displayName.'</h2>';
        if (Tools::isSubmit('submitHomeFeatured'))
        {
            $nbr = (int)Tools::getValue('nbr');
            if (!$nbr OR $nbr <= 0 OR !Validate::isInt($nbr))
                $errors[] = $this->l('An invalid number of products has been specified.');
            else
                Configuration::updateValue('HOME_FEATURED_NBR', (int)($nbr));
            if (isset($errors) AND sizeof($errors))
                $output .= $this->displayError(implode('<br />', $errors));
            else
                $output .= $this->displayConfirmation($this->l('Your settings have been updated.'));
        }
        return $output.$this->displayForm();
    }

    public function displayForm()
    {
        $output = '
        <form action="'.Tools::safeOutput($_SERVER['REQUEST_URI']).'" method="post">
            <fieldset><legend><img src="'.$this->_path.'logo.gif" alt="" title="" />'.$this->l('Settings').'</legend>
                <p>'.$this->l('To add products to your homepage, simply add them to the "home" category.').'</p><br />
                <label>'.$this->l('Define the number of products to be displayed.').'</label>
                <div class="margin-form">
                    <input type="text" size="5" name="nbr" value="'.Tools::safeOutput(Tools::getValue('nbr', (int)(Configuration::get('HOME_FEATURED_NBR')))).'" />
                    <p class="clear">'.$this->l('Define the number of products that you would like to display on homepage (default: 8).').'</p>

                </div>
                <center><input type="submit" name="submitHomeFeatured" value="'.$this->l('Save').'" class="button" /></center>
            </fieldset>
        </form>';
        return $output;
    }

    public function hookDisplayHeader($params)
    {
        $this->hookHeader($params);
    }

    public function hookHeader($params)
    {
        $this->context->controller->addCSS(($this->_path).'homefeatured.css', 'all');
    }

    public function hookDisplayHome($params)
    {
        if (!$this->isCached('homefeatured.tpl', $this->getCacheId('homefeatured')))
        {
            $category = new Category(Context::getContext()->shop->getCategory(), (int)Context::getContext()->language->id);
            $nb = (int)Configuration::get('HOME_FEATURED_NBR');
            $products = $category->getProducts((int)Context::getContext()->language->id, 1, ($nb ? $nb : 8), "position");

            $this->smarty->assign(array(
                'products' => $products,
                'add_prod_display' => Configuration::get('PS_ATTRIBUTE_CATEGORY_DISPLAY'),
                'homeSize' => Image::getSize(ImageType::getFormatedName('home')),
            ));
        }
        return $this->display(__FILE__, 'homefeatured.tpl', $this->getCacheId('homefeatured'));
    }

    public function hookAddProduct($params)
    {
        $this->_clearCache('homefeatured.tpl');
    }

    public function hookUpdateProduct($params)
    {
        $this->_clearCache('homefeatured.tpl');
    }

    public function hookDeleteProduct($params)
    {
        $this->_clearCache('homefeatured.tpl');
    }
}
Link to comment
Share on other sites

Bonjour,

 

Il existe un topic permettant de mettre en palce cela sinon il existe un module gratuit pour cette version http://www.prestatoolbox.fr/modules-gratuits/264-produits-phares-aleatoires.html

 

Bonsoir, je l'ai installer, merci pour ce module, mais ce n'est pas vraiment ce qui me convient, je n'obtien pas le meme que avec le Homefaetured d'origine :/ Donc perso j'aimerai si quelqun a la solution et la modif a faire pour la version 1.5.6.2 des produit phare aleatoire . en tout cas merci Jeckyl pour ton module .

Link to comment
Share on other sites

Bien entendu que le résultat ne sera pas le même puisque vous avez personnalisé le design du module de base.

 

donc soit vous reproduisez le design sur ce module soit vous regardez dans le code la fameuse ligne à modifier.

 

Oui j'ai mis un Themes, Mais je ne suis pas codeur Ou autre ces pour cela que je vien demander une aide sur ce forum.

merci quand meme .

Link to comment
Share on other sites

  • 3 weeks later...

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...