Jump to content

Module marqué comme "Sans surcharge" (Override) sur la Marketplace, alors qu'il contient plein de surcharge


Axelweb

Recommended Posts

Bonjour,

Sur la PrestaShop Marketplace, on peut trouver des modules (payants), étant indiqués comme "Sans surcharge", comme sur la capture d'écran, avec le module "Pretty URL".

Mais le module ajoute clairement des fichiers de surcharge dans le dossier /override, qui s'affiche dans Paramètres avancés -> Informations, bloc "Liste des surcharges", comme on peut le voir sur la seconde capture d'écran.

Encore mieux, quand on regarde un peu le code (voir ci-dessous), on s'aperçoit que pendant l'installation, le module installe toute une liste de fichier dans le dossier /override, et cela si la version est supérieur à 1.7.0.0, donc ce n'est pas une question de rétrocompatibilité, car sur un PrestaShop 8.2, les Overrides seront installés quand même.

Ma question est la suivante : Savez-vous pourquoi le module est quand même marqué comme "Sans surcharge" ? Est-ce le développeur qui indique cela, ou une vérification automatique de PrestaShop ?

Extrait du module "Pretty URL" :

	public function moveFiles()
	{
		if (Tools::version_compare(_PS_VERSION_, '1.7.0.0', '>=')) {
			Tools::deleteFile(_PS_OVERRIDE_DIR_.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'ProductController.php');
			Tools::deleteFile(_PS_OVERRIDE_DIR_.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'CategoryController.php');
			Tools::copy(_PS_MODULE_DIR_.$this->name.DIRECTORY_SEPARATOR.'override'.DIRECTORY_SEPARATOR.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'CategoryController.php',
						_PS_OVERRIDE_DIR_.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'CategoryController.php');
			Tools::copy(_PS_MODULE_DIR_.$this->name.DIRECTORY_SEPARATOR.'override'.DIRECTORY_SEPARATOR.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'ManufacturerController.php',
						_PS_OVERRIDE_DIR_.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'ManufacturerController.php');
			Tools::copy(_PS_MODULE_DIR_.$this->name.DIRECTORY_SEPARATOR.'override'.DIRECTORY_SEPARATOR.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'SupplierController.php',
						_PS_OVERRIDE_DIR_.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'SupplierController.php');
			Tools::copy(_PS_MODULE_DIR_.$this->name.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR.'ProductController.php',
						_PS_OVERRIDE_DIR_.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'ProductController.php');
			if (Tools::version_compare(_PS_VERSION_, '1.7.4.0', '<')) {
				Tools::copy(_PS_MODULE_DIR_.$this->name.DIRECTORY_SEPARATOR.'includes'.DIRECTORY_SEPARATOR.'CartController.php',
						_PS_OVERRIDE_DIR_.'controllers'.DIRECTORY_SEPARATOR.'front'.DIRECTORY_SEPARATOR.'CartController.php');
			}
		}
		return true;
	}

Le module étant indiqué comme "Sans surcharge", et les surcharges que celui-ci ajoute, que l'on peut voir depuis le back-office (Paramètres avancés -> Informations)

ps-sans-override-prettyurls.thumb.jpg.946fb1d55260e8bb8b48c72778f9dd29.jpgoverrid-list.thumb.jpg.22946edab88ae8e1e926d1df43c7db83.jpg

Link to comment
Share on other sites

Plusieurs remarques:

- Ce module est inutile et ne changera RIEN au référencement, c'est une aberration de croire que ça gène Google qu'il y ait un chiffre dans l'url, on a eu depuis 2016 de nombreux débats à ce sujet.

- Si vous avez des catégories avec nom identiques vous allez avoir de mauvaises surprises (Homme/teeshirt, Femme/teeshirt par exemple)

- Certains modules ne seront plus fonctionnels à cause de la ré-écriture des routes.

- Ce module installe ses overrides comme un sagouin en les écrivant de force plutôt que d'utiliser le fonctionnement natif de Prestashop (qui contrôle déjà que les fonctions ne sont pas déjà overridées)

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

10 minutes ago, Eolia said:

Plusieurs remarques:

- Ce module est inutile et ne changera RIEN au référencement, c'est une aberration de croire que ça gène Google qu'il y ait un chiffre dans l'url, on a eu depuis 2016 de nombreux débats à ce sujet.

- Si vous avez des catégories avec nom identiques vous allez avoir de mauvaises surprises (Homme/teeshirt, Femme/teeshirt par exemple)

