<?xml version="1.0"?>
<rss version="2.0"><channel><title>Core developers Latest Topics</title><link>https://forum.prestashop.com/forum/116-core-developers/</link><description>Core developers Latest Topics</description><language>en</language><item><title>Webservice API: Adding "Feature_value" results in error code 84</title><link>https://forum.prestashop.com/topic/1106556-webservice-api-adding-feature_value-results-in-error-code-84/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	I have added succesfully Features with the Webservice API. I can see them all correct in the backend, with all languages.
</p>

<p>
	My next step is to add a value to a feature, e.g. with the ID 6844. The result of "/api/product_features/6844" is:
</p>

<pre class="ipsCode prettyprint lang-xml prettyprinted"><span class="pun">&lt;?</span><span class="pln">xml version</span><span class="pun">=</span><span class="str">"1.0"</span><span class="pln"> encoding</span><span class="pun">=</span><span class="str">"UTF-8"</span><span class="pun">?&gt;</span><span class="pln">
</span><span class="tag">&lt;prestashop</span><span class="pln"> </span><span class="atn">xmlns:xlink</span><span class="pun">=</span><span class="atv">"http://www.w3.org/1999/xlink"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;product_feature&gt;</span><span class="pln">
	</span><span class="tag">&lt;id&gt;</span><span class="pln">&lt;![CDATA[6844]]&gt;</span><span class="tag">&lt;/id&gt;</span><span class="pln">
	</span><span class="tag">&lt;position&gt;</span><span class="pln">&lt;![CDATA[5]]&gt;</span><span class="tag">&lt;/position&gt;</span><span class="pln">
	</span><span class="tag">&lt;name&gt;&lt;language</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"1"</span><span class="pln"> </span><span class="atn">xlink:href</span><span class="pun">=</span><span class="atv">"http://prestatest.songbook.info/api/languages/1"</span><span class="tag">&gt;</span><span class="pln">&lt;![CDATA[Anzahl der Effekt-Modi]]&gt;</span><span class="tag">&lt;/language&gt;&lt;language</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"2"</span><span class="pln"> </span><span class="atn">xlink:href</span><span class="pun">=</span><span class="atv">"http://prestatest.songbook.info/api/languages/2"</span><span class="tag">&gt;</span><span class="pln">&lt;![CDATA[No. of Effect Modes]]&gt;</span><span class="tag">&lt;/language&gt;&lt;language</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"3"</span><span class="pln"> </span><span class="atn">xlink:href</span><span class="pun">=</span><span class="atv">"http://prestatest.songbook.info/api/languages/3"</span><span class="tag">&gt;</span><span class="pln">&lt;![CDATA[No. of Effect Modes]]&gt;</span><span class="tag">&lt;/language&gt;&lt;/name&gt;</span><span class="pln">
</span><span class="tag">&lt;/product_feature&gt;</span><span class="pln">
</span><span class="tag">&lt;/prestashop&gt;</span></pre>

<p>
	Now I am sending with a POST the following XML (that was received by GET as a blank XML - I have deleted the &lt;id&gt; field):
</p>

<pre class="ipsCode prettyprint lang-xml prettyprinted"><span class="pun">&lt;?</span><span class="pln">xml version</span><span class="pun">=</span><span class="str">"1.0"</span><span class="pln"> encoding</span><span class="pun">=</span><span class="str">"UTF-8"</span><span class="pun">?&gt;</span><span class="pln">
</span><span class="tag">&lt;prestashop</span><span class="pln"> </span><span class="atn">xmlns:xlink</span><span class="pun">=</span><span class="atv">"http://www.w3.org/1999/xlink"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;product_feature_value&gt;</span><span class="pln">
	
	</span><span class="tag">&lt;id_feature&gt;</span><span class="pln">&lt;![CDATA[6844]]&gt;</span><span class="tag">&lt;/id_feature&gt;</span><span class="pln">
	</span><span class="tag">&lt;custom&gt;</span><span class="pln">&lt;![CDATA[0]]&gt;</span><span class="tag">&lt;/custom&gt;</span><span class="pln">
	</span><span class="tag">&lt;position&gt;</span><span class="pln">&lt;![CDATA[1]]&gt;</span><span class="tag">&lt;/position&gt;</span><span class="pln">
	</span><span class="tag">&lt;value&gt;&lt;language</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"1"</span><span class="tag">&gt;</span><span class="pln">&lt;![CDATA[TEST]]&gt;</span><span class="tag">&lt;/language&gt;&lt;language</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"2"</span><span class="tag">&gt;</span><span class="pln">&lt;![CDATA[TEST]]&gt;</span><span class="tag">&lt;/language&gt;&lt;language</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"3"</span><span class="tag">&gt;</span><span class="pln">&lt;![CDATA[TEST]]&gt;</span><span class="tag">&lt;/language&gt;&lt;/value&gt;</span><span class="pln">
</span><span class="tag">&lt;/product_feature_value&gt;</span><span class="pln">
</span><span class="tag">&lt;/prestashop&gt;</span></pre>

<p>
	And now the problem. Prestashop returns this error message:
</p>

<pre class="ipsCode">Code: 84
Message: Validation error: "Kein Eintrag in Feature-&gt;name"</pre>

<p>
	I am using German as the main language. The English translationis: No entry in Feature-&gt;name".
</p>

<p>
	Can anyone help me to understand ad fix this problem? The field "name" is obviously filled for all languages in the feature ("/api/product_features/6844").
</p>

<p>
	I have this error in 9.0.1 and 9.1.
</p>

<p>
	Thank you very much,
</p>

<p>
	Best regards,
</p>

<p>
	Holger
</p>
]]></description><guid isPermaLink="false">1106556</guid><pubDate>Wed, 01 Apr 2026 21:02:47 +0000</pubDate></item><item><title>I made a PrestaShop 9 store fully autonomous using Claude AI, MCP, and Cowork. Here's the architecture</title><link>https://forum.prestashop.com/topic/1106442-i-made-a-prestashop-9-store-fully-autonomous-using-claude-ai-mcp-and-cowork-heres-the-architecture/</link><description><![CDATA[<p>
	I wanted to share an experiment I've been running on a live PrestaShop 9 store. The goal was simple: how far can you push AI to handle the actual daily operations of an e-commerce store? Not just content generation, but real store management.
</p>

<p>
	The short answer: pretty far.
</p>

<p>
	What the system does
</p>

<p>
	Three AI agents run on a daily schedule:
</p>

<p>
	→ 7:00 | Product research agent: analyzes the market, identifies products worth adding → 10:00 | Product listing agent: creates full product listings in French (titles, descriptions, SEO, images, pricing) → 14:00 | Order management agent: processes orders, updates statuses, handles routine operations
</p>

<p>
	These agents don't just generate text. They interact directly with the store through APIs and database operations.
</p>

<p>
	The technical stack
</p>

<p>
	→ PrestaShop 9.0.2 on O2switch shared hosting → Custom MCP server (Python) with 26 tools across 6 categories → Intelligent routing between three access layers: • Admin API (OAuth2) for modern endpoints • Legacy Webservice API for operations the Admin API doesn't cover yet • Direct MySQL via SSH tunnel for bulk operations and complex queries → Claude Code for development work → Claude Cowork for the daily autonomous agents → Git based deployment (GitHub repo → server sync) → DuckDNS for dynamic IP resolution on the SSH tunnel → Windows Task Scheduler for automation
</p>

<p>
	What I learned about PrestaShop 9's Admin API
</p>

<p>
	This is probably the most useful part for the community. The Admin API built on API Platform is a great foundation, but on 9.0.2 there are real limitations:
</p>

<p>
	→ All list endpoints return 500 errors due to a type mismatch between the database (strings) and Symfony 6's strict typing (expects integers). Single resource GETs work fine. → Many resource types still don't have endpoints. I had to build the missing ones myself using CQRS patterns. → The OAuth2 flow works well once configured properly. → For anything the Admin API can't handle yet, the legacy Webservice API is still reliable.
</p>

<p>
	I've been tracking endpoint status here: <a href="https://github.com/PrestaShop/PrestaShop/issues/39630" rel="external nofollow">https://github.com/PrestaShop/PrestaShop/issues/39630</a>
</p>

<p>
	The MCP server
</p>

<p>
	MCP (Model Context Protocol) is what connects the AI to the store. Think of it as a bridge that exposes store operations as tools the AI can call. My server has 26 tools covering:
</p>

<p>
	→ Product management (create, update, search, image upload) → Category operations → Order processing → Customer data → SEO operations → Store configuration
</p>

<p>
	The key design decision was building an intelligent router that picks the right API (Admin, Webservice, or direct MySQL) depending on the operation. The AI doesn't need to know which API to use; the server handles that.
</p>

<p>
	What actually works well
</p>

<p>
	→ Product listing quality is surprisingly good when you give the agent proper context about the store's tone, target market, and SEO requirements → Order management is the most reliable use case. It's structured, predictable, and rule based → The three API routing makes the system resilient; if one path fails, there's usually a fallback
</p>

<p>
	What's still rough
</p>

<p>
	→ Image handling required a custom server side upload solution since the APIs don't handle this cleanly → The Admin API gaps mean the system is more complex than it needs to be (this will improve as PS9 matures) → Shared hosting adds constraints. SSH tunnel can drop, cron jobs have limits
</p>

<p>
	Why I'm sharing this
</p>

<p>
	PrestaShop's own team used Claude Code during their March 12 hackathon to build 14 API endpoints in one day. The official MCP server module has been available since November 2025. The ecosystem is clearly moving in this direction.
</p>

<p>
	I wrote a full case study covering the non technical side of this (the "why" and the business logic) on LinkedIn if anyone is interested in that angle: <a href="https://www.linkedin.com/pulse/era-autonomous-e-commerce-how-i-turned-claude-full-store-bourechka-2ln6e" rel="external nofollow">LinkedIn Article </a>
</p>

<p>
	Happy to answer questions about the architecture, the Admin API issues, or how the MCP server is structured. If there's interest, I can also share more details about specific parts of the setup.
</p>

<p><a href="//media.invisioncic.com/t336404/monthly_2026_03/Capturedcran2026-03-25122516.png.532766de3c72ec14a195796875251847.png" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="342355" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2026_03/Capturedcran2026-03-25122516.thumb.png.6ddf22f6a0f1a3a7975767b1697484c2.png" data-ratio="63.8" width="1000" class="ipsImage ipsImage_thumbnailed" alt="Capture d&#039;écran 2026-03-25 122516.png"></a></p>]]></description><guid isPermaLink="false">1106442</guid><pubDate>Sat, 28 Mar 2026 20:17:04 +0000</pubDate></item><item><title>Google Ads conversion tracking</title><link>https://forum.prestashop.com/topic/1106520-google-ads-conversion-tracking/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	I am looking for the exact process to set up Google Ads conversion tracking on PrestaShop 8.2. On my end, I have inserted the two respective scripts into head.tpl and order-confirmation.tpl, but without success. Maybe I’m missing something? I have the impression that it’s just a small detail.
</p>

<p>
	Thank you in advance.
</p>
]]></description><guid isPermaLink="false">1106520</guid><pubDate>Tue, 31 Mar 2026 13:08:53 +0000</pubDate></item><item><title>Best way to upgrade to v8 from 1.7.5.0 (PHP 5.6)?</title><link>https://forum.prestashop.com/topic/1106376-best-way-to-upgrade-to-v8-from-1750-php-56/</link><description><![CDATA[<p>
	Hi!
</p>

<p>
	I already tried twice to upgrade to either a PHP 7.4 compatible version or v8.
</p>

<p>
	Both time a complete nightmare. The 1-click-auto-updater didn't work, I had to<br />
	find a compatible version on github. After the update I spent an hour to fix<br />
	about 20 PHP errors in debug mode. The result was the BO only ran in debug mode.<br />
	The front page layout was corrupted. Some modules failed completely.<br />
	<br />
	But now I have to try again and succeed, because the Mollie payment module<br />
	doesn't work correctly in 1.7.5.0 (although their documentation says it works fine). 
</p>

<p>
	I have PHP Versions: 5.6, 7.4, 8.1, 8.2, 8.3, 8.4, 8.5 available.
</p>

<p>
	Any ideas?
</p>

<p>
	ciao..
</p>
]]></description><guid isPermaLink="false">1106376</guid><pubDate>Thu, 26 Mar 2026 17:32:56 +0000</pubDate></item><item><title>Adding product suppliers</title><link>https://forum.prestashop.com/topic/1106240-adding-product-suppliers/</link><description><![CDATA[<p>
	Hi, ive been trying to figure out a way on how to add product suppliers, for some background, I have a script that adds products from a csv into prestashop but i require adding a supplier with a reference number in the product -&gt; options -&gt; suppliers.<br />
	<br />
	I have not figure out how to do this. The XML of the porduct is unchanged after adding these suppliers and numbers. I realised that in my db i have a table product supplier. I could add it into there but I want to automate this as much as possible. Is there a simple way to do this? <br />
	<br />
	Thanks in advance <span>:)</span>
</p>
]]></description><guid isPermaLink="false">1106240</guid><pubDate>Fri, 20 Mar 2026 23:15:14 +0000</pubDate></item><item><title>How insert product into a CMS page</title><link>https://forum.prestashop.com/topic/296217-how-insert-product-into-a-cms-page/</link><description><![CDATA[
<p><span><span>I want insert <span>product</span>s inside <span>cms</span> content (into paragraph) same of this picture (photoshop) :</span></span></p>
<p> </p>
<p><span><span><span><a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_12_2013/post-591139-0-21955200-1387206548.jpg" data-fileid="87243" rel=""><img src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-fileid="87243" class="ipsImage ipsImage_thumbnailed" alt="post-591139-0-21955200-1387206548_thumb.jpg" data-src="//media.invisioncic.com/t336404/monthly_12_2013/post-591139-0-21955200-1387206548_thumb.jpg" width="100" data-ratio="87"></a><br><br> - I want have same display of product-list.tpl<br> - I just would like add the desired product in a CMS page by adding a line of code with the product ID.</span></span></span><br><br><span>Can you say me what I need to do for have this modification please  <img src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" alt=":)" data-emoticon="" srcset="https://media.invisioncic.com/t336404/emoticons/smile@2x.png 2x" width="20" height="20" data-src="//media.invisioncic.com/t336404/emoticons/default_smile.png"></span></p>
]]></description><guid isPermaLink="false">296217</guid><pubDate>Mon, 16 Dec 2013 15:14:30 +0000</pubDate></item><item><title>Uploader fichiers mp3 dans le Filemanager</title><link>https://forum.prestashop.com/topic/467071-uploader-fichiers-mp3-dans-le-filemanager/</link><description><![CDATA[
<p>Bonjour,</p>
<p> </p>
<p>Comment uploader un fichier mp3 sur le serveur quand on est sur une page produit côté l'administration ?</p>
<p> </p>
<p>Lorsque j'essaie via le filemanager (bouton "Insérer une image" de l'éditeur de texte), j'obtiens un message d'erreur 'file extension is not allowed".</p>
<p>Comment modifier la liste des extensions autorisées ? J'ai essayé à plusieurs endroits mais n'ai pas obtenu de résultats.</p>
<p> </p>
<p>Mon objectif est d'insérer dans une fiche produit un lecteur audio, pour cela j'ai créé un champ texte simple qui contiendra uniquement le nom du fichier mp3. Dans le fichier product.tpl, j'ajoute la balise &lt;audio&gt; et le chemin du dossier où sont rangés mes ficheirs audio et j'appelle le contenu du champ pour créer un lecteur mp3.</p>
<p>Mon seul problème est que je ne peux pas uploader de fichiers mp3 via l'administration.</p>
<p> </p>
<p>Merci d'avance pour votre aide</p>
<p> </p>
]]></description><guid isPermaLink="false">467071</guid><pubDate>Thu, 03 Sep 2015 17:41:21 +0000</pubDate></item><item><title>Wrong total price displayed, when operating with multiple currencies</title><link>https://forum.prestashop.com/topic/1102676-wrong-total-price-displayed-when-operating-with-multiple-currencies/</link><description><![CDATA[<p>
	Hey!
</p>

<p>
	Been using PS for more than a year and ONE of my customers encountered a weird bug (this has never happened before, nor I was able to reproduce it when choosing the exact options he chose)..
</p>

<p>
	<br />
	My default shop currency is PLN, he paid in USD.<br />
	Looks like some module did not convert currencies properly, he paid the right amount after all, but was pretty scared, when the shop displayed total amount that was 4x bigger - price in PLN, not converted to USD, but with $ sign.<br />
	He paid with PayPal (official module from paypal).
</p>

<p>
	<strong>This is what I see in order details from backoffice:</strong>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="339198" href="//media.invisioncic.com/t336404/monthly_2025_10/obraz.png.fe568dd5eb294fb752bfdd3974fce017.png" rel=""><img alt="obraz.thumb.png.2d718d981b359c2dfe08b2c0fe1c17dc.png" class="ipsImage ipsImage_thumbnailed" data-fileid="339198" data-ratio="33.30" style="height:auto;" width="1000" data-src="//media.invisioncic.com/t336404/monthly_2025_10/obraz.thumb.png.2d718d981b359c2dfe08b2c0fe1c17dc.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	 
</p>

<p>
	<strong>This is what customer saw in order confirmation page:</strong>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="339201" href="//media.invisioncic.com/t336404/monthly_2025_10/obraz.png.9a3a4545c727fbad203ec5fffb23120c.png" rel=""><img alt="obraz.thumb.png.4fe26ece4d128386ce7e04308d60abe4.png" class="ipsImage ipsImage_thumbnailed" data-fileid="339201" data-ratio="75.08" style="height:auto;" width="999" data-src="//media.invisioncic.com/t336404/monthly_2025_10/obraz.thumb.png.4fe26ece4d128386ce7e04308d60abe4.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	 
</p>

<p>
	<strong>Customer bought this item:</strong><br /><a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="339203" href="//media.invisioncic.com/t336404/monthly_2025_10/obraz.png.b0e32b46bbb2279b416fc0295d3afc68.png" rel=""><img alt="obraz.thumb.png.88d9017932be6fbe5ce93a9a6c67a60e.png" class="ipsImage ipsImage_thumbnailed" data-fileid="339203" data-ratio="17.90" style="height:auto;" width="1000" data-src="//media.invisioncic.com/t336404/monthly_2025_10/obraz.thumb.png.88d9017932be6fbe5ce93a9a6c67a60e.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	 
</p>

<p>
	<strong>This is how prices are configured for the item:</strong>
</p>

<p>
	<img alt="obraz.png.a99c1e1cb4b0a2dcbd49c041ff639644.png" class="ipsImage ipsImage_thumbnailed" data-fileid="339204" data-ratio="79.19" style="height:auto;" width="668" data-src="//media.invisioncic.com/t336404/monthly_2025_10/obraz.png.a99c1e1cb4b0a2dcbd49c041ff639644.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></p>

<p>
	Also it was the last one in stock, could this be the reason? (again, I reproduced it and got normal price displayed in the end)
</p>

<p>
	Overall the right amount in USD was paid, nothing more, nothing less, so that's good. Nevertheless I don't want to scare any of my dear customers if that happens again..
</p>

<p>
	I'm on PS 8.2.0.<br /><strong>Can someone please point me where to look for (which module / script can be responsible)?<br />
	Or at least where I should put some scripts that could log what is happening with the price?</strong>
</p>
]]></description><guid isPermaLink="false">1102676</guid><pubDate>Tue, 14 Oct 2025 13:37:05 +0000</pubDate></item><item><title>How to show specific delivery time in the category</title><link>https://forum.prestashop.com/topic/1105588-how-to-show-specific-delivery-time-in-the-category/</link><description><![CDATA[<p>
	Hi,
</p>

<p>
	for some products we have a longer delivery time set, it is entered as a specific delivery time. This information is displayed on the product detail page, but not in the category. Is there any way to solve this?
</p>

<p>
	Thank you.
</p>
]]></description><guid isPermaLink="false">1105588</guid><pubDate>Wed, 18 Feb 2026 08:13:57 +0000</pubDate></item><item><title><![CDATA[[Discussion] Auto-Translation Module for PrestaShop (Modules + Themes) – Architecture & Core Compatibility]]></title><link>https://forum.prestashop.com/topic/1105439-discussion-auto-translation-module-for-prestashop-modules-themes-%E2%80%93-architecture-core-compatibility/</link><description><![CDATA[<p>
	Hi PrestaShop Core &amp; Module Developers <span class="ipsEmoji">?</span>
</p>

<p>
	I’m currently brainstorming a new module idea and would love to get feedback from the community before starting development.
</p>

<p>
	<span class="ipsEmoji">?</span> Goal
</p>

<p>
	Create an Auto-Translation System Module that:
</p>

<p>
	Detects missing translations in modules and themes
</p>

<p>
	Automatically translates untranslated keys
</p>

<p>
	Optionally improves existing low-quality translations
</p>

<p>
	Works without breaking PrestaShop’s native translation system
</p>

<p>
	<span class="ipsEmoji">?</span> Concept Overview
</p>

<p>
	The idea is NOT to replace PrestaShop’s translation mechanism,<br />
	but to extend it intelligently.
</p>

<p>
	The module would:
</p>

<p>
	Scan translation domains (modules, themes, core)
</p>

<p>
	Detect missing or empty translation entries
</p>

<p>
	Send only missing strings to an external translation service (API-based)
</p>

<p>
	Store translations using native PrestaShop translation storage (DB or XLF depending on version)
</p>

<p>
	This approach keeps default behavior intact and fully compatible with core updates.
</p>

<p>
	<span class="ipsEmoji">?️</span> Architecture Thoughts
</p>

<p>
	Possible architecture:
</p>

<p>
	Scanner Service – Detect missing translation keys
</p>

<p>
	Domain Resolver – Identify the correct translation domain
</p>

<p>
	External Translation Adapter – Abstract layer for translation providers (API-based)
</p>

<p>
	Translation Persister – Uses native PrestaShop translation writing logic
</p>

<p>
	Admin UI – Controls:
</p>

<p>
	Auto mode (background cron)
</p>

<p>
	Manual scan mode
</p>

<p>
	Module/theme whitelist &amp; blacklist
</p>

<p>
	<span class="ipsEmoji">⚙️</span> Key Technical Questions
</p>

<p>
	What is the safest way to write translations in PS 8/9 without bypassing the Symfony Translator?
</p>

<p>
	Should translations be written directly into XLF files or via database layers?
</p>

<p>
	Is there a recommended hook or process to trigger translation refresh safely?
</p>

<p>
	Has anyone already built something similar or partially addressed this?
</p>

<p>
	<span class="ipsEmoji">?</span> Extra Ideas
</p>

<p>
	Translation quality score (flag machine-generated translations)
</p>

<p>
	Fallback language detection
</p>

<p>
	CLI support for developers
</p>

<p>
	Translation diff viewer (before / after comparison)
</p>

<p>
	<span class="ipsEmoji">?</span> Why This Could Be Useful
</p>

<p>
	Many shops install multiple modules and themes that are only partially translated.<br />
	Manually translating everything is time-consuming and error-prone.
</p>

<p>
	An intelligent assistant that respects PrestaShop’s architecture<br />
	could significantly improve multilingual shop adoption.
</p>

<p>
	<span class="ipsEmoji">?</span> Feedback Welcome
</p>

<p>
	I would really appreciate feedback from core contributors or developers who have worked deeply with the translation system.
</p>

<p>
	Is this technically viable in a clean way?
</p>

<p>
	Would you approach the architecture differently?
</p>

<p>
	Thanks in advance!
</p>
]]></description><guid isPermaLink="false">1105439</guid><pubDate>Wed, 11 Feb 2026 11:45:18 +0000</pubDate></item><item><title>Attach credit slip as PDF to customer's email 1.7.8</title><link>https://forum.prestashop.com/topic/1066073-attach-credit-slip-as-pdf-to-customers-email-178/</link><description><![CDATA[<p>
	Hi everyone! 
</p>

<p>
	I use PS 1.7.8 and figured out that there is no option to attach credit slip as PDF to customer's email. I believe that it is necessary to make changes to the AdminOrdersController.php on line 759 and 1022, as it was mentioned here:
