One thing that always annoyed me in Prestashop was the huge amount of modules displayed in the module selection list in the admin! Apart from the modules uploaded in a shop, Prestashop fills the selection list with tons of modules available for sale in the Addons Marketplace..
As a result designers & developers that are looking for a module in order to install it, necessarily have to either filter or search for a module!
In a fresh installation of Prestashop 1.7.4.2 I treated a while ago, I realized that although there where only two uploaded (& uninstalled) modules in my shop, I had a total of 146 modules in my selection list…
Well, this was the drop that overflowed the glass and made me take some action!
After a little digging in the core of Prestashop, I got my solution! Just a minor change in the core code and my module selection list went down to just 2 modules! And now it feels clean and tidy!
So, to get the same results I got, simply go to file: /src/Core/Addon/Module/ModuleRepository.php
Locate function getList(). In Prestashop 1.7.4.2 you will find it on lines 282-291. It looks like:
/** * @return AddonInterface[] retrieve the universe of Modules */ public function getList() { return array_merge( $this->getAddonsCatalogModules(), $this->getModulesOnDisk() ); }
The above function merges two arrays of modules. The one represents the modules available in your Prestashop installation and the other represents the modules from the marketplace. So, the solution is simple… Just ignore the marketplace modules! To do so, edit the above function in order to look like:
/** * @return AddonInterface[] retrieve the universe of Modules */ public function getList() { return $this->getModulesOnDisk(); /*return array_merge( $this->getAddonsCatalogModules(), $this->getModulesOnDisk() );*/ }
Well, that’s it!
Just visit the backend of your shop and navigate to the modules selection list!