Curieux et passionné des nouvelles technologies et de l'Open Source.

Php, Symfony, Drupal, Docker, Git, PL/SQL Oracle , API Rest, Soap, Apache2, MySql,Java, ...

Management, Scrum/Agile, étude/analyse, gestion de projet, ...


Latrach Said développeur - Symfony
Latrach Said développeur - Drupal 8
Latrach Said développeur - git gitlab github
Latrach Said développeur - oracle pl/sql sql procedure function trigger package
Latrach Said développeur - java
Latrach Said développeur - React native
Latrach Said développeur - Prestashop

Prestashop - module produits les plus vus

Module Produits Les plus vus

- avant de charger le zip via l'interface d'administration, il faut modifier la classe product

emplacement classes/Product.php

ajouter le code suivant à la fin du fichier Product.php juste avant  "} ?>"

<?php
/*
* products viewed by latrach.net
*/
static public function productsviewed($id_lang,$pageNumber = 0, $nbProducts = 10,$count = false)
{

global

$link, $cookie;
if (
$pageNumber < 0) $pageNumber = 0;
if (
$nbProducts < 1) $nbProducts = 10;

if (

$count)
        {
           
$result = Db::getInstance()->getRow('
            SELECT COUNT(`id_product`) AS nb
            FROM `'
._DB_PREFIX_.'product` p
            WHERE `active` = 1           
            '
);
            return
intval($result['nb']);
        }
           
$result = Db::getInstance()->ExecuteS('
SELECT id_product, link_rewrite, description, description_short, meta_description, meta_keywords, meta_title, name, id_image, legend, SUM( counter ) total
FROM (
SELECT p.id_product, pl.link_rewrite, IFNULL( pv.counter, 0 ) counter, pl.description, pl.description_short, pl.meta_description,
pl.meta_keywords, pl.meta_title, pl.name,

(select  i.id_image from '

._DB_PREFIX_.'image i, '._DB_PREFIX_.'image_lang il
where i.id_product = p.id_product AND i.id_image = il.id_image AND i.cover =1 AND il.id_lang ='
.intval($id_lang).'
) id_image,

(select  il.legend  from '

._DB_PREFIX_.'image i, '._DB_PREFIX_.'image_lang il
where i.id_product = p.id_product AND i.id_image = il.id_image AND i.cover =1 AND il.id_lang ='
.intval($id_lang).'
) legend

FROM '

._DB_PREFIX_.'page_viewed pv, '._DB_PREFIX_.'page pg, '._DB_PREFIX_.'product p, '._DB_PREFIX_.'date_range d, '._DB_PREFIX_.'product_lang pl
WHERE pv.id_page = pg.id_page
AND pg.id_object = p.id_product
AND pv.id_date_range = d.id_date_range
AND p.id_product = pl.id_product
AND pl.id_lang ='
.intval($id_lang).'
)ma_table
GROUP BY id_product
ORDER BY total DESC
LIMIT '
.intval($pageNumber * $nbProducts).', '.intval($nbProducts));
return
Product::getProductsProperties($id_lang, $result);
 }
?>

une fois cette modif est faite charger maintenant le zip suivant:

Tags: 

Catégories: 

Attachements: 

Fichier attachéTaille
Package icon blockviewedproducts.zip3.55 Ko
Share/Save

Ajouter un commentaire

Filtered HTML

  • Pour publier des morceaux de code, entourez-les avec les balises <code>...</code>. Pour du PHP, utilisez. <?php ... ?>, ce qui va colorier le code en fonction de sa syntaxe.
  • Les adresses de pages web et de courriels sont transformées en liens automatiquement.
  • Tags HTML autorisés : <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Les lignes et les paragraphes vont à la ligne automatiquement.

Plain text

  • Aucune balise HTML autorisée.
  • Les adresses de pages web et de courriels sont transformées en liens automatiquement.
  • Les lignes et les paragraphes vont à la ligne automatiquement.
CAPTCHA
Cette question permet de s'assurer que vous êtes un utilisateur humain et non un logiciel automatisé de pollupostage (spam).
Image CAPTCHA
Saisir les caractères affichés dans l'image.