</p>
<iframe allowfullscreen="" data-embedauthorid="1316833" data-embedcontent="" data-embedid="embed3031541844" scrolling="no" style="height:214px;max-width:502px;" data-embed-src="https://forum.prestashop.com/topic/960365-solved-attach-credit-slip-as-pdf-to-mail-sent-to-customer/?do=embed"></iframe>

<p>
	Can anyone suggest how this can be implemented?<br />
	Thanks in advance. Here is the code:
</p>

<p>
	Line 759:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pln">                        </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(!</span><span class="typ">OrderSlip</span><span class="pun">::</span><span class="pln">create</span><span class="pun">(</span><span class="pln">
                            $order</span><span class="pun">,</span><span class="pln">
                            $order_detail_list</span><span class="pun">,</span><span class="pln">
                            $shipping_cost_amount</span><span class="pun">,</span><span class="pln">
                            $voucher</span><span class="pun">,</span><span class="pln">
                            $choosen</span><span class="pun">,</span><span class="pln">
                            </span><span class="pun">(</span><span class="typ">Tools</span><span class="pun">::</span><span class="pln">getValue</span><span class="pun">(</span><span class="str">'TaxMethod'</span><span class="pun">)</span><span class="pln"> </span><span class="pun">?</span><span class="pln"> </span><span class="kwd">false</span><span class="pln"> </span><span class="pun">:</span><span class="pln"> </span><span class="kwd">true</span><span class="pun">)</span><span class="pln">
                        </span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                            $this</span><span class="pun">-&gt;</span><span class="pln">errors</span><span class="pun">[]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $this</span><span class="pun">-&gt;</span><span class="pln">trans</span><span class="pun">(</span><span class="str">'You cannot generate a partial credit slip.'</span><span class="pun">,</span><span class="pln"> array</span><span class="pun">(),</span><span class="pln"> </span><span class="str">'Admin.Orderscustomers.Notification'</span><span class="pun">);</span><span class="pln">
                        </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">else</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                            </span><span class="typ">Hook</span><span class="pun">::</span><span class="kwd">exec</span><span class="pun">(</span><span class="str">'actionOrderSlipAdd'</span><span class="pun">,</span><span class="pln"> array</span><span class="pun">(</span><span class="str">'order'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $order</span><span class="pun">,</span><span class="pln"> </span><span class="str">'productList'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $order_detail_list</span><span class="pun">,</span><span class="pln"> </span><span class="str">'qtyList'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $full_quantity_list</span><span class="pun">),</span><span class="pln"> </span><span class="kwd">null</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">true</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">,</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">id_shop</span><span class="pun">);</span><span class="pln">
                            $customer </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">Customer</span><span class="pun">((</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$order</span><span class="pun">-&gt;</span><span class="pln">id_customer</span><span class="pun">));</span><span class="pln">
                            $params</span><span class="pun">[</span><span class="str">'{lastname}'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $customer</span><span class="pun">-&gt;</span><span class="pln">lastname</span><span class="pun">;</span><span class="pln">
                            $params</span><span class="pun">[</span><span class="str">'{firstname}'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $customer</span><span class="pun">-&gt;</span><span class="pln">firstname</span><span class="pun">;</span><span class="pln">
                            $params</span><span class="pun">[</span><span class="str">'{id_order}'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">id</span><span class="pun">;</span><span class="pln">
                            $params</span><span class="pun">[</span><span class="str">'{order_name}'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">getUniqReference</span><span class="pun">();</span><span class="pln">
                            $orderLanguage </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">Language</span><span class="pun">((</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">id_lang</span><span class="pun">);</span><span class="pln">
                            </span><span class="lit">@Mail</span><span class="pun">::</span><span class="typ">Send</span><span class="pun">(</span><span class="pln">
                                </span><span class="pun">(</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">id_lang</span><span class="pun">,</span><span class="pln">
                                </span><span class="str">'credit_slip'</span><span class="pun">,</span><span class="pln">
                                $this</span><span class="pun">-&gt;</span><span class="pln">trans</span><span class="pun">(</span><span class="pln">
                                    </span><span class="str">'New credit slip regarding your order'</span><span class="pun">,</span><span class="pln">
                                    array</span><span class="pun">(),</span><span class="pln">
                                    </span><span class="str">'Emails.Subject'</span><span class="pun">,</span><span class="pln">
                                    $orderLanguage</span><span class="pun">-&gt;</span><span class="pln">locale
                                </span><span class="pun">),</span><span class="pln">
                                $params</span><span class="pun">,</span><span class="pln">
                                $customer</span><span class="pun">-&gt;</span><span class="pln">email</span><span class="pun">,</span><span class="pln">
                                $customer</span><span class="pun">-&gt;</span><span class="pln">firstname </span><span class="pun">.</span><span class="pln"> </span><span class="str">' '</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $customer</span><span class="pun">-&gt;</span><span class="pln">lastname</span><span class="pun">,</span><span class="pln">
                                </span><span class="kwd">null</span><span class="pun">,</span><span class="pln">
                                </span><span class="kwd">null</span><span class="pun">,</span><span class="pln">
                                </span><span class="kwd">null</span><span class="pun">,</span><span class="pln">
                                </span><span class="kwd">null</span><span class="pun">,</span><span class="pln">
                                _PS_MAIL_DIR_</span><span class="pun">,</span><span class="pln">
                                </span><span class="kwd">true</span><span class="pun">,</span><span class="pln">
                                </span><span class="pun">(</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">id_shop
                            </span><span class="pun">);</span><span class="pln">
                        </span><span class="pun">}</span></pre>

<p>
	 
</p>

<p>
	Line 1023:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pln">                        </span><span class="com">// Generate credit slip</span><span class="pln">
                        </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="typ">Tools</span><span class="pun">::</span><span class="pln">isSubmit</span><span class="pun">(</span><span class="str">'generateCreditSlip'</span><span class="pun">)</span><span class="pln"> </span><span class="pun">&amp;&amp;</span><span class="pln"> </span><span class="pun">!</span><span class="pln">count</span><span class="pun">(</span><span class="pln">$this</span><span class="pun">-&gt;</span><span class="pln">errors</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                            $product_list </span><span class="pun">=</span><span class="pln"> array</span><span class="pun">();</span><span class="pln">
                            $amount </span><span class="pun">=</span><span class="pln"> $order_detail</span><span class="pun">-&gt;</span><span class="pln">unit_price_tax_incl </span><span class="pun">*</span><span class="pln"> $full_quantity_list</span><span class="pun">[</span><span class="pln">$id_order_detail</span><span class="pun">];</span><span class="pln">

                            $choosen </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">;</span><span class="pln">
                            </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">((</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> </span><span class="typ">Tools</span><span class="pun">::</span><span class="pln">getValue</span><span class="pun">(</span><span class="str">'refund_total_voucher_off'</span><span class="pun">)</span><span class="pln"> </span><span class="pun">==</span><span class="pln"> </span><span class="lit">1</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                                $amount </span><span class="pun">-=</span><span class="pln"> $voucher </span><span class="pun">=</span><span class="pln"> </span><span class="pun">(</span><span class="kwd">float</span><span class="pun">)</span><span class="pln"> </span><span class="typ">Tools</span><span class="pun">::</span><span class="pln">getValue</span><span class="pun">(</span><span class="str">'order_discount_price'</span><span class="pun">);</span><span class="pln">
                            </span><span class="pun">}</span><span class="pln"> elseif </span><span class="pun">((</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> </span><span class="typ">Tools</span><span class="pun">::</span><span class="pln">getValue</span><span class="pun">(</span><span class="str">'refund_total_voucher_off'</span><span class="pun">)</span><span class="pln"> </span><span class="pun">==</span><span class="pln"> </span><span class="lit">2</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                                $choosen </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">true</span><span class="pun">;</span><span class="pln">
                                $amount </span><span class="pun">=</span><span class="pln"> $voucher </span><span class="pun">=</span><span class="pln"> </span><span class="pun">(</span><span class="kwd">float</span><span class="pun">)</span><span class="pln"> </span><span class="typ">Tools</span><span class="pun">::</span><span class="pln">getValue</span><span class="pun">(</span><span class="str">'refund_total_voucher_choose'</span><span class="pun">);</span><span class="pln">
                            </span><span class="pun">}</span><span class="pln">
                            </span><span class="kwd">foreach</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$full_product_list </span><span class="kwd">as</span><span class="pln"> $id_order_detail</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                                $order_detail </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">OrderDetail</span><span class="pun">((</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> $id_order_detail</span><span class="pun">);</span><span class="pln">
                                $product_list</span><span class="pun">[</span><span class="pln">$id_order_detail</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> array</span><span class="pun">(</span><span class="pln">
                                    </span><span class="str">'id_order_detail'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $id_order_detail</span><span class="pun">,</span><span class="pln">
                                    </span><span class="str">'quantity'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $full_quantity_list</span><span class="pun">[</span><span class="pln">$id_order_detail</span><span class="pun">],</span><span class="pln">
                                    </span><span class="str">'unit_price'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $order_detail</span><span class="pun">-&gt;</span><span class="pln">unit_price_tax_excl</span><span class="pun">,</span><span class="pln">
                                    </span><span class="str">'amount'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> isset</span><span class="pun">(</span><span class="pln">$amount</span><span class="pun">)</span><span class="pln"> </span><span class="pun">?</span><span class="pln"> $amount </span><span class="pun">:</span><span class="pln"> $order_detail</span><span class="pun">-&gt;</span><span class="pln">unit_price_tax_incl </span><span class="pun">*</span><span class="pln"> $full_quantity_list</span><span class="pun">[</span><span class="pln">$id_order_detail</span><span class="pun">],</span><span class="pln">
                                </span><span class="pun">);</span><span class="pln">
                            </span><span class="pun">}</span><span class="pln">

                            $shipping </span><span class="pun">=</span><span class="pln"> </span><span class="typ">Tools</span><span class="pun">::</span><span class="pln">isSubmit</span><span class="pun">(</span><span class="str">'shippingBack'</span><span class="pun">)</span><span class="pln"> </span><span class="pun">?</span><span class="pln"> </span><span class="kwd">null</span><span class="pln"> </span><span class="pun">:</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">;</span><span class="pln">

                            </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(!</span><span class="typ">OrderSlip</span><span class="pun">::</span><span class="pln">create</span><span class="pun">(</span><span class="pln">$order</span><span class="pun">,</span><span class="pln"> $product_list</span><span class="pun">,</span><span class="pln"> $shipping</span><span class="pun">,</span><span class="pln"> $voucher</span><span class="pun">,</span><span class="pln"> $choosen</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                                $this</span><span class="pun">-&gt;</span><span class="pln">errors</span><span class="pun">[]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $this</span><span class="pun">-&gt;</span><span class="pln">trans</span><span class="pun">(</span><span class="str">'A credit slip cannot be generated.'</span><span class="pun">,</span><span class="pln"> array</span><span class="pun">(),</span><span class="pln"> </span><span class="str">'Admin.Orderscustomers.Notification'</span><span class="pun">);</span><span class="pln">
                            </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">else</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                                </span><span class="typ">Hook</span><span class="pun">::</span><span class="kwd">exec</span><span class="pun">(</span><span class="str">'actionOrderSlipAdd'</span><span class="pun">,</span><span class="pln"> array</span><span class="pun">(</span><span class="str">'order'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $order</span><span class="pun">,</span><span class="pln"> </span><span class="str">'productList'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $full_product_list</span><span class="pun">,</span><span class="pln"> </span><span class="str">'qtyList'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $full_quantity_list</span><span class="pun">),</span><span class="pln"> </span><span class="kwd">null</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">true</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">,</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">id_shop</span><span class="pun">);</span><span class="pln">
                                $orderLanguage </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">Language</span><span class="pun">((</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">id_lang</span><span class="pun">);</span><span class="pln">
                                </span><span class="lit">@Mail</span><span class="pun">::</span><span class="typ">Send</span><span class="pun">(</span><span class="pln">
                                    </span><span class="pun">(</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">id_lang</span><span class="pun">,</span><span class="pln">
                                    </span><span class="str">'credit_slip'</span><span class="pun">,</span><span class="pln">
                                    $this</span><span class="pun">-&gt;</span><span class="pln">trans</span><span class="pun">(</span><span class="pln">
                                        </span><span class="str">'New credit slip regarding your order'</span><span class="pun">,</span><span class="pln">
                                        array</span><span class="pun">(),</span><span class="pln">
                                        </span><span class="str">'Emails.Subject'</span><span class="pun">,</span><span class="pln">
                                        $orderLanguage</span><span class="pun">-&gt;</span><span class="pln">locale
                                    </span><span class="pun">),</span><span class="pln">
                                    $params</span><span class="pun">,</span><span class="pln">
                                    $customer</span><span class="pun">-&gt;</span><span class="pln">email</span><span class="pun">,</span><span class="pln">
                                    $customer</span><span class="pun">-&gt;</span><span class="pln">firstname </span><span class="pun">.</span><span class="pln"> </span><span class="str">' '</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $customer</span><span class="pun">-&gt;</span><span class="pln">lastname</span><span class="pun">,</span><span class="pln">
                                    </span><span class="kwd">null</span><span class="pun">,</span><span class="pln">
                                    </span><span class="kwd">null</span><span class="pun">,</span><span class="pln">
                                    </span><span class="kwd">null</span><span class="pun">,</span><span class="pln">
                                    </span><span class="kwd">null</span><span class="pun">,</span><span class="pln">
                                    _PS_MAIL_DIR_</span><span class="pun">,</span><span class="pln">
                                    </span><span class="kwd">true</span><span class="pun">,</span><span class="pln">
                                    </span><span class="pun">(</span><span class="kwd">int</span><span class="pun">)</span><span class="pln"> $order</span><span class="pun">-&gt;</span><span class="pln">id_shop
                                </span><span class="pun">);</span><span class="pln">
                            </span><span class="pun">}</span><span class="pln">
                        </span><span class="pun">}</span></pre>
]]></description><guid isPermaLink="false">1066073</guid><pubDate>Wed, 13 Jul 2022 16:10:45 +0000</pubDate></item><item><title>How I solved "Failed to start the session" in PS 8.2</title><link>https://forum.prestashop.com/topic/1095348-how-i-solved-failed-to-start-the-session-in-ps-82/</link><description><![CDATA[<p>
	Suddenly I had in my PS 8.2 a "Failed to start the session" error that blocked me from entering my backoffice. I tried emptying the cache and deleting the browser cookies but without effect.
</p>

<p>
	What finally helped was forcing Prestashop to create a new session key.
</p>

<p>
	The error happened on line 193 of /vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/Session/Storage/NativeSessionStorage.php
</p>

<p>
	This was the relevant code:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">        if ($sessionId &amp;&amp; $this-&gt;saveHandler instanceof AbstractProxy &amp;&amp; 'files' === $this-&gt;saveHandler-&gt;getSaveHandlerName() &amp;&amp; !preg_match('/^[a-zA-Z0-9,-]{22,250}$/', $sessionId)) {
            // the session ID in the header is invalid, create a new one
            session_id(session_create_id());
        }
        // ok to try and start the session
        if (!session_start()) {
            throw new \RuntimeException('Failed to start the session.');
        }</span></pre>

<p>
	What helped was changing it to:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">        if ($sessionId &amp;&amp; $this-&gt;saveHandler instanceof AbstractProxy &amp;&amp; 'files' === $this-&gt;saveHandler-&gt;getSaveHandlerName() &amp;&amp; !preg_match('/^[a-zA-Z0-9,-]{22,250}$/', $sessionId)) {
            // the session ID in the header is invalid, create a new one
            session_id(session_create_id());
        }
       session_id(session_create_id());   /* ADDED CODE */
        // ok to try and start the session
        if (!session_start()) {
            throw new \RuntimeException('Failed to start the session.');
        }</span></pre>

<p>
	Of course after I had successfully logged in into the backoffice I undid this change.
</p>

<p>
	 
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="jpg" data-fileid="332222" href="//media.invisioncic.com/t336404/monthly_2025_02/session2.jpg.98a0a6277a3c81f7b9e4506305fb9048.jpg" rel=""><img alt="session2.thumb.jpg.81824ac477bd9639c2640702c94b2737.jpg" class="ipsImage ipsImage_thumbnailed" data-fileid="332222" data-ratio="69.30" style="height:auto;" width="1000" data-src="//media.invisioncic.com/t336404/monthly_2025_02/session2.thumb.jpg.81824ac477bd9639c2640702c94b2737.jpg" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>
]]></description><guid isPermaLink="false">1095348</guid><pubDate>Thu, 13 Feb 2025 18:23:33 +0000</pubDate></item><item><title>Unable to access Module Manager after 9.0 update</title><link>https://forum.prestashop.com/topic/1102499-unable-to-access-module-manager-after-90-update/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	After upgrading from PS 8.2.3 to PS 9.0 using the Click Upgrade module, the “Module Manager” page is blank, even in debug mode.
</p>

<p>
	I’ve tried disabling non-native modules and overrides without success. There is nothing in var/logs and same in php logs (at least when I try to acceed the page). Everything else seems to work.
</p>

<p>
	Thank you.
</p>
]]></description><guid isPermaLink="false">1102499</guid><pubDate>Tue, 07 Oct 2025 19:06:07 +0000</pubDate></item><item><title><![CDATA[[SOLVED] PrestaShop 9 SSL behind Traefik (or any reverse proxy) - redirect loops & mixed content fix]]></title><link>https://forum.prestashop.com/topic/1105162-solved-prestashop-9-ssl-behind-traefik-or-any-reverse-proxy-redirect-loops-mixed-content-fix/</link><description><![CDATA[<p>
	Hi everyone,
</p>

<p>
	I recently set up PrestaShop 9 behind Traefik as a reverse proxy handling SSL termination and ran into the classic redirect loop / mixed content issue. Sharing my solution here since I saw many older threads about this but none covering PS9 specifically.
</p>

<h2>
	The Problem
</h2>

<p>
	When a reverse proxy (Traefik, Nginx, Caddy, Apache, etc.) terminates SSL, PrestaShop's backend only sees plain HTTP. It never detects that the client connection is actually HTTPS, which causes:
</p>

<ul><li>
		Infinite redirect loops
	</li>
	<li>
		Mixed content warnings
	</li>
	<li>
		SSL showing as "disabled" in the Back Office
	</li>
</ul><h2>
	Root Cause
</h2>

<p>
	PrestaShop checks <code>$_SERVER['HTTPS']</code> to determine if SSL is active. Behind a proxy, that variable is never set because the proxy-to-backend connection is unencrypted.
</p>

<h2>
	The Fix (4 steps)
</h2>

<h3>
	Step 1: Make sure your proxy forwards the right headers
</h3>

<p>
	Your reverse proxy must send <code>X-Forwarded-Proto</code>, <code>X-Forwarded-For</code>, and <code>Host</code> headers. Traefik does this automatically. For Nginx you'd add:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;</span></pre>

<h3>
	Step 2: Tell PrestaShop to trust the proxy header
</h3>

<p>
	Add this near the top of <code>config/defines.inc.php</code>:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">isset</span><span class="pun">(</span><span class="pln">$_SERVER</span><span class="pun">[</span><span class="str">'HTTP_X_FORWARDED_PROTO'</span><span class="pun">])</span><span class="pln"> </span><span class="pun">&amp;&amp;</span><span class="pln"> $_SERVER</span><span class="pun">[</span><span class="str">'HTTP_X_FORWARDED_PROTO'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">===</span><span class="pln"> </span><span class="str">'https'</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    $_SERVER</span><span class="pun">[</span><span class="str">'HTTPS'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">'on'</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span></pre>

<p>
	This is the key fix. It reads the forwarded header and sets the variable PrestaShop expects.
</p>

<h3>
	Step 3: Enable SSL in PrestaShop
</h3>

<p>
	<strong>Option A - Console (recommended for PS9):</strong>
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">php bin/console prestashop:config set PS_SSL_ENABLED --value 1
php bin/console prestashop:config set PS_SSL_ENABLED_EVERYWHERE --value 1</span></pre>

<p>
	<strong>Option B - Back Office:</strong><br />
	Shop Parameters &gt; General &gt; Enable SSL = Yes, Enable SSL on all pages = Yes
</p>

<p>
	<strong>Option C - SQL (if you're locked out due to redirect loops):</strong>
</p>

<pre class="ipsCode prettyprint lang-sql prettyprinted"><span class="pln">UPDATE ps_configuration SET </span><span class="kwd">value</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">'1'</span><span class="pln"> WHERE name </span><span class="pun">=</span><span class="pln"> </span><span class="str">'PS_SSL_ENABLED'</span><span class="pun">;</span><span class="pln">
UPDATE ps_configuration SET </span><span class="kwd">value</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">'1'</span><span class="pln"> WHERE name </span><span class="pun">=</span><span class="pln"> </span><span class="str">'PS_SSL_ENABLED_EVERYWHERE'</span><span class="pun">;</span></pre>

<p>
	(Replace <code>ps_</code> with your table prefix if different.)
</p>

<h3>
	Step 4: Verify your Shop URL settings
</h3>

<p>
	In <strong>Shop Parameters &gt; Traffic &amp; SEO &gt; Shop URL</strong>, make sure both "Shop domain" and "SSL domain" are set to your public domain (just the domain, no <code>https://</code> prefix).
</p>

<h2>
	Things to watch out for
</h2>

<ul><li>
		<code>defines.inc.php</code> is more upgrade-safe than <code>settings.inc.php</code>, but check it after PrestaShop updates.
	</li>
	<li>
		Payment modules (PayPal, Stripe, etc.) check <code>PS_SSL_ENABLED</code> independently in the database, so Step 3 matters even if Step 2 already makes HTTPS work visually.
	</li>
	<li>
		Do <strong>NOT</strong> edit <code>classes/Link.php</code> — it gets overwritten on updates.
	</li>
	<li>
		Traefik forwards <code>X-Forwarded-Proto</code> by default; Nginx, Apache, and Caddy all need it configured explicitly.
	</li>
</ul><p>
	Hope this saves someone a few hours. Let me know if you have questions or a different setup where this didn't work.
</p>
]]></description><guid isPermaLink="false">1105162</guid><pubDate>Thu, 29 Jan 2026 12:40:56 +0000</pubDate></item><item><title>Cannot perform any module upgrade (neither uninstall / install)</title><link>https://forum.prestashop.com/topic/1100390-cannot-perform-any-module-upgrade-neither-uninstall-install/</link><description><![CDATA[<p>
	Hi,
</p>

<p>
	Starting from a fresh PS9 out of the box, on a planethoster hosting (tried with php 8.1 and 8.4, with or without WAP firewall), I cannot perform any module ugrade <span>:</span>
</p>

<p>
	<span>- </span>on some modules, I get the message "could not perform action upgrade for module undefined ",
</p>

<p>
	- on other ones, prestashop says upgrade worked, but it didn't.
</p>

<p>
	---
</p>

<p>
	Using marketplace panel inside the admin, it says the marketplace module should bu updated but when clicking I have another error message <span><span>:</span> "</span>JSON.parse: unexpected character at line 1 column 1 of the JSON data"
</p>

<p>
	---
</p>

<p>
	When I tried to update manually the Marketplace module, it crashed all the site (error 500) and I had to get back with a backup.
</p>

<p>
	---
</p>

<p>
	I saw on a lot of pages that using debug mode, and clearing cache and var/cache/folders works... but I tried it numerous times and it didn't.
</p>

<p>
	Do you have any idea ?
</p>

<p>
	 
</p>

<p>
	Best regards
</p>

<p>
	Antoine
</p>
]]></description><guid isPermaLink="false">1100390</guid><pubDate>Tue, 22 Jul 2025 15:15:38 +0000</pubDate></item><item><title>How to set up an external link to a subcategory</title><link>https://forum.prestashop.com/topic/1105082-how-to-set-up-an-external-link-to-a-subcategory/</link><description><![CDATA[<p>
	Hi all,
</p>

<p>
	I would like to set up a subcategory so that when the user clicks on it, they are redirected to an external web page (in a new tab if possible). 