- Certains modules ne seront plus fonctionnels à cause de la ré-écriture des routes.

- Ce module installe ses overrides comme un sagouin en les écrivant de force plutôt que d'utiliser le fonctionnement natif de Prestashop (qui contrôle déjà que les fonctions ne sont pas déjà overridées)

Hello Eolia, merci beaucoup pour ta réponse, c'est très intéressant. En effet, c'est le module qui ajoute le plus d'override actuellement, avec JPresta Page Cache Ultimate ...

Link to comment
Share on other sites

Pour ce genre de problème contactez directement Prestashop addons et signalez le problème. En fait sur addons la première publication d'un module passe dans un contrôle qualité "sérieux". MAIS à chaque mise à jour du module sur la market place, le contrôle est très sommaire, d'où votre mauvaise surprise 😞 Et c'est la responsabilité du développeur de mettre à jour les informations de son module.

  • Like 1
Link to comment
Share on other sites

il y a 36 minutes, Axelweb a dit :

avec JPresta Page Cache Ultimate ...

Deuxième module inutile... Si votre site rame il faut en trouver la raison (Module mal écrit, requêtes SQL pas optimisées, serveur limité, etc...)

Ce genre de module ne sert que de cache misère mais ne corrige rien.

  • Like 1
Link to comment
Share on other sites

il y a 3 minutes, Eolia a dit :

Ce genre de module ne sert que de cache misère mais ne corrige rien.

Je mesurerai un peu les propos de @Eolia, car pour des sites avec peu de ressources serveur (et il y énormément de petits sites sur de l'hébergement mutualisé), cela améliore grandement la vitesse du site. Pour ma part je l'ai testé sur plusieurs sites et franchement ça décoiffe. la majorité des pages sont en statique ! Et les overrides sont hélas nécessaire car Prestashop n'a pas prévu encore tous les hooks possibles pour ce type d'outils qui optimise en profondeur.

Quand on voit le nombre de requêtes SQL en mode profiling sur une simple page d'accueil qui change très rarement, il faut un serveur dédié et un serveur costaud et SGBD dédié pour avoir des performances acceptables, et c'est un budget pour des petites structures. Prestashop ne devrait pas selon moi, être l'apanage que des grands commerçants qui ont les moyens, cela va à l'encontre de la philosophie open source.

  • Like 1
Link to comment
Share on other sites

Je ne suis pas d'accord. J'ai plusieurs clients chez O2switch (7€ par mois) et aucun problèmes de perfs. (Je ne parle pas d'OVH)

Et pour être intervenu de nombreuses fois, c'était à chaque fois un problème de script (dernier module débugué, avant intervention 40 secondes après debug 286 ms)

Pas d'index sur les tables, requêtes toutes en LEFT etc. (ça fonctionne avec John Doe et 3 robes mais avec 30 000 commandes, 65 000 produits ce n'est plus du tout la même histoire).

Si un Prestashop ne rame pas à l'install il ne doit pas ramer ensuite ou alors il faut regarder ce qu'on a modifié/ajouté.

  • Like 1
Link to comment
Share on other sites

21 hours ago, Prestashop Addict said:

Je mesurerai un peu les propos de @Eolia, car pour des sites avec peu de ressources serveur (et il y énormément de petits sites sur de l'hébergement mutualisé), cela améliore grandement la vitesse du site. Pour ma part je l'ai testé sur plusieurs sites et franchement ça décoiffe. la majorité des pages sont en statique ! Et les overrides sont hélas nécessaire car Prestashop n'a pas prévu encore tous les hooks possibles pour ce type d'outils qui optimise en profondeur.

Quand on voit le nombre de requêtes SQL en mode profiling sur une simple page d'accueil qui change très rarement, il faut un serveur dédié et un serveur costaud et SGBD dédié pour avoir des performances acceptables, et c'est un budget pour des petites structures. Prestashop ne devrait pas selon moi, être l'apanage que des grands commerçants qui ont les moyens, cela va à l'encontre de la philosophie open source.

En effet, le gain avec un cache statique peut être vraiment impressionnant. Mais vu tous les overrides qu'ajoute le module Page Cache Ultimate, je préfère m'en passer et utiliser Varnish par exemple, mais demande un peu plus de configuration (il ne faut pas mettre en cache les paniers, notifications ...).

Si vous pouvez mettre le lien de contact PrestaShop addons, je suis preneur, il est HS sur votre post :)

Link to comment
Share on other sites

21 hours ago, Eolia said:

Deuxième module inutile... Si votre site rame il faut en trouver la raison (Module mal écrit, requêtes SQL pas optimisées, serveur limité, etc...)

Ce genre de module ne sert que de cache misère mais ne corrige rien.

Je suis d'accord, je n'ai pas choisi d'installer ce module, il était déjà présent quand j'ai commencé à travailler sur ce PrestaShop, mais on souhaite s'en débarrasser lors de la montée en version 8.2

Link to comment
Share on other sites

Varnish n'est pas beaucoup mieux. Personnellement, je suis d'accord avec @Eolia, ce sont des caches misère. Une boutique correctement installée et configurée, avec des modules et des thèmes correctement développés et le tout tournant sur un bon hébergement ne devrait pas avoir besoin de ces caches.

Link to comment
Share on other sites

Il y a 4 heures, coeos.pro a dit :

HEUREUSEMENT on paye 99 € pour une validation de QUALITE !!!

 

 

Outre la qualité du code, ce type de module ne devrait même pas avoir le droit de citer. https://www.mediacom87.fr/larnaque-des-modules-pour-retirer-les-ids-des-urls-de-prestashop/

Et, les "pro" du SEO qui poussent vers ce type de solution devraient être brulés en place publique pour bien transmettre le message.

  • Like 1
Link to comment
Share on other sites

8 hours ago, coeos.pro said:

HEUREUSEMENT on paye 99 € pour une validation de QUALITE !!!

 

 

J'allais le dire, y'a 99 euro de frais pour "ameliorer l'ecosysteme" et addon est pas foutu de mettre a jour cette information automatiquement quand un module est upload (donc valide) sur addon ? Alors que meme PS recommande de ne pas utiliser les override.

"It is not recommended to use an override in a module that you intend to distribute (for instance through the PrestaShop Addons marketplace), and they are forbidden in partner modules."

Vraiment une blague cte plateforme.

Link to comment
Share on other sites

18 hours ago, Divine said:

Varnish n'est pas beaucoup mieux. Personnellement, je suis d'accord avec @Eolia, ce sont des caches misère. Une boutique correctement installée et configurée, avec des modules et des thèmes correctement développés et le tout tournant sur un bon hébergement ne devrait pas avoir besoin de ces caches.

Pour le coup, même un site sans problème particulier, avec un bon hébergeur, qui affiche une page en 300ms, peut vraiment diviser ce temps par dix avec Varnish. C'est un choix, et on ne devrait pas s'en servir parce que son site est lent, je suis d'accord, mais si c'est un choix réfléchit et bien fait, alors oui :)