</p>

<p>
	For example, if I have the following category tree:
</p>

<p>
	Mobile phones<br />
	- Motorola<br />
	- Samsung
</p>

<p>
	I would like the subcategories to lead to the Motorola or Samsung page. 
</p>

<p>
	Is this possible? I have seen some very old answers that involved modifying the file "modules/blocktopmenu/blocktopmenu.php", but I do not see that module or file in Prestashop 8.2.
</p>

<p>
	Thank you very much and best regards!
</p>
]]></description><guid isPermaLink="false">1105082</guid><pubDate>Tue, 27 Jan 2026 07:41:35 +0000</pubDate></item><item><title>Invalid Supplier id:0</title><link>https://forum.prestashop.com/topic/1081764-invalid-supplier-id0/</link><description><![CDATA[<p>
	Oops... looks like an unexpected error occurred.
</p>

<p>
	Invalid Supplier id: 0
</p>

<p>
	[PrestaShop\PrestaShop\Core\Domain\Supplier\Exception\SupplierException 0]
</p>

<p>
	Prestashop 8.1.2 after upgrade from 1.7.8.10  This occurs on 1 site but not on another using the same Pshop version and PHP8.1 settings and same hosting, but on different shared servers.  Site 1 was working fine with Pshop 1.7.8.10 and PHP 7.4  Both installations are identical.  one is live and one is for testing.  Test site works with no problem the live site has this error
</p>

<p>
	Error occurs in the BO on EVERY product.  Turning Debug mode on seems to indicate a problem with Supplierid.php but there is no such file in either installation.  This makes it impossible to edit any products on the live site.
</p>
]]></description><guid isPermaLink="false">1081764</guid><pubDate>Mon, 06 Nov 2023 22:58:05 +0000</pubDate></item><item><title>How can you debug this?</title><link>https://forum.prestashop.com/topic/1104202-how-can-you-debug-this/</link><description><![CDATA[<p>
	When I change an image in the topmenu program of my template I get the error "The file "/tmp/phpnWYRUf" does not exist" with the file name every time different but always starting with /tmp/php. The pictture is at the bottom.
</p>

<p>
	The location of the code indicates that the error happens in a hook. Adding some debug code produced that it happens in the autoupgrade module in the displayBackofficeHeader hook.
</p>

<p>
	The relevant code in the autoupgrade module looks so:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">public function hookDisplayBackOfficeHeader()
{
	if (!$this-&gt;initAutoloaderIfCompliant()) {
		return '';
	}

	if (isset($this-&gt;context-&gt;controller-&gt;ajax) &amp;&amp; $this-&gt;context-&gt;controller-&gt;ajax) {
		return '';
	}

	return (new \PrestaShop\Module\AutoUpgrade\Hooks\DisplayBackOfficeHeader($this-&gt;getUpgradeContainer()))-&gt;renderUpdateNotification();
}</span></pre>

<p>
	Does anyone know how to solve this?
</p>

<p>
	In the error log file under /var/logs I find the following two errors
</p>

<blockquote class="ipsQuote" data-ipsquote="">
	<div class="ipsQuote_citation">
		Quote
	</div>

	<div class="ipsQuote_contents">
		<p>
			[2025-12-17 14:38:27] php.CRITICAL: Uncaught Exception: The file "/tmp/phpnWYRUf" does not exist {"exception":"[object] (PrestaShop\\PrestaShop\\Core\\Exception\\CoreException(code: 0): The file \"/tmp/phpnWYRUf\" does not exist at /var/www/html/staranova/classes/Hook.php:434, Symfony\\Component\\HttpFoundation\\File\\Exception\\FileNotFoundException(code: 0): The file \"/tmp/phpnWYRUf\" does not exist at /var/www/html/staranova/vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/File/File.php:36)"} []<br />
			[2025-12-17 14:38:27] request.CRITICAL: Uncaught PHP Exception PrestaShop\PrestaShop\Core\Exception\CoreException: "The file "/tmp/phpnWYRUf" does not exist" at /var/www/html/staranova/classes/Hook.php line 434 {"exception":"[object] (PrestaShop\\PrestaShop\\Core\\Exception\\CoreException(code: 0): The file \"/tmp/phpnWYRUf\" does not exist at /var/www/html/staranova/classes/Hook.php:434, Symfony\\Component\\HttpFoundation\\File\\Exception\\FileNotFoundException(code: 0): The file \"/tmp/phpnWYRUf\" does not exist at /var/www/html/staranova/vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/File/File.php:36)"} []
		</p>
	</div>
</blockquote>

<p>
	The File.php Symfony file contains this (summarized):
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">class File extends \SplFileInfo
{   /**
     * Constructs a new file from the given path.
     * @throws FileNotFoundException If the given path is not a file
     */
    public function __construct(string $path, bool $checkPath = true)
    {
        if ($checkPath &amp;&amp; !is_file($path)) {
            throw new FileNotFoundException($path);
        }
        parent::__construct($path);
    }</span></pre>

<p>
	It throws the FileNotFoundException.
</p>

<p>
	The original error looks so:
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="jpg" data-fileid="340580" href="//media.invisioncic.com/t336404/monthly_2025_12/hookexists.jpg.e951dbc5ddd9f074a3740d915e5efbf3.jpg" rel=""><img alt="hookexists.thumb.jpg.ddba0f658c0df6182ec68fd982214919.jpg" class="ipsImage ipsImage_thumbnailed" data-fileid="340580" data-ratio="124.58" style="height:auto;" width="602" data-src="//media.invisioncic.com/t336404/monthly_2025_12/hookexists.thumb.jpg.ddba0f658c0df6182ec68fd982214919.jpg" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1104202</guid><pubDate>Wed, 17 Dec 2025 14:21:27 +0000</pubDate></item><item><title>Product display order and pop display in PrestaShop</title><link>https://forum.prestashop.com/topic/1104149-product-display-order-and-pop-display-in-prestashop/</link><description><![CDATA[<p>
	Hello everyone,
</p>

<p>
	My name is Sophie and I’m currently working on optimizing product display in a PrestaShop store. I’m particularly interested in how products and accessories are presented on product pages, as the display order plays an important role in merchandising and conversion. From a merchandising perspective, I’m trying to achieve a result closer to a <span>pop display</span>, where accessories or complementary products are shown in a specific order to naturally guide customers through their purchase journey.
</p>

<p>
	I’d like to know what best practices you recommend for managing the display order of product accessories in PrestaShop. Do you rely on product positions, specific modules, or theme customizations?
</p>

<p>
	Thanks in advance for your feedback and advice,<br />
	Sophie
</p>
]]></description><guid isPermaLink="false">1104149</guid><pubDate>Mon, 15 Dec 2025 17:35:57 +0000</pubDate></item><item><title>Specific prices on product lists</title><link>https://forum.prestashop.com/topic/1104010-specific-prices-on-product-lists/</link><description><![CDATA[<p>
	Hello,<br /><br />
	I'm using Prestashop 8.2 and Warehouse theme. Looking for a way to display specific prices (+ normal prices) on product-lists.
</p>

<p>
	Here is the template used to display price on lists product-miniature2.tpl<br /><br />
	 
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">            {block name='product_price_and_shipping'}
                {if $product.show_price}
                    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"product-price-and-shipping"</span><span class="tag">&gt;</span><span class="pln">
                        {hook h='displayProductPriceBlock' product=$product type="before_price"}
                        </span><span class="tag">&lt;span</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"product-price"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"{$product.price_amount}"</span><span class="pln"> </span><span class="atn">aria-label</span><span class="pun">=</span><span class="atv">"{l s='Price' d='Shop.Theme.Catalog'}"</span><span class="tag">&gt;</span><span class="pln">
                              {capture name='custom_price'}{hook h='displayProductPriceBlock' product=$product type='custom_price' hook_origin='products_list'}{/capture}
                            {if '' !== $smarty.capture.custom_price}
                                {$smarty.capture.custom_price nofilter}
                            {else}
                                {$product.price}
                            {/if}
                        </span><span class="tag">&lt;/span&gt;</span><span class="pln">
                        {if $product.has_discount}
                            {hook h='displayProductPriceBlock' product=$product type="old_price"}
                            </span><span class="tag">&lt;span</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"regular-price text-muted"</span><span class="tag">&gt;</span><span class="pln">{$product.regular_price}</span><span class="tag">&lt;/span&gt;</span><span class="pln">
                        {/if}
                        {hook h='displayProductPriceBlock' product=$product type='unit_price'}
                        {hook h='displayProductPriceBlock' product=$product type='weight'}
                    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
                {/if}
            {/block}</span></pre>

<p>
	<br />
	Could someone please help ? Tried many things without success.<br /><br />
	Thanks.
</p>
]]></description><guid isPermaLink="false">1104010</guid><pubDate>Tue, 09 Dec 2025 11:59:52 +0000</pubDate></item><item><title>[1.7] save customization when add to cart</title><link>https://forum.prestashop.com/topic/623011-17-save-customization-when-add-to-cart/</link><description><![CDATA[
<p>Hello everyone,</p>
<p> </p>
<p>I need some help about the customization. I want to remove the save button for customization and save directly when i add product to cart.</p>
<p> </p>
<p>I found this tutorial <a href="http://nemops.com/save-prestashop-custom-fields-add-to-cart/#.WYnHXp-YEUE" rel="external nofollow">http://nemops.com/save-prestashop-custom-fields-add-to-cart/#.WYnHXp-YEUE</a> but it's for prestashop 1.6 and I have prestashop 1.7.1.1.</p>
<p> </p>
<p>Can anyone help me or give me a link?</p>
<p> </p>
<p>Thanks in advance</p>
<p> </p>
<p>Florian</p>
]]></description><guid isPermaLink="false">623011</guid><pubDate>Tue, 08 Aug 2017 14:18:30 +0000</pubDate></item><item><title>Spam e-mail. Prestashop 1.6</title><link>https://forum.prestashop.com/topic/1103905-spam-e-mail-prestashop-16/</link><description><![CDATA[<p>
	We have got a presashop 1.6 shop.
</p>

<p>
	And there are lots of spam e-mail being sent using some form on our site. We have already tried couple of solutions, but without any result:
</p>

<p>
	 
</p>

<p>
	Created a module:
</p>

<p>
	<a href="https://stackoverflow.com/questions/38916902/prestashop-disable-contact-form" rel="external nofollow">https://stackoverflow.com/questions/38916902/prestashop-disable-contact-form</a>
</p>

<p>
	 
</p>

<p>
	Modified files:
</p>

<p>
	<a href="https://github.com/PrestaShop/PrestaShop/pull/8168/files" rel="external nofollow">https://github.com/PrestaShop/PrestaShop/pull/8168/files</a>
</p>

<p>
	 
</p>

<p>
	According to analysis from my hosing tech support problem is somewhere in SimpleMailInvoker.php file.
</p>

<p>
	 
</p>

<p>
	Any ideas/recomendation apreciated.
</p>

<p>
	Thanks in advance
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1103905</guid><pubDate>Thu, 04 Dec 2025 16:04:12 +0000</pubDate></item><item><title>[SOLVED] Appeared two "availability" characteristics? (ps_facetedsearch)</title><link>https://forum.prestashop.com/topic/1103688-solved-appeared-two-availability-characteristics-ps_facetedsearch/</link><description><![CDATA[<p>
	I have a problem with front office, customers see two different options for searching products in stock   <span><span>: "In stock" and "Aviable".</span></span><span><span> Here the screenshot:</span></span>
</p>

<p>
	<img alt="Disponibile2.png.ca4d10aeba26c83ac7435c2dc4fb1de3.png" class="ipsImage ipsImage_thumbnailed" data-fileid="340165" data-ratio="75.23" style="height:auto;" width="109" data-src="//media.invisioncic.com/t336404/monthly_2025_11/Disponibile2.png.ca4d10aeba26c83ac7435c2dc4fb1de3.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></p>

<p>
	This is appear as soon as I activate the stock filter in standard search filter module (ps_facetedsearch):
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="340098" href="//media.invisioncic.com/t336404/monthly_2025_11/SearchModule.png.dfcbc3383578fc999d64f61fef10e621.png" rel=""><img alt="SearchModule.thumb.png.780fee47dd00e125f7b2a42380072295.png" class="ipsImage ipsImage_thumbnailed" data-fileid="340098" data-ratio="5.50" style="height:auto;" width="1000" data-src="//media.invisioncic.com/t336404/monthly_2025_11/SearchModule.thumb.png.780fee47dd00e125f7b2a42380072295.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	How can I have only one option?
</p>

<p>
	"In stock" seems the correct one. The other one shows also product not in stock and I don't know how to remove it.
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1103688</guid><pubDate>Wed, 26 Nov 2025 11:48:20 +0000</pubDate></item><item><title>Error 500 in multishop mode when trying to change logo</title><link>https://forum.prestashop.com/topic/1100291-error-500-in-multishop-mode-when-trying-to-change-logo/</link><description><![CDATA[<p>
	Hi
</p>

<p>
	I recreated under PS9 an already existing shop under PS8 - this is a multishop mode one. I created exactly same shops in the same order, they have the same ID and group ID (I even checked in PhMyAdmin) in the new PS9 one than in the older PS8 one.
</p>

<p>
	When I try to adapt the classic theme in shops <span>:</span>
</p>

<p>
	<span>- I can change the theme of each shop for child-theme I ve already set</span>
</p>

<p>
	<span>- BUT I cannot change logos of shops --&gt; this gives an error 500 each time (the logo is correctly loaded in /img/logo-xxxx.jpg but the admin panel break to 500 error). I tried to clear and remove all caches, the same.</span>
</p>

<p>
	<span>The Debug mode throws <span>:</span></span>
</p>

<p>
	<span><span>"Shop group id 0 is invalid. Shop group id must be a number that is greater than zero."</span></span>
</p>

<p>
	<span>And in details <span>:</span></span>
</p>

<p>
	<strong>ShopException</strong>
</p>

<p>
	PrestaShop\PrestaShop\Core\Domain\Shop\Exception\<br /><span><span><strong>In </strong></span>/home/ferwtxap/public_html/src/Core/Domain/Shop/ValueObject/ShopGroupId.php:68</span>
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pln"> </span><span class="pun">*</span><span class="pln"> </span><span class="lit">@throws</span><span class="pln"> </span><span class="typ">ShopException</span><span class="pln">
     </span><span class="pun">*/</span><span class="pln">
    </span><span class="kwd">private</span><span class="pln"> </span><span class="kwd">function</span><span class="pln"> assertIsGreaterThanZero</span><span class="pun">(</span><span class="kwd">int</span><span class="pln"> $shopGroupId</span><span class="pun">):</span><span class="pln"> </span><span class="kwd">void</span><span class="pln">
    </span><span class="pun">{</span><span class="pln">
        </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="lit">0</span><span class="pln"> </span><span class="pun">&gt;=</span><span class="pln"> $shopGroupId</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
            </span><span class="kwd">throw</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">ShopException</span><span class="pun">(</span><span class="pln">
                sprintf</span><span class="pun">(</span><span class="pln">
                    </span><span class="str">'Shop group id %s is invalid. Shop group id must be a number that is greater than zero.'</span><span class="pun">,</span><span class="pln">
                    var_export</span><span class="pun">(</span><span class="pln">$shopGroupId</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">true</span><span class="pun">)</span><span class="pln">
                </span><span class="pun">)</span><span class="pln">
            </span><span class="pun">);</span></pre>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1100291</guid><pubDate>Fri, 18 Jul 2025 13:42:01 +0000</pubDate></item><item><title>Remove Totally Old Alternative Product Link</title><link>https://forum.prestashop.com/topic/1103584-remove-totally-old-alternative-product-link/</link><description><![CDATA[<p>
	Good morning,
</p>

<p>
	we create a product with a link, then we change it, and the product have a new link.
</p>

<p>
	But from old link we can reach also the product with a page with the new link.
</p>

<p>
	How we can delete totally the old link ? We don't want the old link exist, we want the product work only with the new link.
</p>

<p>
	Here in table ps_product_lang there is only the main current link, not the old links that redirect to the new.
</p>

<p>
	So we want to know where ps save the old links that redirect in main ?
</p>

<p>
	I want to delete old links only for two products
</p>

<p>
	Thanks
</p>
]]></description><guid isPermaLink="false">1103584</guid><pubDate>Sat, 22 Nov 2025 00:08:41 +0000</pubDate></item><item><title>Change weight filter decimals</title><link>https://forum.prestashop.com/topic/1103563-change-weight-filter-decimals/</link><description><![CDATA[<p>
	I have changed the weight in localization from kg to g. Which now also shows on the front-end in the filter with slider. But I would like to remove the decimals:
</p>

<p>
	<img class="ipsImage ipsImage_thumbnailed" data-fileid="340024" data-ratio="100.25" width="393" alt="image.png.6ad5d438af71571e962f1746c62d8e05.png" data-src="//media.invisioncic.com/t336404/monthly_2025_11/image.png.6ad5d438af71571e962f1746c62d8e05.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></p>

<p>
	I tried adjusting the product.tpl with this:
</p>

<pre class="ipsCode">{if isset($product.weight) &amp;&amp; ($product.weight != 0)}
  &lt;meta property="product:weight:value" content="{$product.weight|intval}"&gt;
  &lt;meta property="product:weight:units" content="{$product.weight_unit}"&gt;
{/if}</pre>

<p>
	But no luck. Any other suggestions?
</p>
]]></description><guid isPermaLink="false">1103563</guid><pubDate>Thu, 20 Nov 2025 16:33:20 +0000</pubDate></item><item><title>[SOLVED]Displaying a table on the Order Confirmation Page</title><link>https://forum.prestashop.com/topic/277877-solveddisplaying-a-table-on-the-order-confirmation-page/</link><description><![CDATA[
<p>How can I display a table on the Order Confirmation Page. No matter what I do to the order-confirmation.tpl nothing changes.</p>
<p> </p>
<p>I have tried to smarty assign stuff to the tpl but still no joy, please help!</p>
]]></description><guid isPermaLink="false">277877</guid><pubDate>Fri, 27 Sep 2013 09:21:02 +0000</pubDate></item><item><title>Add Attributes/Combinations name in products name</title><link>https://forum.prestashop.com/topic/1084097-add-attributescombinations-name-in-products-name/</link><description><![CDATA[<p>
	Hi to all guys,
</p>

<p>
	 
</p>

<p>
	everyone can share with us a code snippet for add the attributes/combinations name after the products name?
</p>

<p>
	 
</p>

<p>
	For example "Product one" have combination called (two, three)
</p>

<p>
	 
</p>

<p>
	On product page now appear as product name "Product one" and you can select the combinations "two and three".
</p>

<p>
	I what that, when users select a combination the product name will be updated. So Select combination "three" the product name will be "Product one - Three".
</p>

<p>
	 
</p>

<p>
	Anyone can share a code parts for do that?
</p>
]]></description><guid isPermaLink="false">1084097</guid><pubDate>Mon, 29 Jan 2024 11:13:47 +0000</pubDate></item><item><title>Quitar enlaces del selector para "Ordenar Por" en las categor&#xED;as de productos</title><link>https://forum.prestashop.com/topic/1103379-quitar-enlaces-del-selector-para-ordenar-por-en-las-categor%C3%ADas-de-productos/</link><description><![CDATA[<p>
	Hola a todos,
</p>

<p>
	Estoy intentando quitar los enlaces del selector “Ordenar por” en las categorías de productos.<br />
	PrestaShop, por defecto, genera URLs como estas:
</p>

<ul><li>
		https://mywebsite.com/es/15-categoria-productos?order=product.position.asc
	</li>
	<li>
		https://mywebsite.com/es/15-categoria-productos?order=product.name.asc
	</li>
	<li>
		https://mywebsite.com/es/15-categoria-productos?order=product.name.desc
	</li>
	<li>
		https://mywebsite.com/es/15-categoria-productos?order=product.price.asc
	</li>
</ul><p>
	El problema es que esto crea una cantidad enorme de URLs que no aportan nada a nivel SEO, y me gustaría evitar que se generen enlaces indexables para cada orden.
</p>

<p>
	Lo ideal sería que el selector de ordenación funcionara solo con JavaScript, sin añadir parámetros ?order= a la URL.
</p>

<p>
	¿Alguien ha implementado una solución para eliminar estos enlaces y manejar la ordenación de forma interna con JS?<br />
	Cualquier orientación o ejemplo sería de gran ayuda.
</p>

<p>
	¡Gracias de antemano!
</p>
]]></description><guid isPermaLink="false">1103379</guid><pubDate>Thu, 13 Nov 2025 13:03:24 +0000</pubDate></item><item><title>I want to Change product title when another variation selected</title><link>https://forum.prestashop.com/topic/1103399-i-want-to-change-product-title-when-another-variation-selected/</link><description><![CDATA[<p>
	hi, 
</p>

<p>
	Dear all Experts, <br />
	I am unsing Prestashop 9. everything is fine. I want to make an improvment in the product page, If a product have 2 variations for example A bed frame is in 2 Sizes. 1 = Single and 2 = Double. when a cusomter select the size from the variations given on the product page, I want to show that variation in the Title. <br />
	for Example ABC Bed frame &gt; when Double size selected by a buy the title should becom ABC Bed frame Double. <br />
	is that possible? How to do it? Please guide
</p>

<p>
	Thanks in advance. 
</p>
]]></description><guid isPermaLink="false">1103399</guid><pubDate>Fri, 14 Nov 2025 11:20:58 +0000</pubDate></item><item><title>Prestashop Webservice API - JSON</title><link>https://forum.prestashop.com/topic/1082377-prestashop-webservice-api-json/</link><description><![CDATA[<p>
	Greetings,
</p>

<p>
	I am trying to use the Webservice API. I have successfully installed Prestashop locally with the demo products. I have enabled the Webservice module and created an API key.
</p>

<p>
	I am issuing the following request via Postman:
</p>

<p>
	GET {{webservice_url}}/api/products?output_format=JSON
</p>

<p>
	And I am getting a successful response with a 200 status code that returns me the HTML page for the products instead of a JSON or even XML body.
</p>

<p>
	I have the Auth headers correctly set as well as the Content-Type to application/json
</p>

<p>
	Any ideas or clues of what might be missing?
</p>

<p>
	Thanks in advance.
</p>
]]></description><guid isPermaLink="false">1082377</guid><pubDate>Sun, 26 Nov 2023 20:08:47 +0000</pubDate></item><item><title>Authentication error when logging in after updating PrestaShop Marketplace in your Back Office</title><link>https://forum.prestashop.com/topic/1103293-authentication-error-when-logging-in-after-updating-prestashop-marketplace-in-your-back-office/</link><description><![CDATA[<p>
	Today I received updates for the Newsletter and PrestaShop Marketplace in your Back Office. The Newsletter update installed successfully, but the Marketplace update threw an error and crashed the shop — it only worked in debug mode.
</p>

<p>
	I manually deleted the /dev and /prod folders, and now the shop loads again. However, it's no longer possible to log into customer accounts or create new ones — it shows an authentication error related to the password and email fields.
</p>

<p>
	What should I do? I uninstalled the PrestaShop Marketplace in your Back Office and manually uploaded a downloaded version — that part worked, but the login and account creation issues persist. Please help.
</p>

<p>
	Prestashop 8.2.1
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1103293</guid><pubDate>Mon, 10 Nov 2025 06:15:12 +0000</pubDate></item><item><title>PrestaShop Addons Validator &#x2013; inconsistent behavior with _PS_VERSION_ and enums in PS 9 payment module</title><link>https://forum.prestashop.com/topic/1103160-prestashop-addons-validator-%E2%80%93-inconsistent-behavior-with-_ps_version_-and-enums-in-ps-9-payment-module/</link><description><![CDATA[<p>
	I'm developing a payment module for PrestaShop 9, fully following the official documentation:<br />
	https://devdocs.prestashop-project.org/9/modules/payment/
</p>

<p>
	The module is written for PHP 8.1+ and uses native PHP enums.<br />
	In the main module class, I set:<br />
	 
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pln">$this</span><span class="pun">-&gt;</span><span class="pln">ps_versions_compliancy </span><span class="pun">=</span><span class="pln"> </span><span class="pun">[</span><span class="str">'min'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'9.0.0'</span><span class="pun">,</span><span class="pln"> </span><span class="str">'max'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> _PS_VERSION_</span><span class="pun">];</span></pre>

<p>
	When validating the module with the <a href="https://validator.prestashop.com/" rel="external nofollow">PrestaShop Addons Validator</a> I get the following error:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="typ">Method</span><span class="pln"> </span><span class="str">'MyModule\Module\Enums\ErrorPage::tryFrom()'</span><span class="pln"> does </span><span class="kwd">not</span><span class="pln"> exists</span></pre>

<p>
	The tryFrom() method is native to PHP 8.1 enums, and the module works perfectly in PrestaShop 9.
</p>

<p>
	Unexpected behavior
</p>

<p>
	If I change the line to:<br />
	 
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pln">$this</span><span class="pun">-&gt;</span><span class="pln">ps_versions_compliancy </span><span class="pun">=</span><span class="pln"> </span><span class="pun">[</span><span class="str">'min'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'9.0.0'</span><span class="pun">,</span><span class="pln"> </span><span class="str">'max'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'9.9.9'</span><span class="pun">];</span></pre>

<p>
	the enum error disappears — the validator correctly accepts PHP enums —<br />
	but a new, unrelated error appears:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="typ">Mandatory</span><span class="pln"> </span><span class="kwd">use</span><span class="pln"> </span><span class="kwd">of</span><span class="pln"> </span><span class="str">'PrestaShop\PrestaShop\Core\Payment\PaymentOption'</span><span class="pln"> </span><span class="kwd">not</span><span class="pln"> found </span><span class="kwd">in</span><span class="pln"> </span><span class="kwd">module</span><span class="pun">,</span><span class="pln"> but required </span><span class="kwd">for</span><span class="pln"> payment modules </span><span class="kwd">from</span><span class="pln"> PS </span><span class="lit">1.7</span><span class="pun">.</span></pre>

<p>
	However, my module meets all the requirements from the official PS9 payment module documentation:
</p>

<p>
	1) The main class extends PaymentModule.
</p>

<p>
	2) It implements both hookPaymentOptions() and hookPaymentReturn() and properly registers the PaymentOptions and PaymentReturn hooks.
</p>

<p>
	3) It doesn’t include a submit button in the HTML.
</p>

<p>
	4) In the hookPaymentOptions() method, it returns an array of PaymentOption.
</p>

<p>
	5) The file includes the correct namespace import:<br />
	 
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="kwd">use</span><span class="pln"> </span><span class="typ">PrestaShop</span><span class="pln">\PrestaShop\Core\Payment\PaymentOption</span><span class="pun">;</span></pre>

<p>
	So the validator should recognize the class and not report this as missing.
</p>

<p>
	Question
</p>

<p>
	Is this a known issue with the Addons Validator when checking PS 9 payment modules?<br />
	Are there any updated guidelines for how to define ps_versions_compliancy for modules targeting PS 9 exclusively, so that enums and validator checks both work correctly?
</p>

<p>
	Thanks in advance!
</p>
]]></description><guid isPermaLink="false">1103160</guid><pubDate>Tue, 04 Nov 2025 07:59:11 +0000</pubDate></item><item><title>HTML purifier</title><link>https://forum.prestashop.com/topic/1103004-html-purifier/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	On Prestashop 8.2.3, when I add something like loading="lazy" in the source code of an element via the text editor, it disappears as soon as I save (because of HTML Purifier?)? This is quite problematic, since even when writing a blog post, the code gets completely altered at the slightest mistake.<br /><br />
	What's the cleanest solution to work around this issue?<br /><br />
	Thank you.
</p>
]]></description><guid isPermaLink="false">1103004</guid><pubDate>Wed, 29 Oct 2025 09:13:59 +0000</pubDate></item><item><title>How to adapt APE field for Finnish bussiness-id format in Prestashop 1.7.8.11?</title><link>https://forum.prestashop.com/topic/1102737-how-to-adapt-ape-field-for-finnish-bussiness-id-format-in-prestashop-17811/</link><description><![CDATA[<p>
	Hi everyone,
</p>

<p>
	I'm working on adapting the APE field (Y-tunnus) in Prestashop 1.7.8.11 to match the Finnish business ID format: 1607767-8 (7 digits + hyphen + 1 digit). Despite multiple attempts, Prestashop keeps rejecting valid entries with the error: “This field is invalid.”
</p>

<p>
	Here’s what I’ve tried so far:
</p>

<p>
	Removed the validate rule from Customer.php ('ape' =&gt; ['type' =&gt; self::TYPE_STRING])
</p>

<p>
	Updated Validate::isApe() to accept hyphenated numbers
</p>

<p>
	Cleared all caches (dev/prod, browser, admin)
</p>

<p>
	Checked CustomerFormatter.php and Symfony form constraints
</p>

<p>
	Tried using isGenericName and even removed validation entirely
</p>

<p>
	Created a custom module (bussinessid) using hookActionCustomerFormBuilderModifier to override constraints:
</p>

<p>
	Removed default Type constraint
</p>

<p>
	Added custom Regex to allow 1607767-8 or empty
</p>

<p>
	Updated label to “Bussiness ID”
</p>

<p>
	Ensured the field is optional (required =&gt; false)
</p>

<p>
	Added B2B check (Configuration::get('PS_B2B_ENABLE')) so the field only appears for company customers
</p>

<p>
	Despite all this, Prestashop still throws the same validation error when entering a valid Y-tunnus like 1607767-8.
</p>

<p>
	Has anyone successfully implemented Finnish Y-tunnus validation in Prestashop? Is there a hidden override or constraint I might be missing?
</p>

<p>
	 
</p>

<p>
	I'm working with Prestashop 1.7.8.11 and I need help customizing the APE field in the Customers &gt; Create a Customer section.
</p>

<p>
	In Finland, the business ID (Y-tunnus) format is typically 1607767-8 — 7 digits followed by a hyphen and 1 digit. I would like to either:
</p>

<p>
	<span class="ipsEmoji">✅</span> Adapt the APE field to accept this Finnish format OR
</p>

<p>
	<span class="ipsEmoji">❌</span> Completely remove the APE field and keep only the SIRET field for company registration
</p>

<p>
	I’ve tried modifying the validation rules and even created a custom module to override constraints, but the system still throws “This field is invalid” when entering a valid Y-tunnus.
</p>

<p>
	Is there a current and reliable method to either:
</p>

<p>
	Make the APE field accept Finnish Y-tunnus format
</p>

<p>
	Or disable it entirely and rely on SIRET only?
</p>

<p>
	Any guidance or updated best practices would be greatly appreciated.
</p>

<p>
	Any help or insight would be greatly appreciated!
</p>

<p>
	Thanks in advance,
</p>

<p>
	 
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1102737</guid><pubDate>Thu, 16 Oct 2025 18:36:12 +0000</pubDate></item><item><title>[Override] Strict and only relevant searching in Prestashop for free</title><link>https://forum.prestashop.com/topic/1019232-override-strict-and-only-relevant-searching-in-prestashop-for-free/</link><description><![CDATA[
<p>
	Hello devs and users,
</p>

<p>
	I was strugling with this really bad behavior of Prestashop search engine when ie: you were searching for "wooden chair" and You end up with result of products that contains "wooden" and "chair" as well. Which sucks ass.
</p>

<p>
	This was driving my crazy so I end up with this override for Search.php in <strong>Prestashop 1.6 </strong>- didn't tested this on 1.7. This piece of code checks whether product that You searched for contains both or more words in search index (like tags, featuers not only the name) that You actually searched. Now I can die peacefully because when somone was searching for ie: Black chair he don't ends up with bunch of black wardrobes, chairs, sofas etc but actually only black chairs.
</p>

<p>
	<strong>To get this working at least in a relevant way please use at least (product name, features, categories, tags) or combinations set in Preferences -&gt; Search. After this rebuild Your cache. Try not to use description or short description because it contains to many words.</strong>
</p>

<p>
	<strong>To install</strong> this just put this file in <strong>override/classes/ </strong>and after this remove <strong>class_index.php</strong> file in cache folder.
</p>

<p>
	I hope You find it usefull. I was working on this for 6 hours because I had to understand how prestashop search engine works (<em>by the way - why the f*** presta needs to get all products from shop before searching!?</em>) and I had to do this as efficient and performative as I can so any tip will be appreciated. It works faster for me then previous one. Try it for yourself <span><img alt=":)" data-emoticon="" height="20" src="https://media.invisioncic.com/t336404/emoticons/default_smile.png" srcset="https://media.invisioncic.com/t336404/emoticons/smile@2x.png 2x" title=":)" width="20" /> If someone will find a better way to do this after reading this code please share it as well.<br /><br />
	I need to edit the file because previous contained a lot of my own overrides to search categories, cms and other stuff as well - now it's a clean one <span><img alt=":)" data-emoticon="" height="20" src="https://media.invisioncic.com/t336404/emoticons/default_smile.png" srcset="https://media.invisioncic.com/t336404/emoticons/smile@2x.png 2x" title=":)" width="20" /><br />
	Update: I found much more efficient and easier method to get this done <span><img alt=":)" data-emoticon="" height="20" src="https://media.invisioncic.com/t336404/emoticons/default_smile.png" srcset="https://media.invisioncic.com/t336404/emoticons/smile@2x.png 2x" title=":)" width="20" /> Edited again.</span></span></span>
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	<a class="ipsAttachLink" data-fileext="php" data-fileid="246350" href="https://forum.prestashop.com/applications/core/interface/file/attachment.php?id=246350" rel="">Search.php</a>
</p>
]]></description><guid isPermaLink="false">1019232</guid><pubDate>Mon, 06 Apr 2020 16:34:05 +0000</pubDate></item><item><title><![CDATA[Slow Save & "MySQL gone away" Error - Problem]]></title><link>https://forum.prestashop.com/topic/1102626-slow-save-mysql-gone-away-error-problem/</link><description><![CDATA[<p>
	I'm providing an update on my product saving issue on PrestaShop 8.2.0, hosted on a Hostinger Business plan. Thank you for the help so far.
</p>

<p>
	The Original Problem (Still Happening):
</p>

<p>
	Saving a product is always slow. When I assign many categories (10-15+), the save process takes over a minute and fails with a General error: 2006 MySQL server has gone away error.
</p>

<p>
	Troubleshooting Update:
</p>

<ul><li>
		I recently enabled a visitor tracking module and thought it might be causing the slowdown.
	</li>
	<li>
		I have now completely disabled that module and cleared the cache.
	</li>
</ul><p>
	Unfortunately, the problem is not solved. The exact same issue persists: saves are slow, and it fails when many categories are involved.
</p>

<p>
	The Full Error Message (Still the Same):
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">An unexpected error occurred. [Doctrine\DBAL\Exception\ConnectionLost code 0]: An exception occurred while executing 'SELECT ...': SQLSTATE[HY000]: General error: 2006 MySQL server has gone away</span></pre>

<p>
	Revised Question:
</p>

<p>
	Since disabling the module had no effect, my focus is back on a server configuration or database performance issue. The operation to link a product to many categories seems too slow for my server's timeout limit.
</p>

<p>
	What are the specific values for MySQL settings like wait_timeout and max_allowed_packet that I should ask Hostinger support to set?
</p>

<p>
	Could this be a deeper problem, like poor database indexing on the ps_category_product table, that makes the query itself too slow?
</p>

<p>
	Any further ideas would be greatly appreciated. Thank you.
</p>

<p><a href="//media.invisioncic.com/t336404/monthly_2025_10/Screenshot(283).png.90397ec47842b513e9700bd1c174885d.png" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="339163" src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2025_10/Screenshot(283).thumb.png.314c27f4b75b18439e0685539debca65.png" data-ratio="56.3" width="1000" class="ipsImage ipsImage_thumbnailed" alt="Screenshot (283).png"></a></p>]]></description><guid isPermaLink="false">1102626</guid><pubDate>Mon, 13 Oct 2025 02:50:08 +0000</pubDate></item><item><title>Reactjs website logging into prestaShop</title><link>https://forum.prestashop.com/topic/881561-reactjs-website-logging-into-prestashop/</link><description><![CDATA[<p>
	I have a react.js website that I want users to be able to login into and manage items they've purchased. I need a shop where users can make these purchases. So I guess my question is, can users login/create an account thru the site and still access prestaShop without having to login again there? 
</p>]]></description><guid isPermaLink="false">881561</guid><pubDate>Thu, 09 Aug 2018 18:46:45 +0000</pubDate></item><item><title>Endpoint for react application</title><link>https://forum.prestashop.com/topic/1072220-endpoint-for-react-application/</link><description><![CDATA[<p>
	I'm interested in the ability to get information through the endpoints, is it possible to get information, for example, about the product in more detail, characteristics, reviews, options with prices, why the official api look, not full? or do you have to submit your own endpoint for each page?api look, not full? or do you have to submit your own endpoint for each page?
</p>
]]></description><guid isPermaLink="false">1072220</guid><pubDate>Thu, 05 Jan 2023 20:12:07 +0000</pubDate></item><item><title>Integrate React.js In Prestashop</title><link>https://forum.prestashop.com/topic/495685-integrate-reactjs-in-prestashop/</link><description><![CDATA[
<p>Hi, Prestashop community members <img src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" alt=":)" data-emoticon="" srcset="https://media.invisioncic.com/t336404/emoticons/smile@2x.png 2x" width="20" height="20" data-src="//media.invisioncic.com/t336404/emoticons/default_smile.png">. I've just started to play a bit with react.JS and now I would like to start using it with prestashop.</p>
<p> </p>
<p>The problem is that I can't get it to work for some reason :S. So far what I've done is:</p>
<p> </p>
<p>- Include react.js and react-dom.js in the js folder</p>
<p>- write a sample script with the type="text/babel" attribute</p>
<p> </p>
<p>But, when I save it nothing is displayed :S. I'm doing this in one on the .theme tpl files.</p>
<p> </p>
<p>If any developer is already working with react.JS on prestashop, hopefully you can help me to get it integrated.</p>
<p> </p>
<p>Thanks in advance <img src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" alt=":)" data-emoticon="" srcset="https://media.invisioncic.com/t336404/emoticons/smile@2x.png 2x" width="20" height="20" data-src="//media.invisioncic.com/t336404/emoticons/default_smile.png"></p>
]]></description><guid isPermaLink="false">495685</guid><pubDate>Thu, 31 Dec 2015 19:13:10 +0000</pubDate></item><item><title>Update Product Image Position via WebService API in PrestaShop 8.2.3 without Re-Upload (Possible?)</title><link>https://forum.prestashop.com/topic/1102460-update-product-image-position-via-webservice-api-in-prestashop-823-without-re-upload-possible/</link><description><![CDATA[<p>
	Hi PrestaShop Community,
</p>

<p>
	I'm developing an external app that integrates with PrestaShop 8.2.3 via WebService API to replace product images while maintaining the original position in the image gallery (e.g., replace image at position 3 without it going to the end).
</p>

<p>
	<strong>Current Setup</strong>: - PrestaShop version: 8.2.3 (localhost XAMPP setup).
</p>

<p>
	- API key with full permissions for products (GET/PUT) and images (GET/POST/DELETE).
</p>

<p>
	- Example: Product ID 2 has images [2, 30, 33, 36, 37, 38, 39, 40]. I want to replace ID 33 (position 3) with a new image (ID 41).
</p>

<p>
	What I've Tried (based on docs and forums):
</p>

<p>
	1. DELETE /images/products/2/33 (success, HTTP 200).
</p>

<p>
	2. POST /images/products/2 (new image ID 41 uploaded, but at last position).
</p>

<p>
	3. PUT /products/2 with minimal XML including &lt;associations&gt;&lt;images&gt; in desired order (e.g., &lt;image&gt;&lt;id&gt;2&lt;/id&gt;&lt;/image&gt;&lt;image&gt;&lt;id&gt;30&lt;/id&gt;&lt;/image&gt;&lt;image&gt;&lt;id&gt;41&lt;/id&gt;&lt;/image&gt;...), id, price, name, id_category_default. - Response: HTTP 200, but position ignored—new image still at end (order: 2, 30, 36, 37, 38, 39, 40, 41).
</p>

<p>
	4. Retries with sleep(10) and re-fetch image list before PUT—still fails.
</p>

<p>
	5. Full re-upload method (delete all, re-upload in order)—works but wasteful for bandwidth/time (app for multiple users).
</p>

<p>
	<strong>Question:</strong>
</p>

<p>
	Is there a way to update ps_image.position via API without re-uploading all images? (e.g., direct PUT on image resource or hidden param in associations/images?)
</p>

<p>
	Why is associations/images order ignored for new images? Any bug in 8.2.3?
</p>

<p>
	Any workaround (e.g., custom header, schema=blank, or override without DB access)?
</p>

<p>
	Similar thread: https://www.prestashop.com/forums/topic/1041234-update-product-images-position-and-not-image-via-webservice-api/ (from 2022, no resolution).
</p>

<p>
	Thanks for any help/suggestions! Code snippets or XML examples appreciated.
</p>
]]></description><guid isPermaLink="false">1102460</guid><pubDate>Mon, 06 Oct 2025 12:27:49 +0000</pubDate></item><item><title>Public API endpoint for product list in JSON?</title><link>https://forum.prestashop.com/topic/1101514-public-api-endpoint-for-product-list-in-json/</link><description><![CDATA[<p>
	Hi, I would like to know if PrestaShop provides a public endpoint to access the product catalog in JSON format of a site(without authentication). If yes, what is usually the default URL or way to access it?
</p>
]]></description><guid isPermaLink="false">1101514</guid><pubDate>Mon, 01 Sep 2025 16:46:21 +0000</pubDate></item><item><title>Prestashop 9 with Docker - Cannot connect with the DB</title><link>https://forum.prestashop.com/topic/1102377-prestashop-9-with-docker-cannot-connect-with-the-db/</link><description><![CDATA[<p>
	Hi, I'm trying to create a Prestashop container with Docker
</p>

<p>
	But when I'm reaching the DB page to connect, an error appear.
</p>

<p>
	At the beginning, I was thinking Prestashop ignore my `environment` variables, but I try to connect manually to the db and it work with
</p>

<p>
	`DB_USER:user` and `DB_PASSWORD:password`<a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_10/Capturedecran2025-10-02a16_19_27.png.0de20a278f5425e622a5258083c3876b.png" data-fileid="338971" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="338971" data-ratio="72.80" width="1000" alt="Capturedecran2025-10-02a16_19_27.thumb.png.1650c43e82aa94b6c34e2fbd383932dd.png" data-src="//media.invisioncic.com/t336404/monthly_2025_10/Capturedecran2025-10-02a16_19_27.thumb.png.1650c43e82aa94b6c34e2fbd383932dd.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	Databases Exists <span><span>:</span></span>
</p>

<p>
	<img class="ipsImage ipsImage_thumbnailed" data-fileid="338972" data-ratio="78.35" width="388" alt="Capturedecran2025-10-02a16_21_33.png.f10b04c6a9a357c793e140cdf5788879.png" data-src="//media.invisioncic.com/t336404/monthly_2025_10/Capturedecran2025-10-02a16_21_33.png.f10b04c6a9a357c793e140cdf5788879.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></p>

<p>
	But nothing seem to work
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_10/Capturedecran2025-10-02a16_30_25.png.606bcd68fc49b63278fa07e78b39c7e8.png" data-fileid="338973" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="338973" data-ratio="75.08" width="999" alt="Capturedecran2025-10-02a16_30_25.thumb.png.334ba7fe498484dcc9311009bbf5c162.png" data-src="//media.invisioncic.com/t336404/monthly_2025_10/Capturedecran2025-10-02a16_30_25.thumb.png.334ba7fe498484dcc9311009bbf5c162.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	Someone can help me ?
</p>
<p>
<a class="ipsAttachLink" href="https://forum.prestashop.com/applications/core/interface/file/attachment.php?id=338970&amp;key=70588b91ad48443a14ca44d4559c4613" data-fileExt='yml' data-fileid='338970' data-filekey='70588b91ad48443a14ca44d4559c4613'>docker-compose.yml</a></p>]]></description><guid isPermaLink="false">1102377</guid><pubDate>Thu, 02 Oct 2025 14:31:37 +0000</pubDate></item><item><title>Add product image in new order mail (Mail alert module 1.7)</title><link>https://forum.prestashop.com/topic/1000809-add-product-image-in-new-order-mail-mail-alert-module-17/</link><description><![CDATA[
<p>
	Hi,
</p>

<p>
	I need to add photo of the product in the email sent to the merchant by the mail alert module for new order.
</p>

<p>
	I'm using PS 1.7
</p>

<p>
	Is it possible ?
</p>

<p>
	Thanks a lot guys !
</p>
]]></description><guid isPermaLink="false">1000809</guid><pubDate>Thu, 05 Sep 2019 12:17:01 +0000</pubDate></item><item><title><![CDATA[500 Internal Server Error on Webservice API (JSON output & Order Status update)]]></title><link>https://forum.prestashop.com/topic/1101936-500-internal-server-error-on-webservice-api-json-output-order-status-update/</link><description><![CDATA[<p>
	Hello,<br />
	I am facing two main issues with the PrestaShop Webservice API while running PrestaShop in<strong> Docker container (local environment)</strong>.<br />
	 
</p>

<p>
	<strong>1. Authentication API with JSON format</strong>
</p>

<ul><li>
		When I call the API with output_format=JSON, it returns 500 Internal Server Error.
	</li>
	<li>
		The same request works fine with XML format.
	</li>
	<li>
		Example request (API key hidden for security):<br />
		 
		<blockquote class="ipsQuote" data-ipsquote="">
			<div class="ipsQuote_citation">
				Quote
			</div>

			<div class="ipsQuote_contents">
				<p>
					curl --location 'http://localhost:8080/api?output_format=JSON' \<br />
					--header 'Authorization: Basic &lt;API_KEY&gt;'
				</p>
			</div>
		</blockquote>

		<p>
			 
		</p>
	</li>
	<li>
		Response: 500 Internal Server Error
	</li>
	<li>
		Logs show no additional info (please guide where to check deeper logs if needed).<br />
		 
	</li>
</ul><p>
	<strong>2. Updating Order Status</strong>
</p>

<ul><li>
		My order flow is:
	</li>
	<li>
		Current status: <strong>Authorized</strong>
	</li>
	<li>
		I successfully updated to: Processing in Progress
	</li>
	<li>
		Next, when I try to update to: Shipped → I get 500 Internal Server Error.
	</li>
	<li>
		Same sequence works correctly when changing statuses inside the Back Office.
	</li>
	<li>
		API Request (simplified, key hidden):<br />
		 
		<blockquote class="ipsQuote" data-ipsquote="">
			<div class="ipsQuote_citation">
				Quote
			</div>

			<div class="ipsQuote_contents">
				<p>
					curl -X PUT 'http://localhost:8080/api/orders/ORDER_ID' \<br />
					-H 'Authorization: Basic &lt;API_KEY&gt;' \<br />
					-H 'Content-Type: application/xml' \<br />
					-d '&lt;prestashop&gt;...&lt;current_state&gt;&lt;![CDATA[4]]&gt;&lt;/current_state&gt;...&lt;/prestashop&gt;'
				</p>
			</div>
		</blockquote>

		<p>
			 
		</p>
	</li>
</ul><ul><li>
		Question: Is there a predefined sequence of allowed order status changes in the API?
	</li>
	<li>
		Or is this a bug with the Webservice, since the same transitions work in Back Office?<br />
		 
	</li>
</ul><p>
	<strong>Steps to Reproduce</strong>
</p>

<ol><li>
		Run PrestaShop in Docker (local mode).
	</li>
	<li>
		Create an order (status = Authorized).
	</li>
	<li>
		Use API to change status → Processing in Progress (works).
	</li>
	<li>
		Use API again to change status → Shipped (fails with 500).
	</li>
	<li>
		Try API call with output_format=JSON → also fails with 500.
	</li>