50 minutes ago, Eolia said:

C'est justement parce que c'est un outil automatique (mal pensé) que ça affiche qu'il n'y a pas de surcharge vu que ce module n'a pas de répertoire /override :D

Concernant le module "PrettyURLs" de FME, il possède bien un dossier override, donc j'imagine qu'il serait assez facile d'automatiser le process pour détecter les overrides dans un module… (désolé pour la capture horrible, je n'avais que VIM sous la main 😂)

image.png.c3308de8a47558f7d48cae819be6f62a.png

Edited by Axelweb
update quote to prevent double post (see edit history)
Link to comment
Share on other sites

il y a 28 minutes, Axelweb a dit :

Pour le coup, même un site sans problème particulier, avec un bon hébergeur, qui affiche une page en 300ms, peut vraiment diviser ce temps par dix avec Varnish. C'est un choix, et on ne devrait pas s'en servir parce que son site est lent, je suis d'accord, mais si c'est un choix réfléchit et bien fait, alors oui :)

Bof, tous ces systèmes de cache posent plus de problèmes qu'autre chose avec Prestashop, c'est connu depuis un moment déjà. Alors oui le temps de chargement de certaines pages est accéléré mais si c'est pour avoir des bugs à répétition, moi je m'en passe allègrement. Je préfère travailler à une véritable optimisation du site. Après chacun voit midi à sa porte :)

  • Like 1
Link to comment
Share on other sites

il y a 54 minutes, Axelweb a dit :

j'imagine qu'il serait assez facile d'automatiser le process pour détecter les overrides dans un module

c'est automatisé depuis la version 1.4, ça fait 10 ans, par contre pour PS8 ils viennent d'introduire un nouveau bug : quand tu installes un module avec override mais que la fonction est déjà overridé, le module qu'il s'est bien installé, alors que non et il est désactivé sans avertir l'utilisateur

Link to comment
Share on other sites

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...