</ol><p>
	<strong>Environment</strong>
</p>

<ul><li>
		PrestaShop Version: 9
	</li>
	<li>
		Running in: Docker image (local)
	</li>
	<li>
		Mode: Developer
	</li>
</ul><p>
	<strong>Questions:</strong>
</p>

<ol><li>
		Why does the API fail with output_format=JSON while XML works?
	</li>
	<li>
		Is there a required/predefined sequence of order status transitions when using the API (different from Back Office)?<br />
		 
	</li>
</ol><p>
	Thank you in advance <span class="ipsEmoji">?</span>
</p>
]]></description><guid isPermaLink="false">1101936</guid><pubDate>Tue, 16 Sep 2025 05:17:33 +0000</pubDate></item><item><title>Symfony\Component\ErrorHandler\Error\ UndefinedMethodError in modules/hicookielaw/hicookielaw.php (line 95)</title><link>https://forum.prestashop.com/topic/1102161-symfonycomponenterrorhandlererror-undefinedmethoderror-in-moduleshicookielawhicookielawphp-line-95/</link><description><![CDATA[<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">Symfony\Component\ErrorHandler\Error\
UndefinedMethodError

in modules/hicookielaw/hicookielaw.php (line 95)
$this-&gt;name = 'hicookielaw';        $this-&gt;tab = 'front_office_features';        $this-&gt;version = '1.4.5';        $this-&gt;author = 'hipresta'; $this-&gt;need_instance = 0;        $this-&gt;secure_key = Tools::encrypt($this-&gt;name);        $this-&gt;bootstrap = true;        $this-&gt;module_key = 'ed785e289986ec635b77555b5ac57856';        parent::__construct();        $this-&gt;globalVars();        $this-&gt;displayName = $this-&gt;l('Cookie Law GDPR - France, Spain, Italy ...');</span></pre>

<p>
	 
</p>

<p>
	Getting this error when i try to upgrade prestashop 8.0.1 to 9 using update assistant. How to fix this ?
</p>

<p>
	Both backend and frontend not working.
</p>

<p>
	 
</p>

<p>
	Following error showing in front end
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">
Fatal error: Uncaught Error: Call to undefined method Tools::encrypt() in /home/myshop.com/html/modules/hicookielaw/hicookielaw.php:95 Stack trace: #0 [internal function]: HiCookieLaw-&gt;__construct() #1 /home/myshop.com/html/src/Core/Foundation/IoC/Container.php(124): ReflectionClass-&gt;newInstance() #2 /home/myshop.com/html/src/Core/Foundation/IoC/Container.php(154): PrestaShop\PrestaShop\Core\Foundation\IoC\Container-&gt;makeInstanceFromClassName() #3 /home/myshop.com/html/src/Core/Foundation/IoC/Container.php(167): PrestaShop\PrestaShop\Core\Foundation\IoC\Container-&gt;doMake() #4 /home/myshop.com/html/src/Adapter/ServiceLocator.php(70): PrestaShop\PrestaShop\Core\Foundation\IoC\Container-&gt;make() #5 /home/myshop.com/html/classes/module/Module.php(1364): PrestaShop\PrestaShop\Adapter\ServiceLocator::get() #6 /home/myshop.com/html/classes/module/Module.php(1343): ModuleCore::coreLoadModule() #7 /home/myshop.com/html/override/classes/module/Module.php(24): ModuleCore::getInstanceByName() #8 /home/myshop.com/html/classes/Hook.php(1066): Module::getExceptionsStatic() #9 /home/myshop.com/html/classes/controller/FrontController.php(957): HookCore::exec() #10 /home/myshop.com/html/classes/controller/Controller.php(315): FrontControllerCore-&gt;setMedia() #11 /home/myshop.com/html/classes/Dispatcher.php(487): ControllerCore-&gt;run() #12 /home/myshop.com/html/index.php(78): DispatcherCore-&gt;dispatch() #13 {main} thrown in /home/myshop.com/html/modules/hicookielaw/hicookielaw.php on line 95</span></pre>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1102161</guid><pubDate>Wed, 24 Sep 2025 09:23:43 +0000</pubDate></item><item><title>Upgrade prestashop 8.0.1 to prestashop_8.1.7</title><link>https://forum.prestashop.com/topic/1102058-upgrade-prestashop-801-to-prestashop_817/</link><description><![CDATA[<p>
	How to upgrade prestashop 8.0.1 to prestashop_8.1.7
</p>
]]></description><guid isPermaLink="false">1102058</guid><pubDate>Sat, 20 Sep 2025 05:31:07 +0000</pubDate></item><item><title>Force carrier option if ANY (and not all) product has it set</title><link>https://forum.prestashop.com/topic/1102106-force-carrier-option-if-any-and-not-all-product-has-it-set/</link><description><![CDATA[<p>
	Hello !
</p>

<p>
	 
</p>

<p>
	I am currently having the following problem:<br />
	Let's say I have 2 carriers: A and B, that do the following:
</p>

<p>
	1) A -&gt; delivers Small appliances
</p>

<p>
	2) B -&gt; delivers Large appliances
</p>

<p>
	3) B can also be used for small appliances <strong>if</strong> there is at least one large appliance in the order.<br />
	 
</p>

<p>
	The problem here is <strong>3)</strong>, because the default behavior of prestashop is to only display the carriers in common to all products. So in the case of an order that includes both small and large appliances, B carrier won't be available.
</p>

<p>
	The only "solution" that I could think of is add carrier B to small appliances and write some code on the shipping/cart-summary tpl's to hide them if there are no large appliances on the cart, but this seems highly inefficient and not very versatile.<br />
	Is there any way to basically force a carrier into the available carriers of the order, if <strong>any</strong> and not all products have that same carrier ?<br /><br />
	Any help or suggestions would be highly appreciated.<br />
	Simão Henriques
</p>
]]></description><guid isPermaLink="false">1102106</guid><pubDate>Mon, 22 Sep 2025 11:14:05 +0000</pubDate></item><item><title>Bug in Guest Checkout "Address" "Invoice address"</title><link>https://forum.prestashop.com/topic/1069083-bug-in-guest-checkout-address-invoice-address/</link><description><![CDATA[<p>
	There's is long pending unresolved bug in, i had re produced the bug in PS 1.7.8.0 to PS 1.7.8.7 it exists in multiple domains having fresh installation. this happens when you checkout with guest account. it take you to a page where nothing can be clicked and you have to go back one page, explained in the video.<br />
	it happens while creating an address and UNCKECK "Use this address for invoice too" .... another known bug here is that it create duplicate addresses as well. so afterwards when you try to edit any of the invoice as in the video.<br />
	it will take you to that dead end page, shown in the first screenshot.<br />
	i had checked for this issue on github even i had checked in PS 1.8 beta but there is no know fix for this.
</p>

<p>
	 
	</p><video class="ipsEmbeddedVideo" controls="" data-video-embed=""><source type="video/mp4" data-video-src="https://forum.prestashop.com/uploads/monthly_2022_10/194403168-c25ab778-a146-49a4-98fe-f4b67f7ec39b.mp4.6ceecb2384305d1bb9bc634f76f74fa9.mp4"><a class="ipsAttachLink" href="https://forum.prestashop.com/applications/core/interface/file/attachment.php?id=297309&amp;key=90c16702cc87184b273a90ae0aa81e01" data-fileid="297309" data-fileext="mp4" rel="">194403168-c25ab778-a146-49a4-98fe-f4b67f7ec39b.mp4</a>
	</source></video>
	 


<p>
	 
</p>

<p>
	Thanks
</p>

<p>
	Expected behavior
</p>

<p>
	When you edit an invoice/billing address as a guest it should go to the address edit page rather then the dead end page. (also multiple addresses should not be created when you uncheck "use this address for invoice too" )
</p>

<p>
	Steps to reproduce
</p>

<p>
	1. as a guest add a product to cart.
</p>

<p>
	2. Go to checkout page.
</p>

<p>
	3. In login continue as guest.
</p>

<p>
	4. create an address and continue .
</p>

<p>
	5. Go back to addresses and add new address and uncheck "use this address for invoice too" and save it.
</p>

<p>
	6. Again go back to addresses 1st know bug &gt; (you will see duplicates of that addresses).
</p>

<p>
	7. try to edit the selected invoice/billing address there and it will lead you to the dead end page.
</p>

<p>
	8. if you are not able to see the bug at first, Repeat the steps from 5 to 7 and you will see that dead end page.
</p>

<p>
	PrestaShop version(s) where the bug happened
</p>

<p>
	1.7.8.7 PHP version(s)  7.2
</p>
]]></description><guid isPermaLink="false">1069083</guid><pubDate>Fri, 07 Oct 2022 18:33:35 +0000</pubDate></item><item><title>Invalid token on back office with load balancer 1.7.4.0</title><link>https://forum.prestashop.com/topic/951381-invalid-token-on-back-office-with-load-balancer-1740/</link><description><![CDATA[
<p>
	Hello,
</p>

<p>
	We tried to activate load balancing on AWS for our site on Prestashop 1.7.4.0.
</p>

<p>
	Everything is working fine on the front office but in the back office, especially in the Advanced parameters section, we keep getting Invalid token error messages and infinite redirects. We are unable to use load balancing if we want to work on the back office.
</p>

<p>
	Do you have any idea what the problem is ? 
</p>
]]></description><guid isPermaLink="false">951381</guid><pubDate>Wed, 09 Jan 2019 16:25:36 +0000</pubDate></item><item><title>Table "specific_price"</title><link>https://forum.prestashop.com/topic/1101900-table-specific_price/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	I am still using PS 1.7.7.3 (sorry).
</p>

<p>
	I am adding a special price with "Db::getInstance()-&gt;insert('specific_price', $data);". Database entry looks perfect/ Admin-backend entry, too.
</p>

<p>
	The problem: There is no price change in the shop front. If I add a (second) special price with the admin site, save and delete this, then the first manually added special price is correctly shown in the frontend. I guess it's a cache problem? So I tried:
</p>

<p>
	Product::flushCache($id_product);<br />
	Product::updatePrice($id_product);<br />
	Product::clearProductCache($id_product);
</p>

<p>
	... but no luck.
</p>

<p>
	Can anyone help me what to do? Thank you very much!
</p>

<p>
	Best regards,
</p>

<p>
	Holger
</p>
]]></description><guid isPermaLink="false">1101900</guid><pubDate>Sat, 13 Sep 2025 19:12:44 +0000</pubDate></item><item><title>incorrect quantity of customized products</title><link>https://forum.prestashop.com/topic/1087076-incorrect-quantity-of-customized-products/</link><description><![CDATA[<p>
	HI
</p>

<p>
	I have a problem with the quantity of products with customization,<br />
	I practically double the quantity but only in the BO<br />
	in the cart and in the customer order (front) it is correct, in the cart and order BO is doubled, he takes the quantity from the "ps_customization" table and I notice that it has been saved doubled not 35 but 70
</p>

<p>
	Can you please tell me in which file it is saved, so as to check why it doubles it
</p>

<p>
	I attach an example of the shopping cart in BO
</p>

<p>
	thanks
</p>

<p>
	Ilario
</p>

<p><a href="//media.invisioncic.com/t336404/monthly_2024_05/carrellospesa.png.b122e8330863a9971e33bdafd3be9b8c.png" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="322872" src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2024_05/carrellospesa.thumb.png.92f4ed429cd7fe1326e4d49f8695f963.png" data-ratio="77.7" width="1000" class="ipsImage ipsImage_thumbnailed" alt="carrello spesa.png"></a></p>]]></description><guid isPermaLink="false">1087076</guid><pubDate>Sat, 04 May 2024 07:34:14 +0000</pubDate></item><item><title>"Available for order/Categories" is a setting issue</title><link>https://forum.prestashop.com/topic/1101653-available-for-ordercategories-is-a-setting-issue/</link><description><![CDATA[<p>
	When adding products, which field in the XML should I set the "Available for order" option in? Why can't it be enabled by default? Also, how do I set inventory in the submitted XML? Why can't the product Categories I set be displayed correctly when editing products in the backend? How should these three items be set in the XML? In which field? What values should be set? Please help me with an example
</p>
]]></description><guid isPermaLink="false">1101653</guid><pubDate>Fri, 05 Sep 2025 01:53:20 +0000</pubDate></item><item><title>[Solved] Show product combination weight</title><link>https://forum.prestashop.com/topic/988662-solved-show-product-combination-weight/</link><description><![CDATA[
<p>
	Hello everyone,
</p>

<p>
	I'm working on prestashop 1.7.5.0 and I want to show the product weight on the product page.
</p>

<p>
	I found that {$product-&gt;weight} was available and its working fine.
</p>

<p>
	When it comes to combinations, its not the same though. {$combination-&gt;weight} isnt working nor does {$product_attribute.weight}. Is there any way or a smarty variable to show the combination weight on the product page ? 
</p>

<p>
	Thank you <span><img alt=":)" data-emoticon="" data-src="https://forum.prestashop.com/uploads/emoticons/default_smile.png" height="20" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" srcset="https://media.invisioncic.com/t336404/emoticons/smile@2x.png 2x" style="height:auto;" title=":)" width="20" /></span>
</p>
]]></description><guid isPermaLink="false">988662</guid><pubDate>Mon, 03 Jun 2019 12:00:32 +0000</pubDate></item><item><title>Quick Order page not showing Total Products and Total price after Stripe module installation</title><link>https://forum.prestashop.com/topic/1101279-quick-order-page-not-showing-total-products-and-total-price-after-stripe-module-installation/</link><description><![CDATA[<p>
	Hey,
</p>

<p>
	I have an issue in my quick-order page. The issue case after installing Stripe payment module. After the added payment modules, product add to session cart time total showing null.
</p>

<p>
	Ajax shopping cart is showing correct prices and other details but Quick-Order page is not showing 'Total products (tax excl.)' and Total.
</p>

<p>
	After checking the code I came to know that $cart-&gt;getSummaryDetails is returning null.
</p>

<p>
	Hence showing nothing in:
</p>

<p>
	<strong>Total products (tax excl.)</strong> and <strong>Total</strong> 
</p>

<p>
	 
</p>

<p>
	Also adding or subtracting the cart products quantity doesnt refresh the page automatically and I have to manually refresh the page to refresh the quantity on the page.  
</p>

<p>
	 
</p>

<p>
	I am using PS 1.6.1.4. Please see attached screenshots for your reference.
</p>

<p>
	how can i solve this error please help me...
</p>

<p>
	I am having the same issue not after adding Stripe module on my PS 1.6.1.4 website. Did you manage to find the solution as I am still having the same issue even after uninstalling and deleting the module folder .
</p>

<p>
	 
</p>

<p>
	Anyone can help me with this as I have already spent hours in finding the fix.
</p>

<p>
	 
</p>

<p>
	Thanks
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_08/Screenshot2025-08-22230422.png.362cadadd25aa38ef8144c6c64e5a93a.png" data-fileid="338044" data-fileext="png" rel=""><img alt="Screenshot 2025-08-22 230422.png" class="ipsImage ipsImage_thumbnailed" data-fileid="338044" data-ratio="37.6" style="height:auto;" width="1000" data-src="//media.invisioncic.com/t336404/monthly_2025_08/Screenshot2025-08-22230422.thumb.png.014af2bb30352234ae0c357be081915d.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>
]]></description><guid isPermaLink="false">1101279</guid><pubDate>Sat, 23 Aug 2025 21:31:54 +0000</pubDate></item><item><title>[FREE Module] Display customization block below combinations on product page</title><link>https://forum.prestashop.com/topic/1101477-free-module-display-customization-block-below-combinations-on-product-page/</link><description><![CDATA[<p>
	Hey everyone!
</p>

<p>
	I noticed that many users on this forum (including myself) were looking for a solution to move the customization block <strong>below</strong> combinations on the product page (e.g. <a href="https://forum.prestashop.com/topic/667985-customization-field-on-product-page-issue/" rel="">this post</a>, <a href="https://forum.prestashop.com/topic/594404-move-position-of-product-customization-block-not-work/" rel="">that post</a>, <a href="https://forum.prestashop.com/topic/770780-move-product-customization-block-to-another-position-17/" rel="">this post</a> and <a href="https://forum.prestashop.com/topic/1082033-moving-attributes-above-customization-block/" rel="">another post</a>).
</p>

<p>
	I developed a cool little module that fixes it! Once installed, the product customization block will be displayed <strong>below</strong> the product combinations and <strong>just above</strong> the product price / "Add to Cart" button. 
</p>

<p>
	It's lightweight, works with <strong>PrestaShop 1.7+ themes</strong>, and is easy to install via the module manager. It does <strong>not</strong> alter the "Add to Cart" flow and customisation feature - I tested thoroughly on the shop I am setting up for a business owner.
</p>

<p>
	Here are a few <strong>before / after</strong> screenshots from my webshop with the module enabled.
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image ipsAttachLink_left" data-fileext="png" data-fileid="338191" href="//media.invisioncic.com/t336404/monthly_2025_08/Screenshot2025-08-31at9_50_38am.png.d84b6eface4d16e1afa6e641631fca7c.png" rel="" style="float:left;"><img alt="Screenshot2025-08-31at9_50_38am.thumb.png.ad606503354f231f050f3a3917212d80.png" class="ipsImage ipsImage_thumbnailed" data-fileid="338191" data-ratio="65.57" style="width:758px;height:auto;" width="1000" data-src="//media.invisioncic.com/t336404/monthly_2025_08/Screenshot2025-08-31at9_50_38am.thumb.png.ad606503354f231f050f3a3917212d80.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	I hope that you will this module useful, and if you feel like saying thanks, you can always <a href="https://buymeacoffee.com/qphoria" rel="external nofollow">offer me a coffee</a> <span class="ipsEmoji">☕</span> <span class="ipsEmoji">?</span>
</p>

<p>
	Have a kick-ass day,
</p>

<p>
	Quentin
</p>

<p>
	<a class="ipsAttachLink" data-fileext="zip" data-fileid="338193" href="https://forum.prestashop.com/applications/core/interface/file/attachment.php?id=338193&amp;key=642c8077d4ed13d9bbc29f91f2afee80" rel="">showcustomizationbelowcombinations.zip</a>
</p>
]]></description><guid isPermaLink="false">1101477</guid><pubDate>Sun, 31 Aug 2025 00:52:16 +0000</pubDate></item><item><title>Errors on front and back ends after upgrading to v9.0</title><link>https://forum.prestashop.com/topic/1099568-errors-on-front-and-back-ends-after-upgrading-to-v90/</link><description><![CDATA[<p>
	Hi - I have updated my staging site from Prestashop v8.2 to v9.0 successfully but have the following errors when trying to access the site:
</p>

<p>
	At the frontend:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">Fatal error: Uncaught Error: Call to undefined method Tools::link_rewrite() in /home/stage/testsites/test/modules/smartblog/smartblog.php:1422 Stack trace: #0 /home/stage/testsites/test/modules/smartblog/smartblog.php(1381): smartblog-&gt;smartBlogRoutes() #1
/home/stage/testsites/test/classes/Hook.php(1251): smartblog-&gt;hookModuleRoutes(Array) #2
/home/stage/testsites/test/classes/Hook.php(462): HookCore::coreCallHook(Object(smartblog), 'hookModuleRoute...', Array) #3
/home/stage/testsites/test/classes/Hook.php(1142): HookCore::callHookOn(Object(smartblog), 'moduleRoutes', Array) #4
/home/stage/testsites/test/classes/Dispatcher.php(587): HookCore::exec('moduleRoutes', Array, NULL, true, false) #5
/home/stage/testsites/test/classes/Dispatcher.php(238): DispatcherCore-&gt;loadRoutes() #6
/home/stage/testsites/test/classes/Dispatcher.php(196): DispatcherCore-&gt;__construct(Object(Symfony\Component\HttpFoundation\Request)) #7
/home/stage/testsites/test/index.php(78): DispatcherCore::getInstance() #8
{main} thrown in /home/stage/testsites/test/modules/smartblog/smartblog.php on line 1422</span></pre>

<p>
	At the backend
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">Notice: SessionHandler::gc(): ps_files_cleanup_dir: opendir(/var/cpanel/php/sessions/ea-php81) failed: Permission denied (13)</span></pre>

<p>
	and
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">Notice: SessionHandler::gc(): ps_files_cleanup_dir: opendir(/var/cpanel/php/sessions/ea-php83) failed: Permission denied (13)</span></pre>

<p>
	 
</p>

<p>
	ea-php81 is used by my live site without any problems.
</p>

<p>
	The ownership and permissions of ea-php81 and ea-php83 are the same and look correct to me.
</p>

<p>
	Any ideas on what I should do to try and resolve this?
</p>
]]></description><guid isPermaLink="false">1099568</guid><pubDate>Mon, 23 Jun 2025 17:18:16 +0000</pubDate></item><item><title>Mod Prestashop 1.7.8.11 New Discount Restriction : Payment Method</title><link>https://forum.prestashop.com/topic/1101418-mod-prestashop-17811-new-discount-restriction-payment-method/</link><description><![CDATA[<p>
	Hi, on the B2B side we use a cash/early-payment discount — a % off if the customer pays upfront (card or bank transfer), since we have another module for Net-30 payments.
</p>

<p>
	To encourage immediate payment we offer a discount. The thing is, PrestaShop doesn’t provide a condition based on payment method. (Maybe in v8 or v9 — I haven’t checked.)
</p>

<p>
	I tested plenty of modules and either they don’t work or they’re not reliable.
</p>

<p>
	So I built it myself with ChatGPT-5 and it took me two days! Figured I’d share it.
</p>

<p>
	Heads-up: these are core edits — I didn’t make an override, but I documented everything — and we’re on the latest stable 1.7: 1.7.8.11.
</p>

<p>
	I’m using a custom theme and several modules, so if you want to try it, definitely don’t do it in production!
</p>

<p>
	In the back office it looks like this: (payment method selection). I made sure to keep the same workflow as the other conditions.
</p>

<p>
	If the upload doesn’t work, PM me. <a class="ipsAttachLink" data-fileid="o_1j3ouu5tu5ler9j1dv6s611qu4k" href="https://forum.prestashop.com/applications/core/interface/file/attachment.php?id=o_1j3ouu5tu5ler9j1dv6s611qu4k" rel="">modif.txt</a>
</p>

<p>
	That’s it, hope it helps some of you. Personally I wish I’d had this, so I’m sharing. You end up with a new payment-based restriction, and that’s it — the rest behaves like the stock feature. And in the cart, when you switch payment methods it updates instantly via JS.
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_08/screenshot.png.ce6620ce6f72f49221cb537aed571d69.png" data-fileid="338145" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="338145" data-ratio="51.00" width="1000" alt="screenshot.thumb.png.86bfd435846d0f7a354e039a9484a907.png" data-src="//media.invisioncic.com/t336404/monthly_2025_08/screenshot.thumb.png.86bfd435846d0f7a354e039a9484a907.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>
]]></description><guid isPermaLink="false">1101418</guid><pubDate>Thu, 28 Aug 2025 18:27:51 +0000</pubDate></item><item><title>Product Customization fields</title><link>https://forum.prestashop.com/topic/1047723-product-customization-fields/</link><description><![CDATA[
<p>
	Hello everyone,
</p>

<p>
	This is my first forum post here. <span><img alt=":)" data-emoticon="" height="20" src="https://media.invisioncic.com/t336404/emoticons/default_smile.png" srcset="https://media.invisioncic.com/t336404/emoticons/smile@2x.png 2x" title=":)" width="20" /></span><br /><span>I have a multi-shop Prestashop (1.7.5.2) site with two subdomains (shop1 &amp; shop2).</span>
</p>

<p>
	<span>The problem I am facing: </span>
</p>

<p>
	<span>On shop1, when I go to Back-Office -&gt; Catalogue -&gt; Products -&gt; Product choose -&gt; Options tab -&gt; Customization Head </span>
</p>

<p>
	<span>and enter the some Customization text as a Text Field for one shop (check screenshot attached). <strong>On saving,</strong> <strong>it gets saved but the Text Field disappears from the shop2. </strong>The same behavior occurs when I save the Text Field from the shop2. I cannot simultaneously have the Customization text fields on both shops.</span>
</p>

<p>
	(The same issue occurs on Prestashop version 1.7.7 also)
</p>

<p>
	<span>I looked into the code and found that in `src/Adapter/Product/AdminProductWrapper.php` the following function calls delete all other text fields than the ones currently entered.</span>
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted">
<span class="pln">$product</span><span class="pun">-&gt;</span><span class="pln">softDeleteCustomizationFields</span><span class="pun">(</span><span class="pln">$customization_ids</span><span class="pun">);</span><span class="pln"> </span><span class="com">// and</span><span class="pln">
</span><span class="typ">Customization</span><span class="pun">::</span><span class="pln">deleteCustomizationFieldLangByShop</span><span class="pun">(</span><span class="pln">$customizationFiled</span><span class="pun">[</span><span class="str">'id_customization_field'</span><span class="pun">],</span><span class="pln"> $shopList</span><span class="pun">);</span></pre>

<p>
	<br />
	I could not find how to fix it though. <span><img alt=":(" data-emoticon="" height="20" src="https://media.invisioncic.com/t336404/emoticons/default_sad.png" srcset="https://media.invisioncic.com/t336404/emoticons/sad@2x.png 2x" title=":(" width="20" /></span>
</p>

<p>
	Can anyone please help me with this asap? I'll be highly grateful.
</p>

<p>
	 
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="271366" href="//media.invisioncic.com/t336404/monthly_2021_04/2021-04-26_11-49.png.858ae216503654e11c89486acfc7d677.png" rel=""><img alt="2021-04-26_11-49.png" class="ipsImage ipsImage_thumbnailed" data-fileid="271366" data-ratio="93.98" style="height:auto;" width="798" data-src="https://forum.prestashop.com/uploads/monthly_2021_04/2021-04-26_11-49.thumb.png.bf7c396018ccf3be55b6daac212dfc46.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>
]]></description><guid isPermaLink="false">1047723</guid><pubDate>Mon, 26 Apr 2021 10:09:49 +0000</pubDate></item><item><title>Add to cart total price showing null</title><link>https://forum.prestashop.com/topic/447837-add-to-cart-total-price-showing-null/</link><description><![CDATA[
<p>I try to add payment modules, after the added payment modules,product add to session cart time total showing null and </p>
<p><strong>Total products (tax incl.) </strong><span style="color:rgb(119,119,119);font-family:inherit;font-size:13px;margin:0px;font-style:inherit;font-weight:inherit;">null </span></p>
<div style="margin:0px;font-family:Arial, Helvetica, sans-serif;font-size:13px;color:rgb(119,119,119);">
<strong>Total (tax incl.) </strong><span style="margin:0px;font-family:inherit;font-style:inherit;font-weight:inherit;">null</span>
</div>
<div style="margin:0px;font-family:Arial, Helvetica, sans-serif;font-size:13px;color:rgb(119,119,119);"> </div>
<div style="margin:0px;font-family:Arial, Helvetica, sans-serif;font-size:13px;color:rgb(119,119,119);"><span style="margin:0px;font-family:inherit;font-style:inherit;font-weight:inherit;">how can i solve this error please help me...</span></div>
<p><a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_06_2015/post-955382-0-37530800-1434541893.png" data-fileid="129194" rel=""><img src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-fileid="129194" class="ipsImage ipsImage_thumbnailed" alt="post-955382-0-37530800-1434541893_thumb.png" data-src="//media.invisioncic.com/t336404/monthly_06_2015/post-955382-0-37530800-1434541893_thumb.png" width="100" data-ratio="34"></a></p>
]]></description><guid isPermaLink="false">447837</guid><pubDate>Wed, 17 Jun 2015 11:51:39 +0000</pubDate></item><item><title>Translations</title><link>https://forum.prestashop.com/topic/1101236-translations/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	On PrestaShop 8.2.2, my translations are not being applied.
</p>

<p>
	Some of them seem to show up when I manually clear the caches, only to disappear again afterwards (and not all of them, to be clear). For example, I fully translated the native GDPR module in PrestaShop without success.
</p>

<p>
	The latest version 8.2.2 is supposed to fix this issue, but not on my end. I also applied the following patch, otherwise I was getting an “Undefined” error when accessing the translations of my Warehouse theme:
</p>

<p>
	<a href="https://github.com/PrestaShop/PrestaShop/pull/34602/files" rel="external nofollow">https://github.com/PrestaShop/PrestaShop/pull/34602/files</a>
</p>

<p>
	Any idea, anyone? I’m going crazy here.
</p>
]]></description><guid isPermaLink="false">1101236</guid><pubDate>Fri, 22 Aug 2025 10:06:28 +0000</pubDate></item><item><title>CLI backup Prestashop 8 [SOLVED]</title><link>https://forum.prestashop.com/topic/1101213-cli-backup-prestashop-8-solved/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	did someone give a try to backup commands as explained on this page:
</p>

<p>
	<a href="https://devdocs.prestashop-project.org/8/basics/keeping-up-to-date/update/update-from-the-cli/#backupcreate-command" rel="external nofollow">https://devdocs.prestashop-project.org/8/basics/keeping-up-to-date/update/update-from-the-cli/#backupcreate-command</a>
</p>

<p>
	Maybe I missed something, but when I use
</p>

<pre class="ipsCode">php bin/console backup:create myadminfolder --include-images=1</pre>

<p>
	I get
</p>

<pre class="ipsCode">There are no commands defined in the "backup" namespace.  
                                                           
2025-08-21T14:01:13+02:00 [info] User Deprecated: The "PrestaShop\PrestaShop\Adapter\StockManager" class implements "PrestaShopBundle\Service\DataProvider\StockInterface" that is deprecated since 8.1 and will be removed in next major.
2025-08-21T14:01:13+02:00 [info] User Deprecated: prestashop.adapter.legacy_db service is deprecated and will be removed in 8.0.
2025-08-21T14:01:13+02:00 [info] User Deprecated: Not specifying the optional ShopConstraint parameter is deprecated since version 1.7.8.0
2025-08-21T14:01:13+02:00 [info] User Deprecated: Not specifying the optional ShopConstraint parameter is deprecated since version 1.7.8.0
2025-08-21T14:01:13+02:00 [info] User Deprecated: Not specifying the optional ShopConstraint parameter is deprecated since version 1.7.8.0
2025-08-21T14:01:13+02:00 [info] User Deprecated: Not specifying the optional ShopConstraint parameter is deprecated since version 1.7.8.0
2025-08-21T14:01:13+02:00 [info] User Deprecated: Not specifying the optional ShopConstraint parameter is deprecated since version 1.7.8.0
2025-08-21T14:01:13+02:00 [info] User Deprecated: __construct is deprecated since version 8.1 and will be removed in the next major version.
2025-08-21T14:01:13+02:00 [info] User Deprecated: Since api-platform/core 2.7: The service "ApiPlatform\Core\Bridge\Symfony\Routing\IriConverter" is deprecated, use ApiPlatform\Symfony\Routing\IriConverter instead.</pre>

<p>
	(Up to now my backups use simple commands such as
</p>

<pre class="ipsCode">tar -czvf backup_2025-08-21.tar.gz ../public_html
mysqldump -u usernameofthedb -p --lock-tables --add-drop-table --databases psdbname &gt; psdb.sql
tar -czvf backup_db_2025-08-21.tar.gz psdb.sql</pre>

<p>
	Does someone habe better ideas?)
</p>

<p>
	Thank you.
</p>

<p>
	 
</p>

<p>
	My config:
</p>

<p>
	Prestashop 8.2.1
</p>

<p>
	PHP 8.1
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1101213</guid><pubDate>Thu, 21 Aug 2025 12:23:59 +0000</pubDate></item><item><title>Webhooks?</title><link>https://forum.prestashop.com/topic/372619-webhooks/</link><description><![CDATA[
<p>Is there any such thing in PrestaShop?</p>
<p> </p>
<p>By which I mean, is there anywhere I can set a pre-defined URL to POST data upon a PrestaShop action such as creating a new order.</p>
<p> </p>
<p>Scenario:</p>
<ol><li>User places order</li>	<li>Webhook is fired and POSTS the order data to a pre-defined URL such as <a href="http://www.example.com/incoming" rel="external nofollow">http://www.example.com/incoming</a>	</li>
<li>Data is then parsed and synchronised with our stock control services.</li>
</ol><p> </p>
<p>The only way I can think of doing this is extending the OrderDetailCore class and adding in the hook manually using cURL. Something like:</p>
<pre class="ipsCode prettyprint">
class OrderDetail extends OrderDetailCore {
    public function create(Order $order, Cart $cart, $product, $id_order_state, $id_order_invoice, $use_taxes = true, $id_warehouse = 0) {
        parent::create($order, $cart, $product, $id_order_state, $id_order_invoice, $use_taxes, $id_warehouse);
        $ch=curl_init();
        curl_setopt($ch, CURLOPT_URL, 'http://www.example.com/incoming');
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $product);
        $reply=curl_exec($ch);
        curl_close($ch);
    }
}
</pre>
]]></description><guid isPermaLink="false">372619</guid><pubDate>Thu, 23 Oct 2014 12:49:25 +0000</pubDate></item><item><title>Widget Link (ps_linklist) - How can I order links?</title><link>https://forum.prestashop.com/topic/614325-widget-link-ps_linklist-how-can-i-order-links/</link><description><![CDATA[
<p>Hello, </p>
<p>how can I reorder the links in the the native module "Widget link" (folder module/ps_linklist)</p>
<p> </p>
<p>I'm using prestashop 1.7.1.</p>
<p> </p>
<p>Thanks! </p>
]]></description><guid isPermaLink="false">614325</guid><pubDate>Thu, 08 Jun 2017 13:35:05 +0000</pubDate></item><item><title>Potential Issue "If no employee is assigned in the context, cart ID must be provided to this method."</title><link>https://forum.prestashop.com/topic/1085601-potential-issue-if-no-employee-is-assigned-in-the-context-cart-id-must-be-provided-to-this-method/</link><description><![CDATA[<p>
	Hi guys,
</p>

<p>
	 
</p>

<p>
	I run an eCommerce store using Prestashop, and I noticed if using the language / currency switching system while having any item in the cart, I would get the following error "If no employee is assigned in the context, cart ID must be provided to this method." - I didn't see much of this online so I thought id post about it to see if this was a common issue.
</p>

<p>
	 
</p>

<p>
	The way I worked around this fault was by going into the classes/Product.php file and removing the line, this seemed to stop the error page displaying, however I obviously don't know if this will cause issues down the line?
</p>

<p>
	 
</p>

<p>
	Any ideas here are much appreciated.
</p>

<p>
	 
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1085601</guid><pubDate>Tue, 12 Mar 2024 13:06:11 +0000</pubDate></item><item><title>how can i publish the price in 2 different currencies at same time?</title><link>https://forum.prestashop.com/topic/170209-how-can-i-publish-the-price-in-2-different-currencies-at-same-time/</link><description><![CDATA[
<p>how can i do something like this?<a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_05_2012/post-343850-0-13552800-1337644881.jpg" data-fileid="52902" rel=""><img src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-fileid="52902" class="ipsImage ipsImage_thumbnailed" alt="post-343850-0-13552800-1337644881_thumb.jpg" data-src="//media.invisioncic.com/t336404/monthly_05_2012/post-343850-0-13552800-1337644881_thumb.jpg" width="100" data-ratio="30"></a><br>i mean, how can i show 2 different currencies at same time in one article?<br>Thank you for your answers!</p>
<p> </p>
<p><span style="font-size:48px;"><span style="color:#00ff00;"><strong>SOLVED!</strong></span></span></p>
<p>i decided to use vekia's module: <a href="https://mypresta.eu/modules/front-office-features/show-price-in-different-currencies-at-the-same-time.html" rel="external nofollow">show price in many currencies</a>. Mainly because of fact that it works well with quantity discounts (when i increase / decrease quantity of product) and combinations that affects price.</p>
]]></description><guid isPermaLink="false">170209</guid><pubDate>Tue, 22 May 2012 00:02:18 +0000</pubDate></item><item><title>Custom ModuleAdminController</title><link>https://forum.prestashop.com/topic/330790-custom-moduleadmincontroller/</link><description><![CDATA[
<p>Hi,</p>
<p> </p>
<p>I have a module which displays table in DisplayAdminProductsExtra hook, and there are links to another controller extending ModuleAdminController.</p>
<p> </p>
<p>Controller is in my_module/controllers/admin/</p>
<p> </p>
<p>link is: index.php?controller=AdminDetailSpecificationTables</p>
<p> </p>
<p>It didn't work for first time - but I've created link to the menu tab and now it works (strange)</p>
<p> </p>
<p>However, controller is loaded, but not template.</p>
<p> </p>
<p>When I use $this-&gt;setTemplate('display.tpl'); and my template is in my_module/views/templates/admin/display.tpl</p>
<p> </p>
<p>It showss me this error:</p>
<p><strong>Unable to load template file 'D:\wamp\www\xxx\adminyyyy/themes/default\template\display.tpl'</strong></p>
<p> </p>
<p>which is a little bit strange, url is broken. I am getting frustrated.</p>
<p> </p>
<p>If you could help, I would really appreciate it <img src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" alt=":)" data-emoticon="" srcset="https://media.invisioncic.com/t336404/emoticons/smile@2x.png 2x" width="20" height="20" data-src="//media.invisioncic.com/t336404/emoticons/default_smile.png"></p>
<p> </p>
<p>Thanks!</p>
]]></description><guid isPermaLink="false">330790</guid><pubDate>Thu, 15 May 2014 13:44:47 +0000</pubDate></item><item><title>Display margin missing</title><link>https://forum.prestashop.com/topic/1100675-display-margin-missing/</link><description><![CDATA[<p>
	Dear forum,
</p>

<p>
	I have the following question. For two days now, my back office view has changed, and I can no longer see the margin in the Price section when entering my purchase and sales prices. Can anyone help me? Does anyone know what's causing this, or is the margin field somewhere else now? I would appreciate any help.
</p>
]]></description><guid isPermaLink="false">1100675</guid><pubDate>Fri, 01 Aug 2025 07:18:28 +0000</pubDate></item><item><title>Prestashop 9 on Azure - cannot connect to DB [Solved]</title><link>https://forum.prestashop.com/topic/1100422-prestashop-9-on-azure-cannot-connect-to-db-solved/</link><description><![CDATA[<p>
	Just trying to get prestashop running on azure, I've tried many times unfortunately without success, the issue is always the same:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="pln">Database Server is not found. Please verify the login, password and server fields (DbPDO)</span></pre>

<p>
	I've tried:
</p>

<ul><li>
		azure app service &gt; web app + database
	</li>
	<li>
		azure app service &gt; web app + database &gt; then correcting the database collation to utf8mb4
	</li>
	<li>
		azure app service &gt; web app + database &gt; then creating a new database
	</li>
	<li>
		azure app service &gt; web app + database &gt; using service connectors
	</li>
</ul><p>
	what works:
</p>

<ul><li>
		I've created a simple PHP page that connects to the database and I can have a successful connections
	</li>
</ul><p>
	now I'm trying to setup my own ubuntu server VM with LAMP stack, but I'm not an expert here so going through the process is really hard.
</p>

<p>
	does anyone have any idea on solving the connection issue?
</p>

<p>
	 
	</p><p>
		Solution:
	</p>


<ul><li>
		open azure portal https://portal.azure.com
	</li>
	<li>
		got to your resource group
	</li>
	<li>
		go to your database server, from here we are doing 2 things
		<ul><li>
				update server wide settings
				<ul><li>
						from the database server, on the left go to the "Server parameters"
					</li>
					<li>
						make sure the following settings have these values:
					</li>
					<li>
						character_set_server: UTF8MB4
					</li>
					<li>
						collation_server: UTF8MB4_0900_AI_CI
					</li>
					<li>
						require_secure_transport: OFF (THIS IS IMPORTANT)
					</li>
				</ul></li>
			<li>
				update database specific settings
				<ul><li>
						from the database server, on the left go to the "Databases" section
					</li>
					<li>
						here you'll find the database that Azure created for you
					</li>
					<li>
						be sure that:
						<ul><li>
								Character Set is utf8mb4
							</li>
							<li>
								Collation is:utf8mb4_general_ci
							</li>
						</ul></li>
					<li>
						if the database created by azure doesn't have these settings:
						<ul><li>
								write down the database name
							</li>
							<li>
								delete the old database (you'll not be able to use it anyway)
							</li>
							<li>
								create a new database clicking on "create" and create a new database with the settings above
								<ul><li>
										use the same name used for the old database
									</li>
									<li>
										if you didn't use the same name you choose to:
										<ul><li>
												delete the database again, a create it again with the name used by azure
											</li>
											<li>
												or give it a new name
												<ul><li>
														if you give it a new name then now we need to update the web application to point to the new database:
														<ul><li>
																go to your web application inside the resource group
															</li>
															<li>
																on the left menu go to settings &gt; configuration
															</li>
															<li>
																on the top a message will appear: "View and edit your application settings and connection strings from Environment variables. Click here to go to Environment Variables menu"
															</li>
															<li>
																click to see the environment variables
															</li>
															<li>
																update the AZURE_MYSQL_DBNAME variable with the name of the new database
															</li>
														</ul></li>
												</ul></li>
										</ul></li>
								</ul></li>
						</ul></li>
				</ul></li>
			<li>
				now on the prestashop installation page you MUST select to not use SSL
			</li>
			<li>
				then you'll be able to connect
			</li>
		</ul></li>
</ul>]]></description><guid isPermaLink="false">1100422</guid><pubDate>Wed, 23 Jul 2025 12:52:10 +0000</pubDate></item><item><title>Prestashop 1.7.5.1 vulnerabilities still present - where do those come from?</title><link>https://forum.prestashop.com/topic/1095068-prestashop-1751-vulnerabilities-still-present-where-do-those-come-from/</link><description><![CDATA[<p>
	Hi everyone,
</p>

<p>
	prestashop 1.7.5.1, php 7.3
</p>

<p>
	I am in the process to migrate to prestashop 8.2 php 8.xx and mysql upgrade.
</p>

<p>
	In the meantime, I have an issue in the website that is still running until the migration is completed.
</p>

<p>
	I have found out that in /img directory appear a PNG image, usually something like GbhdU.png, arriving from nowhere.
</p>

<p>
	And in /classes/controller FrontController.php and Controller.php get injected of some code, a function that is called jscheck($html,$p), where $p, at the end of the story is exactly that image, that in fact is a javascript code encoded base64.
</p>

<p>
	Yes, I have simply opened that png whit notepad and decoded it base64.
</p>

<p>
	And that is fine, I have searched the net, fixed the modules, upgrades, deleted the modules I do not use, I think I have done everything.
</p>

<p>
	Some mysql cleaning too. (changed passwords of course, first thing).
</p>

<p>
	I must say that the site is now really fast, the backend is really fast. That experience forced me to deep cleaning the site and I discovered that Prestashop was not heavy and dramatically slow even in the back end operation because of the old version, old php, old things.
</p>

<p>
	It can run really fast and perform really good. It was a ton of dirty code injected and now clean.
</p>

<p>
	I know how to clean it.
</p>

<p>
	But here is the BIG question:
</p>

<p>
	How it happen that everyday in random hour that PNG image/code appear always in /img and the two files get injected again and again?
</p>

<p>
	I check, go clean it, everything is right, after 8-12 hours, it happen again.
</p>

<p>
	Where this come from? I have asked the logs to see if there is some $post with strange urls, some injections.
</p>

<p>
	I am not able to find the hole, the starting point.
</p>

<p>
	I have compared all the files in all directories. I have updated all the modules.
</p>

<p>
	I have deleted all the phpunits. Installed all the modules that check the vulnerabilities.
</p>

<p>
	It's a bot? It's a trigger coming from some SQL injected in some table?
</p>

<p>
	It would be great to end this journey with the last discover: the origin.
</p>

<p>
	Thanks to anyone would get interested and help.
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">1095068</guid><pubDate>Thu, 06 Feb 2025 09:40:02 +0000</pubDate></item><item><title>Unable to add stock qty when listing a product via API .. pls help</title><link>https://forum.prestashop.com/topic/1100229-unable-to-add-stock-qty-when-listing-a-product-via-api-pls-help/</link><description><![CDATA[<pre class="ipsCode prettyprint prettyprinted"><span class="com"># --- PRESTASHOP FUNCTION ---</span><span class="pln">
</span><span class="kwd">def</span><span class="pln"> create_prestashop_product</span><span class="pun">(</span><span class="pln">title</span><span class="pun">,</span><span class="pln"> description</span><span class="pun">,</span><span class="pln"> keywords</span><span class="pun">,</span><span class="pln"> watermarked_img_path</span><span class="pun">,</span><span class="pln"> storage_url</span><span class="pun">):</span><span class="pln">
    </span><span class="kwd">print</span><span class="pun">(</span><span class="str">"[PRESTASHOP] Starting product creation process..."</span><span class="pun">)</span><span class="pln">
    </span><span class="kwd">try</span><span class="pun">:</span><span class="pln">
        </span><span class="com"># 1. Create the Product</span><span class="pln">
        product_schema </span><span class="pun">=</span><span class="pln"> prestashop</span><span class="pun">.</span><span class="pln">get</span><span class="pun">(</span><span class="str">"products"</span><span class="pun">,</span><span class="pln"> options</span><span class="pun">={</span><span class="str">"schema"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"blank"</span><span class="pun">})</span><span class="pln">
        product_data </span><span class="pun">=</span><span class="pln"> product_schema</span><span class="pun">[</span><span class="str">"product"</span><span class="pun">]</span><span class="pln">

        </span><span class="kwd">def</span><span class="pln"> to_multilang</span><span class="pun">(</span><span class="pln">value</span><span class="pun">):</span><span class="pln">
            </span><span class="kwd">return</span><span class="pln"> </span><span class="pun">{</span><span class="str">"language"</span><span class="pun">:</span><span class="pln"> </span><span class="pun">[{</span><span class="str">"attrs"</span><span class="pun">:</span><span class="pln"> </span><span class="pun">{</span><span class="str">"id"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"1"</span><span class="pun">},</span><span class="pln"> </span><span class="str">"value"</span><span class="pun">:</span><span class="pln"> value</span><span class="pun">}]}</span><span class="pln">

        short_title </span><span class="pun">=</span><span class="pln"> truncate</span><span class="pun">(</span><span class="pln">title</span><span class="pun">,</span><span class="pln"> </span><span class="lit">128</span><span class="pun">)</span><span class="pln">
        product_data</span><span class="pun">.</span><span class="pln">update</span><span class="pun">({</span><span class="pln">
            </span><span class="str">"name"</span><span class="pun">:</span><span class="pln"> to_multilang</span><span class="pun">(</span><span class="pln">short_title</span><span class="pun">),</span><span class="pln">
            </span><span class="str">"id_manufacturer"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"2"</span><span class="pun">,</span><span class="pln">
            </span><span class="str">"description"</span><span class="pun">:</span><span class="pln"> to_multilang</span><span class="pun">(</span><span class="pln">description</span><span class="pun">),</span><span class="pln">
            </span><span class="str">"description_short"</span><span class="pun">:</span><span class="pln"> to_multilang</span><span class="pun">(</span><span class="pln">f</span><span class="str">"Digital Download: {os.path.splitext(os.path.basename(storage_url))[0]}"</span><span class="pun">),</span><span class="pln">
            </span><span class="str">"link_rewrite"</span><span class="pun">:</span><span class="pln"> to_multilang</span><span class="pun">(</span><span class="pln">re</span><span class="pun">.</span><span class="pln">sub</span><span class="pun">(</span><span class="pln">r</span><span class="str">'[^a-z0-9]+'</span><span class="pun">,</span><span class="pln"> </span><span class="str">'-'</span><span class="pun">,</span><span class="pln"> short_title</span><span class="pun">.</span><span class="pln">lower</span><span class="pun">()).</span><span class="pln">strip</span><span class="pun">(</span><span class="str">"-"</span><span class="pun">)[:</span><span class="lit">128</span><span class="pun">]),</span><span class="pln">
            </span><span class="str">"meta_keywords"</span><span class="pun">:</span><span class="pln"> to_multilang</span><span class="pun">(</span><span class="pln">truncate_keywords</span><span class="pun">(</span><span class="pln">keywords</span><span class="pun">,</span><span class="pln"> </span><span class="lit">255</span><span class="pun">)),</span><span class="pln">
            </span><span class="str">"state"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"1"</span><span class="pun">,</span><span class="pln"> </span><span class="str">"active"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"1"</span><span class="pun">,</span><span class="pln"> </span><span class="str">"is_virtual"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"1"</span><span class="pun">,</span><span class="pln">
            </span><span class="str">"price"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"1.00"</span><span class="pun">,</span><span class="pln"> </span><span class="str">"id_tax_rules_group"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"1"</span><span class="pun">,</span><span class="pln">
            </span><span class="str">"id_category_default"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"2"</span><span class="pun">,</span><span class="pln"> </span><span class="str">"position_in_category"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"1"</span><span class="pun">,</span><span class="pln"> 
            </span><span class="str">"associations"</span><span class="pun">:</span><span class="pln"> </span><span class="pun">{</span><span class="str">"categories"</span><span class="pun">:</span><span class="pln"> </span><span class="pun">{</span><span class="str">"category"</span><span class="pun">:</span><span class="pln"> </span><span class="pun">[{</span><span class="str">"id"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"2"</span><span class="pun">}]}},</span><span class="pln">
        </span><span class="pun">})</span><span class="pln">
        new_product </span><span class="pun">=</span><span class="pln"> prestashop</span><span class="pun">.</span><span class="pln">add</span><span class="pun">(</span><span class="str">"products"</span><span class="pun">,</span><span class="pln"> </span><span class="pun">{</span><span class="str">"product"</span><span class="pun">:</span><span class="pln"> product_data</span><span class="pun">})</span><span class="pln">
        new_product_id </span><span class="pun">=</span><span class="pln"> new_product</span><span class="pun">[</span><span class="str">"prestashop"</span><span class="pun">][</span><span class="str">"product"</span><span class="pun">][</span><span class="str">"id"</span><span class="pun">]</span><span class="pln">
        </span><span class="kwd">print</span><span class="pun">(</span><span class="pln">f</span><span class="str">"[PRESTASHOP] SUCCESS: Product created with ID: {new_product_id}"</span><span class="pun">)</span><span class="pln">

        </span><span class="com"># 2. Upload the Image</span><span class="pln">
        </span><span class="kwd">with</span><span class="pln"> open</span><span class="pun">(</span><span class="pln">watermarked_img_path</span><span class="pun">,</span><span class="pln"> </span><span class="str">"rb"</span><span class="pun">)</span><span class="pln"> </span><span class="kwd">as</span><span class="pln"> img_file</span><span class="pun">:</span><span class="pln">
            prestashop</span><span class="pun">.</span><span class="pln">add</span><span class="pun">(</span><span class="pln">f</span><span class="str">"images/products/{new_product_id}"</span><span class="pun">,</span><span class="pln"> files</span><span class="pun">=[(</span><span class="str">"image"</span><span class="pun">,</span><span class="pln"> os</span><span class="pun">.</span><span class="pln">path</span><span class="pun">.</span><span class="pln">basename</span><span class="pun">(</span><span class="pln">watermarked_img_path</span><span class="pun">),</span><span class="pln"> img_file</span><span class="pun">.</span><span class="pln">read</span><span class="pun">())])</span><span class="pln">
        </span><span class="kwd">print</span><span class="pun">(</span><span class="pln">f</span><span class="str">"[PRESTASHOP] SUCCESS: Display image uploaded for product ID: {new_product_id}"</span><span class="pun">)</span><span class="pln">

        </span><span class="com"># 3. Robust Stock Update for PrestaShop 8+</span><span class="pln">
        </span><span class="kwd">print</span><span class="pun">(</span><span class="str">"[PRESTASHOP] Attempting to update stock quantity..."</span><span class="pun">)</span><span class="pln">

        stock_id </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">None</span><span class="pln">
        </span><span class="kwd">for</span><span class="pln"> _ </span><span class="kwd">in</span><span class="pln"> range</span><span class="pun">(</span><span class="lit">5</span><span class="pun">):</span><span class="pln">
            stock_search </span><span class="pun">=</span><span class="pln"> prestashop</span><span class="pun">.</span><span class="pln">search</span><span class="pun">(</span><span class="pln">
                </span><span class="str">"stock_availables"</span><span class="pun">,</span><span class="pln">
                options</span><span class="pun">={</span><span class="str">"filter[id_product]"</span><span class="pun">:</span><span class="pln"> new_product_id</span><span class="pun">,</span><span class="pln"> </span><span class="str">"filter[id_product_attribute]"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"0"</span><span class="pun">},</span><span class="pln">
            </span><span class="pun">)</span><span class="pln">
            </span><span class="kwd">if</span><span class="pln"> stock_search </span><span class="kwd">and</span><span class="pln"> stock_search</span><span class="pun">.</span><span class="pln">get</span><span class="pun">(</span><span class="str">"stock_availables"</span><span class="pun">):</span><span class="pln">
                stock_id </span><span class="pun">=</span><span class="pln"> stock_search</span><span class="pun">[</span><span class="str">"stock_availables"</span><span class="pun">][</span><span class="str">"stock_available"</span><span class="pun">][</span><span class="str">"attrs"</span><span class="pun">][</span><span class="str">"id"</span><span class="pun">]</span><span class="pln">
                </span><span class="kwd">break</span><span class="pln">
            time</span><span class="pun">.</span><span class="pln">sleep</span><span class="pun">(</span><span class="lit">1</span><span class="pun">)</span><span class="pln">

        </span><span class="kwd">if</span><span class="pln"> stock_id</span><span class="pun">:</span><span class="pln">
            </span><span class="kwd">print</span><span class="pun">(</span><span class="pln">f</span><span class="str">"[PRESTASHOP] Found stock record with ID: {stock_id}. Updating it."</span><span class="pun">)</span><span class="pln">
            stock_schema </span><span class="pun">=</span><span class="pln"> prestashop</span><span class="pun">.</span><span class="pln">get</span><span class="pun">(</span><span class="str">"stock_availables"</span><span class="pun">,</span><span class="pln"> stock_id</span><span class="pun">)</span><span class="pln">
            stock_schema</span><span class="pun">[</span><span class="str">"stock_available"</span><span class="pun">][</span><span class="str">"quantity"</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">"999"</span><span class="pln">
            stock_schema</span><span class="pun">[</span><span class="str">"stock_available"</span><span class="pun">][</span><span class="str">"out_of_stock"</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">"1"</span><span class="pln">
            prestashop</span><span class="pun">.</span><span class="pln">edit</span><span class="pun">(</span><span class="pln">
                </span><span class="str">"stock_availables"</span><span class="pun">,</span><span class="pln">
                stock_id</span><span class="pun">,</span><span class="pln">
                </span><span class="pun">{</span><span class="str">"stock_available"</span><span class="pun">:</span><span class="pln"> stock_schema</span><span class="pun">[</span><span class="str">"stock_available"</span><span class="pun">]},</span><span class="pln">
            </span><span class="pun">)</span><span class="pln">
            </span><span class="kwd">print</span><span class="pun">(</span><span class="pln">f</span><span class="str">"[PRESTASHOP] SUCCESS: Stock updated for product ID: {new_product_id}"</span><span class="pun">)</span><span class="pln">
        </span><span class="kwd">else</span><span class="pun">:</span><span class="pln">
            </span><span class="kwd">print</span><span class="pun">(</span><span class="str">"[PRESTASHOP] ERROR: Could not locate stock record. Quantity not updated."</span><span class="pun">)</span><span class="pln">

    </span><span class="kwd">except</span><span class="pln"> </span><span class="typ">PrestaShopWebServiceError</span><span class="pln"> </span><span class="kwd">as</span><span class="pln"> e</span><span class="pun">:</span><span class="pln">
        </span><span class="kwd">print</span><span class="pun">(</span><span class="pln">f</span><span class="str">"[PRESTASHOP API ERROR] During product creation/update: {e}"</span><span class="pun">)</span><span class="pln">
    </span><span class="kwd">except</span><span class="pln"> </span><span class="typ">Exception</span><span class="pln"> </span><span class="kwd">as</span><span class="pln"> e</span><span class="pun">:</span><span class="pln">
        </span><span class="kwd">print</span><span class="pun">(</span><span class="pln">f</span><span class="str">"[PRESTASHOP UNEXPECTED ERROR] {e}"</span><span class="pun">)</span></pre>

<p>
	I get this error.. 
</p>

<p>
	[PRESTASHOP] SUCCESS: Product created with ID: 124<br />
	[PRESTASHOP] SUCCESS: Display image uploaded for product ID: 124<br />
	[PRESTASHOP] Attempting to update stock quantity...<br />
	[PRESTASHOP UNEXPECTED ERROR] 'list' object has no attribute 'get' i have spent 20 hours and i dont get it !! pls help me !! 
</p>
]]></description><guid isPermaLink="false">1100229</guid><pubDate>Thu, 17 Jul 2025 00:51:47 +0000</pubDate></item><item><title>Prestashop 9 schema unnamed key under PREFIX_employee</title><link>https://forum.prestashop.com/topic/1100421-prestashop-9-schema-unnamed-key-under-prefix_employee/</link><description><![CDATA[<p>
	In the prestashop 9 database schema I noticed there's a randomly named key here:
</p>

<pre class="ipsCode prettyprint lang-sql prettyprinted"><span class="com">/* Admin users */</span><span class="pln">
CREATE TABLE </span><span class="str">`PREFIX_employee`</span><span class="pln"> </span><span class="pun">(</span><span class="pln">
  </span><span class="str">`id_employee`</span><span class="pln"> </span><span class="kwd">int</span><span class="pun">(</span><span class="lit">10</span><span class="pun">)</span><span class="pln"> </span><span class="kwd">unsigned</span><span class="pln"> NOT NULL auto_increment</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">[...]</span><span class="pln">
  PRIMARY KEY </span><span class="pun">(</span><span class="str">`id_employee`</span><span class="pun">),</span><span class="pln">
  KEY </span><span class="str">`employee_login`</span><span class="pln"> </span><span class="pun">(</span><span class="str">`email`</span><span class="pun">,</span><span class="pln"> </span><span class="str">`passwd`</span><span class="pun">),</span><span class="pln">
  KEY </span><span class="str">`id_employee_passwd`</span><span class="pln"> </span><span class="pun">(</span><span class="str">`id_employee`</span><span class="pun">,</span><span class="pln"> </span><span class="str">`passwd`</span><span class="pun">),</span><span class="pln">
  KEY </span><span class="str">`id_profile`</span><span class="pln"> </span><span class="pun">(</span><span class="str">`id_profile`</span><span class="pun">),</span><span class="pln">
  KEY </span><span class="str">`IDX_1D8DF9EBBA299860`</span><span class="pln"> </span><span class="pun">(</span><span class="str">`id_lang`</span><span class="pun">)</span><span class="pln">
</span><span class="pun">)</span><span class="pln"> ENGINE</span><span class="pun">=</span><span class="pln">ENGINE_TYPE DEFAULT CHARSET</span><span class="pun">=</span><span class="pln">utf8mb4 COLLATION</span><span class="pun">;</span></pre>

<p>
	This `IDX_rngstring` should probably be renamed to `id_lang` or something like that. 
</p>

<p>
	source line 835 in <a href="https://github.com/PrestaShop/PrestaShop/blob/c847584362b7e36fcd5d9b28cfe6c98e4556a3bf/install-dev/data/db_structure.sql" rel="external nofollow">https://github.com/PrestaShop/PrestaShop/blob/c847584362b7e36fcd5d9b28cfe6c98e4556a3bf/install-dev/data/db_structure.sql</a>
</p>

<p>
	It was added by this commit and shortly discussed here <a href="https://github.com/PrestaShop/PrestaShop/pull/36233#pullrequestreview-2082071245" rel="external nofollow">https://github.com/PrestaShop/PrestaShop/pull/36233#pullrequestreview-2082071245</a>
</p>

<p>
	More randomly named keys like this were added, generated by doctrine orm. Would renaming them break existing relations?
</p>

<p>
	offtopic: if anyone knows where the tables added by this commit were created before being added to the schema I would be interested in finding out.
</p>
]]></description><guid isPermaLink="false">1100421</guid><pubDate>Wed, 23 Jul 2025 12:15:08 +0000</pubDate></item><item><title>Connecting Google Search Console to Prestashop</title><link>https://forum.prestashop.com/topic/1100266-connecting-google-search-console-to-prestashop/</link><description><![CDATA[<p>
	Can someone instruct me how to verify GSC by coping and pasting HTML snippet into head section of Homepage. 
</p>
]]></description><guid isPermaLink="false">1100266</guid><pubDate>Thu, 17 Jul 2025 19:58:41 +0000</pubDate></item><item><title>Add backoffice "Total sold" to columns products list</title><link>https://forum.prestashop.com/topic/457623-add-backoffice-total-sold-to-columns-products-list/</link><description><![CDATA[
<p style="color:rgb(104,115,127);font-family:'Open Sans', Verdana, sans-serif;">Hi,</p>
<br /><p style="color:rgb(104,115,127);font-family:'Open Sans', Verdana, sans-serif;">i need help to add custom columns in product list in backoffice, what i'd like is get Total sold value like it show on Best Sellers.</p>
<br /><p style="color:rgb(104,115,127);font-family:'Open Sans', Verdana, sans-serif;"> </p>
<br /><p style="color:rgb(104,115,127);font-family:'Open Sans', Verdana, sans-serif;">PS1.6.0.9</p>
<br />]]></description><guid isPermaLink="false">457623</guid><pubDate>Tue, 28 Jul 2015 17:00:23 +0000</pubDate></item><item><title>Is it worth to learn PrestaShop in 2025 as developer?</title><link>https://forum.prestashop.com/topic/1099454-is-it-worth-to-learn-prestashop-in-2025-as-developer/</link><description><![CDATA[<p>
	Hey Developers.
</p>

<p>
	Currently, I'm making side projects in WooCommerce and Shopify. I'm also thinking if it's worth to learn Presta as interests seems to be decreasing but from the other side competition is smaller than Woo or Shopify. I'm from Poland and here it seems that we have a few thousand of shops based on Presta. What do you think? Is it worth to spend time for that or maybe focus on new topics like headless commerce etc. <br /><br />
	Thank you in advance for all answers.  
</p>
]]></description><guid isPermaLink="false">1099454</guid><pubDate>Thu, 19 Jun 2025 11:47:22 +0000</pubDate></item><item><title>Ghost Features fields in backoffice</title><link>https://forum.prestashop.com/topic/1100052-ghost-features-fields-in-backoffice/</link><description><![CDATA[<p>
	This is really weird…
</p>

<p>
	A coworker created a new product - a lamp - and wanted to add a Features field for the fitting type, to make clear that the lamp is for E27 bulbs. Instead of creating a new Feature in Catalog &gt; Attributes &amp; Features she wrote "Attacco: E27" ("Fitting: E27") in the Customized value field and then saved the new product.
</p>

<p>
	The value she entered in this way did not show up on the product page, it is only visibile in backoffice ... and this Customized value field multiplies itself like crazy! There are dozens of lines and deleting them one by one has no effect: after saving and reloading the product they show up again. More of them each time!
</p>

<p>
	Clearing cache did not solve.
</p>

<p>
	Any idea of how to get rid of these ghosts?
</p>

<p>
	PS 1.7.8.8
</p>

<p><a href="//media.invisioncic.com/t336404/monthly_2025_07/Schermata2025-07-09alle20_41_39.png.28feddb1cb412187046333d914162306.png" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="336868" src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2025_07/Schermata2025-07-09alle20_41_39.thumb.png.8f69a89b436fe226eeb002f32040147c.png" data-ratio="69.5" width="1000" class="ipsImage ipsImage_thumbnailed" alt="Schermata 2025-07-09 alle 20.41.39.png"></a></p>]]></description><guid isPermaLink="false">1100052</guid><pubDate>Wed, 09 Jul 2025 18:59:32 +0000</pubDate></item><item><title>Backoffice search field for related products not working</title><link>https://forum.prestashop.com/topic/1100015-backoffice-search-field-for-related-products-not-working/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	in backoffice product editing page the search field for adding related products does not work anymore.
</p>

<p>
	When typing some product name into it nothing happens, no products list shows up.
</p>

<p>
	PS 1.7.8.8, Cross Selling module 2.0.2.
</p>

<p>
	No changes have been made (core/modules upgrade, code editing...).
</p>

<p>
	Any help will be really appreciated!
</p>
]]></description><guid isPermaLink="false">1100015</guid><pubDate>Tue, 08 Jul 2025 15:21:32 +0000</pubDate></item><item><title>Translation bundle g&#xE9;n&#xE8;re des erreurs 400 dans le backoffice</title><link>https://forum.prestashop.com/topic/1100018-translation-bundle-g%C3%A9n%C3%A8re-des-erreurs-400-dans-le-backoffice/</link><description><![CDATA[<p>
	Hello
</p>

<p>
	Depuis pas mal de temps mes traductions ne sont plus modifiables car je vois bien la partie de gauche avec l'arborescence avec Shop - Demo - Catalog etc. mais au clic un élément je ne vois rien à droite ou je devrais pouvoir éditer les traductions. <br />
	En fouillant dans l'inspecteur onglet réseau je vois les requetes api comme suit  <span>: </span><a href="https://www.spibook.fr/xxxxxxxxxx/index.php/api/translations/fr-FR/ShopDemoCatalog&amp;" rel="external nofollow">https://www.spibook.fr/xxxxxxxxxx/index.php/api/translations/fr-FR/ShopDemoCatalog&amp;</a> et puisqu'il y a le &amp; à la fin rajouté ça retourne une 400 avec un response {"error":"There are no translation file available."} si j'ouvre l'url dans un autre onglet et que je retire le &amp; j'ai bien le json... comment régler ce souci de manière définitive ?<br /><br />
	merci.
</p>
]]></description><guid isPermaLink="false">1100018</guid><pubDate>Tue, 08 Jul 2025 19:06:00 +0000</pubDate></item><item><title>how to remove (mr , mrs) Social title</title><link>https://forum.prestashop.com/topic/521896-how-to-remove-mr-mrs-social-title/</link><description><![CDATA[<p>iwant  to remove (mr , mrs) Social title <br />in registration form </p>]]></description><guid isPermaLink="false">521896</guid><pubDate>Wed, 20 Apr 2016 04:41:28 +0000</pubDate></item><item><title>CDATA shipping cost tag</title><link>https://forum.prestashop.com/topic/1099934-cdata-shipping-cost-tag/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	What is the shipping cost for this product?
</p>

<p>
	I want to put it in xml for Google Merchant and I would like it to be taken from the product (products above a certain value have free shipping), what is the shipping cost tag?
</p>

<p>
	I tried {shipping_price}, {shipping_cost}, {shipping_total} and everything returns an empty value.
</p>

<p>
	Regards
</p>
]]></description><guid isPermaLink="false">1099934</guid><pubDate>Sat, 05 Jul 2025 12:45:35 +0000</pubDate></item><item><title>Which is the recommended PHP version for Prestashop version 9?</title><link>https://forum.prestashop.com/topic/1099607-which-is-the-recommended-php-version-for-prestashop-version-9/</link><description><![CDATA[<p>
	The official documentation on this page states PHP v8.3 as the recommended version near the top of the page, but in the graphic further down the page, it recommends PHP v8.4
</p>

<p>
	<a href="https://devdocs.prestashop-project.org/9/basics/installation/system-requirements/" rel="external nofollow">https://devdocs.prestashop-project.org/9/basics/installation/system-requirements/</a>
</p>

<p>
	 
</p>

<p>
	Which is the recommended version?
</p>
]]></description><guid isPermaLink="false">1099607</guid><pubDate>Wed, 25 Jun 2025 08:21:16 +0000</pubDate></item><item><title>PS9_Brand logo at product image for affiliate marketing</title><link>https://forum.prestashop.com/topic/1099729-ps9_brand-logo-at-product-image-for-affiliate-marketing/</link><description><![CDATA[<p>
	Hi, I would like to have brand logo presented in product image as I am doing affilitae marketing , hence if prodcut is specific to amazon then when Amazon is chosen as brand when prodcut update then it has to be refelected in prodcut image. So please suggest me if anything I can upate in theme for same. <br />
	Note: I am using Prestashop 9.0 version and classic theme. 
</p>
]]></description><guid isPermaLink="false">1099729</guid><pubDate>Sun, 29 Jun 2025 09:31:00 +0000</pubDate></item><item><title>prestashop 1.7 order related products from backoffice</title><link>https://forum.prestashop.com/topic/946822-prestashop-17-order-related-products-from-backoffice/</link><description><![CDATA[
<p>
	Hi ,<br />
	I have a remark that I wish to share with you ; I created associated products for my product, in front office I have a precise display, afterwards I wanted to reorder the associated products according to the importance so that they are displayed in front again according to the desired order, I used the following code js to make drug and drop for the associated products of the back office. This works but when I register the product in question it disappeared.
</p>

<p>
	for the file  C:\wamp64\www\prestashop_1.7.4.4\admin116caruwq\themes\default\js\bundle\product  , i made that change <span>:</span>
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted">
<span class="pln">$</span><span class="pun">(</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
   $</span><span class="pun">(</span><span class="pln"> </span><span class="str">"#form_step1_related_products-data"</span><span class="pln"> </span><span class="pun">).</span><span class="pln">sortable</span><span class="pun">();</span><span class="pln">
$</span><span class="pun">(</span><span class="pln"> </span><span class="str">"#form_step1_related_products-data"</span><span class="pln"> </span><span class="pun">).</span><span class="pln">disableSelection</span><span class="pun">();</span><span class="pln">
  </span><span class="pun">}</span><span class="pln"> </span><span class="pun">);</span><span class="pln">

</span></pre>

<p>
	How could i manage realted products from backoffice in order to manipulate its orders in front ?
</p>

<p>
	any idea , suggestion is appreciated 
</p>
]]></description><guid isPermaLink="false">946822</guid><pubDate>Sun, 16 Dec 2018 21:02:04 +0000</pubDate></item><item><title>problem with search version 1.6</title><link>https://forum.prestashop.com/topic/1099472-problem-with-search-version-16/</link><description><![CDATA[<p>
	i have issue with the search.
</p>

<p>
	some products are not displayed in the search result.
</p>

<p>
	there is any known bug about the search result?
</p>
]]></description><guid isPermaLink="false">1099472</guid><pubDate>Fri, 20 Jun 2025 10:14:05 +0000</pubDate></item><item><title>A solution for using Authors functionality in a bookstore shop</title><link>https://forum.prestashop.com/topic/478524-a-solution-for-using-authors-functionality-in-a-bookstore-shop/</link><description><![CDATA[
<p>In bookstore related stores, each book may have one ore more Authors. There is not such or similar functionality in Prestashop that allows making an one-to-many relationship (one product to many authors). <br />In addition, the shop must have unique Author's pages that displays some information and lists all books by that author.<br />From my understanding, not a single theme or module supports this, so it is a common question in the forum.<br /> <br /><strong>Step1 - How to have an Authors Page with information about the Author and a List of the books he authored</strong><br />The solution is to use product categories for this purpose.<br />First create a master category and name it bookauthors (or something similar). This category will not be displayed anywhere. Then, add a subcategory for each Book Author. This way, you can have an Author's page with a friendly url and the ability to add text, images etc.<br /><br /><strong>Step 2 - How to add this information to Product's page:</strong><br />Next step is to display the Author(s) inside the product's page.<br /> <br />2.1: You need to make an addition to classes/product.php file (yes, i know - that tweeks the core functionality). Prestashop v1.6 has remove function "getProductCategoriesParent" while previous versions still have it. In either way, make sure that the function is the one bellow:<br /> </p>
<pre class="ipsCode prettyprint lang-auto">
    public static function getProductCategoriesParent($id_product = '', $id_parent = '', $id_lang = null)
	{
		if (!$id_lang)
			$id_lang = Context::getContext()-&gt;language-&gt;id;

		$ret = array();
		$row = Db::getInstance(_PS_USE_SQL_SLAVE_)-&gt;executeS('
			SELECT cp.`id_category`, cl.`name`, cl.`link_rewrite` FROM `'._DB_PREFIX_.'category_product` cp
			LEFT JOIN `'._DB_PREFIX_.'category` c ON (c.id_category = cp.id_category)
			LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (cp.`id_category` = cl.`id_category`'.Shop::addSqlRestrictionOnLang('cl').')
			'.Shop::addSqlAssociation('category', 'c').'
			WHERE cp.`id_product` = '.(int)$id_product.' AND c.`id_parent` = '.(int)$id_parent.' AND cl.`id_lang` = '.(int)$id_lang //&lt;-- bug was in this line - originally there's cl.'id_parent'
		);

		foreach ($row as $val)
			$ret[$val['id_category']] = $val;

		return $ret;
	} </pre>
<p>2.2: Next, you add the code bellow to product.tpl page, in any place you want to display book's Authors:</p>
<pre class="ipsCode prettyprint lang-auto">
&lt;ul&gt;
{foreach from=Product::getProductCategoriesParent(Tools::getValue('id_product'),[add here the bookauthors category ID]) item=cat}
&lt;li&gt;&lt;a href="{$link-&gt;getCategoryLink({$cat.id_category})}" title="{$cat.name}"&gt;{$cat.name}&lt;/a&gt;&lt;/li&gt;
{/foreach}
&lt;/ul&gt;
</pre>
<p>PLEASE NOTE: You MUST change the [add here the bookauthors category ID] with the category ID of the bookauthors  master category.<br /> <br />I hope this helps someone out there!</p>
]]></description><guid isPermaLink="false">478524</guid><pubDate>Mon, 26 Oct 2015 14:58:32 +0000</pubDate></item><item><title>Problem with backoffice after installation (PS 8.2.1)</title><link>https://forum.prestashop.com/topic/1099072-problem-with-backoffice-after-installation-ps-821/</link><description><![CDATA[<p>
	Hi
</p>

<p>
	I have many error with lines, which I couldn't find solution to solve this issue. 
</p>

<p>
	I hope anyone can help me to fix it. 
</p>

<p>
	 
</p>

<p><a href="//media.invisioncic.com/t336404/monthly_2025_06/F11AFEFC-26D0-4E37-B7B5-3D2045720EEE.jpeg.b01fc86a59a482fa951fc755e169bce2.jpeg" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="335968" src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2025_06/F11AFEFC-26D0-4E37-B7B5-3D2045720EEE.thumb.jpeg.306dd85dbfb5154de943b59283b63a9f.jpeg" data-ratio="57.8" width="1000" class="ipsImage ipsImage_thumbnailed" alt="F11AFEFC-26D0-4E37-B7B5-3D2045720EEE.jpeg"></a></p>
<p><a href="//media.invisioncic.com/t336404/monthly_2025_06/AFFD84DB-43D6-4D23-8344-A77108B2C669.jpeg.702effe2b53fd949b938bd80e93d42da.jpeg" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="335969" src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2025_06/AFFD84DB-43D6-4D23-8344-A77108B2C669.thumb.jpeg.de42a16511f4e0b39a43ccc616aed0ab.jpeg" data-ratio="57.5" width="1000" class="ipsImage ipsImage_thumbnailed" alt="AFFD84DB-43D6-4D23-8344-A77108B2C669.jpeg"></a></p>
<p><a href="//media.invisioncic.com/t336404/monthly_2025_06/635D7F3B-DF60-4136-8D0A-BE8A4209C870.jpeg.0c1c041ce77cb1c38e46a6d030ac43ca.jpeg" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="335970" src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2025_06/635D7F3B-DF60-4136-8D0A-BE8A4209C870.thumb.jpeg.d4ac474be0fd84845f74d0516ce63b62.jpeg" data-ratio="57.6" width="1000" class="ipsImage ipsImage_thumbnailed" alt="635D7F3B-DF60-4136-8D0A-BE8A4209C870.jpeg"></a></p>]]></description><guid isPermaLink="false">1099072</guid><pubDate>Fri, 06 Jun 2025 23:15:04 +0000</pubDate></item><item><title>Slow query with SQL_CALC_FOUND_ROWS in backoffice products listing</title><link>https://forum.prestashop.com/topic/1092587-slow-query-with-sql_calc_found_rows-in-backoffice-products-listing/</link><description><![CDATA[<p>
	PS Version 1.7.8.7
</p>

<p>
	Ciao everyone,<br />
	in my backoffice I have very slow query (+12 secs) for products (242.200 aproximately) listing page , the other perfomances are ok.
</p>

<p>
	I checked that the "SQL_CALC_FOUND_ROWS" slow down the entire query and I don't know how to remove it (and if it's possibile to do it without compromising the functionality) 
</p>

<p>
	 
</p>

<p>
	Here is the full query that appears on "show query" button
</p>

<blockquote class="ipsQuote" data-ipsquote="">
	<div class="ipsQuote_citation">
		Quote
	</div>

	<div class="ipsQuote_contents">
		<p>
			SELECT SQL_CALC_FOUND_ROWS p.`id_product`  AS `id_product`,<br />
			 p.`reference`  AS `reference`,<br />
			 sa.`price`  AS `price`,<br />
			 p.`id_shop_default`  AS `id_shop_default`,<br />
			 p.`is_virtual`  AS `is_virtual`,<br />
			 pl.`name`  AS `name`,<br />
			 pl.`link_rewrite`  AS `link_rewrite`,<br />
			 sa.`active`  AS `active`,<br />
			 shop.`name`  AS `shopname`,<br />
			 image_shop.`id_image`  AS `id_image`,<br />
			 cl.`name`  AS `name_category`,<br />
			 0 AS `price_final`,<br />
			 pd.`nb_downloadable`  AS `nb_downloadable`,<br />
			 sav.`quantity`  AS `sav_quantity`,<br />
			 IF(sav.`quantity`&lt;=0, 1, 0) AS `badge_danger` <br />
			FROM  `ps_product` p <br />
			 LEFT JOIN `ps_product_lang` pl ON (pl.`id_product` = p.`id_product` AND pl.`id_lang` = 6 AND pl.`id_shop` = 1) <br />
			 LEFT JOIN `ps_stock_available` sav ON (sav.`id_product` = p.`id_product` AND sav.`id_product_attribute` = 0 AND sav.id_shop = 1  AND sav.id_shop_group = 0 ) <br />
			 JOIN `ps_product_shop` sa ON (p.`id_product` = sa.`id_product` AND sa.id_shop = 1) <br />
			 LEFT JOIN `ps_category_lang` cl ON (sa.`id_category_default` = cl.`id_category` AND cl.`id_lang` = 6 AND cl.id_shop = 1) <br />
			 LEFT JOIN `ps_category` c ON (c.`id_category` = cl.`id_category`) <br />
			 LEFT JOIN `ps_shop` shop ON (shop.id_shop = 1) <br />
			 LEFT JOIN `ps_image_shop` image_shop ON (image_shop.`id_product` = p.`id_product` AND image_shop.`cover` = 1 AND image_shop.id_shop = 1) <br />
			 LEFT JOIN `ps_image` i ON (i.`id_image` = image_shop.`id_image`) <br />
			 LEFT JOIN `ps_product_download` pd ON (pd.`id_product` = p.`id_product`) <br />
			WHERE (1 AND state = 1)<br />
			 <br />
			ORDER BY  `id_product` desc<br />
			 <br />
			LIMIT 0, 20<br />
			;
		</p>
	</div>
</blockquote>

<p>
	Any suggestions ?
</p>
]]></description><guid isPermaLink="false">1092587</guid><pubDate>Tue, 19 Nov 2024 12:18:17 +0000</pubDate></item><item><title>Products first on category page</title><link>https://forum.prestashop.com/topic/1099187-products-first-on-category-page/</link><description><![CDATA[<p>
	Is there a way, module, anything, to allow products to be marked as "featured" so that they are always first on the category page?
</p>

<p>
	For example, products of brand X are before other products in the default product sorting.
</p>

<p>
	I know that this can be manually set by changing the position, but I'm looking for a solution that will save time, because when adding new products, I will have to play around with changing the position within the category again.
</p>

<p>
	Any ideas are welcome.
</p>
]]></description><guid isPermaLink="false">1099187</guid><pubDate>Wed, 11 Jun 2025 15:00:29 +0000</pubDate></item><item><title>Twig runtime error when trying to enter an order in the back office</title><link>https://forum.prestashop.com/topic/1091955-twig-runtime-error-when-trying-to-enter-an-order-in-the-back-office/</link><description><![CDATA[<p>
	Hello, I seem to have run into an error, where i cannot open up the order itself in the back office. <br />
	 
</p>

<p>
	CRITICAL13:08:21requestUncaught PHP Exception Twig\Error\RuntimeError: "An exception has been thrown during the rendering of a template ("Warning: Attempt to read property "id" on null")." at /home/deislt/domains/demis.batukalnas.lt/public_html/src/PrestaShopBundle/Resources/views/Admin/layout.html.twig line 38
</p>

<p>
	{ "exception": {} }
</p>

<p>
	CRITICAL13:08:21phpUncaught Exception: An exception has been thrown during the rendering of a template ("Warning: Attempt to read property "id" on null").
</p>

<p>
	{ "exception": {} }<br /><br />
	i am also attaching a picture of a stack trace for the error<br /><br />
	When i tryed in the symphony debug menu to open up more details from the controller, where i could see the passed variables, it seems, that viewAction method is not working propperly and it gives me file not readable error. This error is after i upgraded with one click upgrade from 1.7.8.2 to 8.1.2
</p>

<p><a href="//media.invisioncic.com/t336404/monthly_2024_10/Screenshot2024-10-31at10_15_29.png.e8809f8ed358c0280dbcebf52c163768.png" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="328518" src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2024_10/Screenshot2024-10-31at10_15_29.thumb.png.d6070c4574873ba8ddfff08aa62f8425.png" data-ratio="79.96" width="938" class="ipsImage ipsImage_thumbnailed" alt="Screenshot 2024-10-31 at 10.15.29.png"></a></p>]]></description><guid isPermaLink="false">1091955</guid><pubDate>Thu, 31 Oct 2024 08:20:33 +0000</pubDate></item><item><title>Frequently timeout - index search</title><link>https://forum.prestashop.com/topic/1061368-frequently-timeout-index-search/</link><description><![CDATA[<p>
	Good morning,
</p>

<p>
	on our site pharmacianazionale.com many functions generate a system timeout. For example, rebuilding the search index. This means that many times my customers no longer find products on the site because the system has indexed only a few hundred out of approximately 51,000.
</p>

<p>
	Nobody can understand the problem. I ask for help here.
</p>

<p>
	Thanks
</p>
]]></description><guid isPermaLink="false">1061368</guid><pubDate>Fri, 04 Mar 2022 06:42:45 +0000</pubDate></item><item><title>PrestaShop error Invalid email/password combination - not able to register</title><link>https://forum.prestashop.com/topic/1033671-prestashop-error-invalid-emailpassword-combination-not-able-to-register/</link><description><![CDATA[
<p>
	Hi,
</p>

<p>
	The new customers are not able to register on version 1.7.6.8.
</p>

<p>
	They are getting errors as Invalid email/password combination
</p>

<p>
	Attached screenshot.
</p>

<p>
	Please help and advise.
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2020_10/1436602560_Screenshotfrom2020-10-1718-07-38.png.c047c534dd54a767c4a30916fd449bc6.png" data-fileid="255879" data-fileext="png" rel=""><img alt="Screenshot from 2020-10-17 18-07-38.png" class="ipsImage ipsImage_thumbnailed" data-fileid="255879" data-ratio="56.3" style="height:auto;" width="1000" data-src="https://forum.prestashop.com/uploads/monthly_2020_10/877039766_Screenshotfrom2020-10-1718-07-38.thumb.png.3284285661d6a750020ab0510e98fe6f.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>
]]></description><guid isPermaLink="false">1033671</guid><pubDate>Sat, 17 Oct 2020 12:42:10 +0000</pubDate></item><item><title>How to extend Faceted Search productSearchProvider</title><link>https://forum.prestashop.com/topic/1079078-how-to-extend-faceted-search-productsearchprovider/</link><description><![CDATA[<p>
	Hi there,
</p>

<p>
	is there a proper way to extend Faceted Search productSearchProvider?
</p>

<p>
	I need to modify the getQuery function inside ps_facetedsearch/src/Adapter/MySQL.php and I did not find a way to do it properly: I know it can be done by writing my own productSearchProvider but for a simple modification such as mine it would be like reinventing the wheel.
</p>

<p>
	I also tried the hooks actionProductSearchProviderRunQueryBefore and actionProductSearchProviderRunQueryAfter but they are not what I need.
</p>

<p>
	Thanks a lot if you can give me some advice.<br />
	Federica
</p>
]]></description><guid isPermaLink="false">1079078</guid><pubDate>Tue, 08 Aug 2023 16:00:27 +0000</pubDate></item><item><title>Problem with EAN on product with combinations</title><link>https://forum.prestashop.com/topic/1098635-problem-with-ean-on-product-with-combinations/</link><description><![CDATA[<p>
	I was in the process of updating products with their EAN numbers and noticed a big problem.
</p>

<p>
	If a product has multiple colour options and you enter the EAN for each of those combinations and go to the Google Snippets Testing tool, the EAN for the colour option is not show. It just shows the EAN for the main product entry instead.
</p>

<p>
	I have not altered any code for this to happen on this site so Id assume all Prestashop installs have this same issue.
</p>

<p>
	 
</p>

<p>
	The same is happening for the SKU &amp; MPN, so I assume that the snippets code needs changing via ajax the same as the datasheet does.
</p>
]]></description><guid isPermaLink="false">1098635</guid><pubDate>Sun, 25 May 2025 08:39:12 +0000</pubDate></item><item><title>504 Gateway Time-out</title><link>https://forum.prestashop.com/topic/1098560-504-gateway-time-out/</link><description><![CDATA[<p>
	I have a problem. Yesterday my site worked normally, today it loads very slowly or shows "504 Gateway Time-out".<br />
	Yesterday I changed the text in the email templates, I also adjusted the translations from the check to the trade credit. I also deleted the prod from FTP because it did not update the email templates.<br />
	The hosting said that they have no problems.
</p>

<p>
	<a href="https://traditumlibri.pl/" rel="external nofollow">https://traditumlibri.pl/</a>
</p>

<p>
	I tried disabling the modules but there is no change.
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="335610" href="//media.invisioncic.com/t336404/monthly_2025_05/image.png.53dbc1f0dbb601c0d5b18afc15a9923e.png" rel=""><img alt="image.thumb.png.946ce30aa428e339aa2b82b447e8e58f.png" class="ipsImage ipsImage_thumbnailed" data-fileid="335610" data-ratio="56.90" style="height:auto;" width="1000" data-src="//media.invisioncic.com/t336404/monthly_2025_05/image.thumb.png.946ce30aa428e339aa2b82b447e8e58f.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="335604" href="//media.invisioncic.com/t336404/monthly_2025_05/image.png.bb24851189860210bf922f5c479534ea.png" rel=""><img alt="image.thumb.png.f209c57e7d7cfe556f0f765245ca371f.png" class="ipsImage ipsImage_thumbnailed" data-fileid="335604" data-ratio="15.50" style="height:auto;" width="1000" data-src="//media.invisioncic.com/t336404/monthly_2025_05/image.thumb.png.f209c57e7d7cfe556f0f765245ca371f.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_05/image.png.41bf19a0598ba4e6c48b7b96661bc8f3.png" data-fileid="335613" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="335613" data-ratio="28.40" width="1000" alt="image.thumb.png.15c737de7963fd5033c028df94df90c7.png" data-src="//media.invisioncic.com/t336404/monthly_2025_05/image.thumb.png.15c737de7963fd5033c028df94df90c7.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a><a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_05/image.png.5a5d6c47705d619dd2c3f366caaf5801.png" data-fileid="335614" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="335614" data-ratio="65.80" width="1000" alt="image.thumb.png.232970a884ea7bb8e19661172904ff7a.png" data-src="//media.invisioncic.com/t336404/monthly_2025_05/image.thumb.png.232970a884ea7bb8e19661172904ff7a.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a><a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_05/image.png.505a80320938be5a8f1b1832ac42d3c5.png" data-fileid="335615" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="335615" data-ratio="25.70" width="1000" alt="image.thumb.png.c65129245ae4021e0e191f4b7c674a3d.png" data-src="//media.invisioncic.com/t336404/monthly_2025_05/image.thumb.png.c65129245ae4021e0e191f4b7c674a3d.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a><a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_05/image.png.41bf19a0598ba4e6c48b7b96661bc8f3.png" data-fileid="335613" data-fileext="png" rel=""><span> </span></a>
</p>
]]></description><guid isPermaLink="false">1098560</guid><pubDate>Thu, 22 May 2025 14:28:03 +0000</pubDate></item><item><title>Add a "Sortable" to Product Combinations</title><link>https://forum.prestashop.com/topic/1098441-add-a-sortable-to-product-combinations/</link><description><![CDATA[<p>
	Is there a way to add a "'sortable' =&gt; true" to this column.  It's annoying that when adding a new option, regardless of the name, it's always added to the bottom with no way of sorting them. (I'm using the experimental product page if that makes a difference)
</p>

<p>
	<img alt="SortOrderNorthWestEcigs.png.2fa3dc481258b6b2ea89abc8212ccb8c.png" class="ipsImage ipsImage_thumbnailed" data-fileid="335514" data-ratio="99.75" style="height:auto;" width="399" data-src="//media.invisioncic.com/t336404/monthly_2025_05/SortOrderNorthWestEcigs.png.2fa3dc481258b6b2ea89abc8212ccb8c.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></p>
]]></description><guid isPermaLink="false">1098441</guid><pubDate>Mon, 19 May 2025 14:56:21 +0000</pubDate></item><item><title>Increase the number of combinations per page [New product page]</title><link>https://forum.prestashop.com/topic/1094122-increase-the-number-of-combinations-per-page-new-product-page/</link><description><![CDATA[<p>
	Hi there,
</p>

<p>
	New product page. How to increase the default value of combinations per page (default is 10)?
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_01/Itemsperpage.jpg.2dfe15d3f88104638fae5e5b036ddc1e.jpg" data-fileid="331000" data-fileext="jpg" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="331000" data-ratio="44.60" width="1000" alt="Itemsperpage.thumb.jpg.4e9756307778215662a64fb0d61cf561.jpg" data-src="//media.invisioncic.com/t336404/monthly_2025_01/Itemsperpage.thumb.jpg.4e9756307778215662a64fb0d61cf561.jpg" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>

<p>
	Thank you!
</p>
]]></description><guid isPermaLink="false">1094122</guid><pubDate>Sun, 12 Jan 2025 08:22:26 +0000</pubDate></item><item><title>sort the attributes alphabetically</title><link>https://forum.prestashop.com/topic/1094237-sort-the-attributes-alphabetically/</link><description><![CDATA[<p>
	<font>hello<br />
	i use prestashop 8.2, product v2, in the filter combinations, i would like to put the attributes in alphabetical order, in the "show dropdown menu" and if possible in the button add a checkbox that selects them all as in the generation of<br />
	combinations. thanks a lot</font>
</p>

<p>
	<a class="ipsAttachLink ipsAttachLink_image" href="//media.invisioncic.com/t336404/monthly_2025_01/attributedesc.png.014ca4770cf9d78d745d214cd5c1698c.png" data-fileid="331088" data-fileext="png" rel=""><img alt="attribute desc.png" class="ipsImage ipsImage_thumbnailed" data-fileid="331088" data-ratio="85.7" style="height:auto;" width="1000" data-src="//media.invisioncic.com/t336404/monthly_2025_01/attributedesc.thumb.png.71b12227aa2ed02727c4786d0a660af3.png" src="https://forum.prestashop.com/applications/core/interface/js/spacer.png" /></a>
</p>
]]></description><guid isPermaLink="false">1094237</guid><pubDate>Wed, 15 Jan 2025 08:15:29 +0000</pubDate></item><item><title>Limit on tags</title><link>https://forum.prestashop.com/topic/1096710-limit-on-tags/</link><description><![CDATA[<p>
	In a current project I am using PrestaShop 8.2.0 and when inserting a tag cloud I identified that it is limiting. I use compound word tags, some of which have up to 4 words and this does not allow me to insert them. For example, if I insert a sequence of 10 tags using "ctrl+v" only a few are added, so I have to press "ctrl+c, ctrl+v" several times to finish inserting all the tags. Remember that I insert a maximum of 13 tags. In any case, I would like to remove this limit or at least change it to a higher limit because it is difficult.
</p>
]]></description><guid isPermaLink="false">1096710</guid><pubDate>Mon, 24 Mar 2025 17:36:59 +0000</pubDate></item><item><title>Demo website for API testing</title><link>https://forum.prestashop.com/topic/1094470-demo-website-for-api-testing/</link><description><![CDATA[<p>
	Hi everyone !
</p>

<p>
	I'm new on this forum, so happy to have joined it <img alt=";)" data-emoticon="" height="20" src="https://media.invisioncic.com/t336404/emoticons/default_wink.png" srcset="https://media.invisioncic.com/t336404/emoticons/wink@2x.png 2x" title=";)" width="20" /><br /><br />
	Indeed, I came here cause I need to create a system to export blog posts to prestashop for my software.<br />
	I basically want to do it with python requests, sending main infos (title, url slug, content) and metadatas (metatitle and metadescription).<br /><br />
	However, I don't have a prestashop store myself. Is there a "test store" system or something like this for developers, to allow people like me to try my functionnalities without having to pay and spend time on the entire deployment of a prestashop store ? Cause i did not find anything close to that on the web.<br /><br />
	Thanks in advance !<br /><br />
	Best regards,<br /><br />
	Cesar
</p>
]]></description><guid isPermaLink="false">1094470</guid><pubDate>Tue, 21 Jan 2025 11:38:56 +0000</pubDate></item><item><title>Order status update</title><link>https://forum.prestashop.com/topic/1094046-order-status-update/</link><description><![CDATA[<p>
	Hello,
</p>

<p>
	Following an update to PS 1.7.8.11 (PHP 7.4), I can no longer update the status of orders; the button remains greyed out.
</p>

<p>
	In the console, I have a few errors attached (not sure if they're related). Any ideas, anyone?
</p>

<p>
	Thanks in advance.
</p>

<p><a href="//media.invisioncic.com/t336404/monthly_2025_01/Capturedecran2025-01-09a15_24_09.png.101bfbfa905af4143d5a046cb7fae4f5.png" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="330893" src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2025_01/Capturedecran2025-01-09a15_24_09.thumb.png.7253091dcfb7c0a79809092e2f31dc68.png" data-ratio="19.2" width="1000" class="ipsImage ipsImage_thumbnailed" alt="Capture d’écran 2025-01-09 à 15.24.09.png"></a></p>
<p><a href="//media.invisioncic.com/t336404/monthly_2025_01/Capturedecran2025-01-09a15_41_46.png.d629e7fa8fa151b03097e4c09ab2c7a5.png" class="ipsAttachLink ipsAttachLink_image" ><img data-fileid="330894" src="https://www.prestashop.com/forums/applications/core/interface/js/spacer.png" data-src="//media.invisioncic.com/t336404/monthly_2025_01/Capturedecran2025-01-09a15_41_46.png.d629e7fa8fa151b03097e4c09ab2c7a5.png" data-ratio="30.92" width="938" class="ipsImage ipsImage_thumbnailed" alt="Capture d’écran 2025-01-09 à 15.41.46.png"></a></p>]]></description><guid isPermaLink="false">1094046</guid><pubDate>Thu, 09 Jan 2025 16:08:58 +0000</pubDate></item></channel></rss>
