PrestaShop
| PrestaShop software | |
|---|---|
| Genere | Content management system |
| Sviluppatore | PrestaShop SA |
| Data prima versione | 31/08/2007 |
| Ultima versione | 8.2.0 |
| Ultima beta | 9.0.0 Beta 1 |
| Sistema operativo | Multipiattaforma |
| Linguaggio | PHP |
| Licenza | Open Software License (licenza libera) |
| Sito web | www.prestashop.com/it |
PrestaShop è un CMS open source utilizzato per realizzare siti di commercio elettronico.
Nasce nel 2007 e, a differenza dei CMS più "generici" diffusi all'epoca della sua prima release (WordPress e Joomla!), PrestaShop è interamente pensato per lo sviluppo e la gestione dell'e-commerce.
I temi PrestaShop sfruttano il motore di template Smarty, il quale permette una netta separazione tra contenuti, grafica e programmazione. Grazie a questa impostazione, il web designer può occuparsi della grafica del sito lavorando sui file di template e CSS, mentre il developer può intervenire sui files PHP (difatti la documentazione ufficiale è divisa in due sezioni ben distinte, una per i web designer ed una per gli sviluppatori).
Con la prima Release di Prestashop 1.7 è stato introdotto anche Twig (da Symphony).[1][2]
Dopo la versione 1.7.8 arriva la 8.0 con nuove funzionalità e un upgrade più semplice. Il più grande cambiamento in PrestaShop 8 è il PHP 8.[3][4]
L'interfaccia utente semplice e intuitiva, e il sistema modulare (per implementare una funzionalità basta installare il relativo modulo), hanno reso PrestaShop uno dei CMS per l'e-commerce più diffusi e utilizzati dai professionisti.
Attorno a PrestaShop c'è una comunità molto attiva, soprattutto in Francia e in Spagna, che contribuisce al costante miglioramento del software e allo sviluppo di moduli per implementare sempre nuove funzionalità.[senza fonte]
È tradotto in varie lingue.
Requisiti tecnici
[modifica | modifica wikitesto]Per utilizzare PrestaShop è necessario installarlo nel proprio spazio web.
Bisogna quindi provvedere a registrare un dominio e a sottoscrivere un abbonamento con un hosting provider.
Per supportare PrestaShop l'hosting deve avere le seguenti caratteristiche:
Versioni
[modifica | modifica wikitesto]Le versioni in rosso non sono più supportate, in giallo quella che il supporto sta per terminare, in verde la versione che attualmente in sviluppo, in azzurro le versioni future.
| Prima Versione | Ultima Versione | Uscita prima versione stabile | Uscita ultima versione stabile | Note |
|---|---|---|---|---|
| 0.9.7 | 0.9.7 | 20 Febbraio 2008 | Prima versione. | |
| 1.1.0.1 beta 2 | 1.1.0 | 7 Maggio 2009 | ||
| 1.2.0.8 | 1.2.5.0 | 29 Luglio 2009 | ||
| 1.3.0 | 1.3.7.0 | 25 Maggio 2010 | ||
| 1.4.0.17 | 1.4.11.1 | 16 Marzo 2011 | ||
| 1.5.0.17 | 1.5.6.3 | 7 Maggio 2009 | ||
| 1.6.0.5 | 1.6.1.24 | 17 Marzo 2014 | Per la versione 1.6 il supporto è terminato il 30 giugno 2019 | |
| 1.7.0 | 1.7.8.11 | 7 Novembre 2016 | 2 Gennaio 2024 | |
| 8.0.0 beta | 8.2.3 | 26 Ottobre 2022 | 4 Settembre 2025 | |
| 9.0.0 Alpha 1 | 9.0.1 | 6 Giugno 2024 | 13 Ottobre 2025 |
Supporto multilingua
[modifica | modifica wikitesto]A partire dalla versione 1.6, PrestaShop include un pacchetto Localizzazione che permette di aggiungere nuove lingue al negozio online. Per ognuna sono selezionati la valuta, l'aliquota fiscale e le regole di tassazione con valori predefiniti e personalizzabili.
Le regole consentono di applicare una tassa e la relativa sopratassa, ma non una progressività tributaria con aliquote automaticamente differenziate per intervalli di prezzo imponibile. Il programma è valorizzato per una tassazione di tipo flat.[5]
Il pacchetto comprende un ambiente di traduzione con traduttore automatico e dizionario, per agevolare l'inserimento delle descrizioni nelle nuove lingue all'interno delle schede dei prodotti in vendita.
Sicurezza
[modifica | modifica wikitesto]Sebbene esistano plugin per la sicurezza[6], PrestaShop può essere vittima dei seguenti attacchi informatici, come anche altri CMS[7]:
- Cross-site scripting (XSS): permette a un cracker di inserire o eseguire codice lato client al fine di attuare un insieme variegato di attacchi quali, ad esempio, raccolta, manipolazione e reindirizzamento di informazioni riservate, visualizzazione e modifica di dati presenti sui server, alterazione del comportamento dinamico delle pagine web, ecc.
- Clickjacking ("rapimento del clic"): durante una normale navigazione web, l'utente clicca con il puntatore del mouse su di un oggetto (ad esempio un link), ma in realtà il suo clic viene reindirizzato, a sua insaputa, su di un altro oggetto, che può portare alle più svariate conseguenze: dal semplice invio di spam, al download di un file, fino all'ordinare prodotti da siti di e-commerce.
- File Inclusion: Local File Inclusion (LFI) consente a un utente malintenzionato di includere file su un server tramite il browser web. Remote File Inclusion, o RFI, nell'ambito della sicurezza informatica indica una vulnerabilità che affligge i servizi web con uno scarso controllo delle variabili arrivate da un utente, in particolare le variabili GET e POST del PHP.
- Il Cross-site request forgery, abbreviato CSRF o anche XSRF, è una vulnerabilità a cui sono esposti i siti web dinamici quando sono progettati per ricevere richieste da un client senza meccanismi per controllare se la richiesta sia stata inviata intenzionalmente oppure no.
- SQL injection o SQLi: un hacker può inserire istruzioni SQL dannose nel sito ottenendo potenzialmente l’accesso a dati sensibili presenti nel database o distruggendo questi dati.
- Esecuzione di codice in modalità remota: ottenere l'accesso a un account con privilegi riservati almeno al livello
authorsu un sito di destinazione per eseguire codice PHP arbitrario sul server sottostante, portando a un'acquisizione remota completa. - Privilege Escalation: definita come una delle gravi vulnerabilità, l'escalation dei privilegi si verifica quando a un utente con privilegi amministrativi inferiori vengono concessi privilegi più elevati.
Performance
[modifica | modifica wikitesto]Le cause principali per un sito lento fatto in PrestaShop (ma valgono per molti altri CMS[8]) sono:
- Hosting: quando il server di web hosting non è configurato correttamente può danneggiare la velocità del sito web
- Configurazione: se il sito non usa pagine memorizzate nella cache sovraccaricherà il server, causando la lentezza o il blocco del sito web
- Immagini pesanti: a una risoluzione alta (adatta per la stampa ma non per il web) e/o una dimensione ampia e/o mancato uso degli Sprite CSS per evitare molte chiamate al server
- Riproduzione automatica dei video all'arrivo dell'utente e video ospitati sul proprio server anziché incorporato da YouTube, Vimeo o altri servizi esterni[9]
- Moduli non validi e/o non aggiornati: se si utilizzano moduli mal codificati e/o obsoleti il sito Web può rallentare notevolmente
- Script esterni: annunci, caricatori di caratteri, ecc. possono avere un enorme impatto sulle prestazioni del sito web. Ad esempio utilizzare troppi font incorporati con Google Fonts o altri plugin di incorporazione font può rallentare il sito[10]
Soluzioni
[modifica | modifica wikitesto]Le possibile soluzioni per velocizzare PrestaShop sono[11]:
- Scollegare tutti i moduli inutilizzati dalle loro posizioni
- Cache abilitata: velocizza le pagine. Attivalo quando il design del tuo e-commerce non deve essere modificato.
- Smart cache for CSS: riunisce in un unico file, comprime e memorizza nella cache i file CSS.
- Smart cache for Javascript: riunisce in un unico file, comprime e memorizza nella cache i file JS.
- Ottimizzazione Apache: consente di aumentare ulteriormente le prestazioni del sito.
- Minimizzare HTML: rimuove tutto lo spazio bianco dal codice HTML.
- Comprimere JavaScript mettendolo "inline" nell'HTML: se il tema utilizza del codice JavaScript, questo viene compresso per caricarlo più velocemente.
- Spostare JavaScript alla fine del codice: questa azione renderà più veloce il caricamento del contenuto della pagina e ridurrà l'attesa per gli utenti.
- Implementare un Content Delivery Network[12]
SEO
[modifica | modifica wikitesto]Per una buona SEO di PrestaShop si dovrebbe[13]:
- Attivare i moduli SEO per PrestaShop
- Scegliere il Protocollo HTTPS
- Attivare la Sitemap XML e il file Robots.txt
- Abilitare la creazione di reindirizzamenti quando gli URL vengono modificati
- Assicurarsi di usare la versione più recente di PrestaShop[14]
- Abilitare la riscrittura degli URL[15]
- Inserimento dei Rich Snippets[16]
- Parola chiave principale nel primo paragrafo
- Content Pruning (rimozione dei contenuti obsoleti che non possono più essere utili agli utenti)
- Parole chiave nei tag H1
- Immagini nominate correttamente (non per esempio "tr_1009_nh.jpg") e utilizzo del tag ALT
- Utilizzo del tag TITLE nei link
- utilizzare URLs Canonici[17]
- Applicare il Nofollow per i link non necessari
- Applicare lo schema markup. Esempio:
<div class=”product-view” itemscope itemtype=”http://sito.org/Product“>
- Testare i dati strutturati per la convalida dello schema markup[18]
- Utilizzare title univoci per ogni pagina
- Non utilizzare contenuti duplicati[19]
Riconoscimenti
[modifica | modifica wikitesto]Note
[modifica | modifica wikitesto]- ↑ Prestashop 1.7 sceglie Symfony e dice addio a Smarty (o quasi), su HTML.it. URL consultato il 9 gennaio 2023.
- ↑ (EN) PrestaShop (Projects using Symfony), su symfony.com. URL consultato il 9 gennaio 2023.
- ↑ Aggiornamenti tecnici e di prodotto - Ottobre 2021, su PrestaShop, 29 ottobre 2021. URL consultato il 19 gennaio 2023.
- ↑ (EN) Migrate your solutions from PrestaShop 1.7 to 8.0, su build.prestashop-project.org, 15 agosto 2022. URL consultato il 19 gennaio 2023.
- ↑ Roberto Chimenti, 4-La localizzazione dei siti, in Prestashop 1.6: Creare siti e-commerce professionali multilingua, Milano, Ulrico Hoepli, 2015, p. 109, ISBN 978-88-203-6604-9.
- ↑ Moduli PrestaShop di Sicurezza & Access - PrestaShop Addons, su addons.prestashop.com. URL consultato il 27 gennaio 2021.
- ↑ (EN) Bhagyeshwari Chauhan, Prestashop Security Issues: Top 7 Most Common Prestashop Attacks, su getastra.com. URL consultato il 26 gennaio 2021.
- ↑ Optimizing your CMS Hub site for performance, su developers.hubspot.com. URL consultato il 26 gennaio 2021.
- ↑ (EN) Website Usability: YouTube Player vs. Self-Hosted Video, su The latest Voice of Customer and CX trends | Usabilla Blog, 4 agosto 2015. URL consultato il 26 gennaio 2021.
- ↑ (EN) Web Font Performance - How Your Fonts Affect Page Speed, su MachMetrics Speed Blog, 11 febbraio 2020. URL consultato il 26 gennaio 2021.
- ↑ prestashop, su themebooster.com.
- ↑ Come configurare la CDN per Prestashop, su keliweb.it. URL consultato il 27 gennaio 2021.
- ↑ Ottimizzazione SEO su PrestaShop: 10 consigli per far crescere il tuo negozio online, su Hostinato, 30 aprile 2021. URL consultato il 27 febbraio 2025.
- ↑ Versioni PrestaShop Download, su PrestaShop, 25 gennaio 2017. URL consultato il 19 gennaio 2023.
- ↑ Reindirizzamenti e la Ricerca Google | Google Search Central | Documentazione, su Google Developers. URL consultato il 19 gennaio 2023.
- ↑ Michal Pecánek, Joshua Hardwick, Rich Snippet: Cosa Sono e Cosa Fare Per Averli?, su SEO Blog by Ahrefs, 22 maggio 2020. URL consultato il 19 gennaio 2023.
- ↑ Canonizzazione degli URL e tag canonical | Google Search Central | Documentazione, su Google Developers. URL consultato il 19 gennaio 2023.
- ↑ Strumento di test per il markup schema | Google Search Central, su Google Developers. URL consultato il 19 gennaio 2023.
- ↑ Evitare contenuti duplicati | Google Search Central | Documentazione, su Google Developers. URL consultato il 19 gennaio 2023.
- ↑ (EN) Top 6 Open Source Shopping Carts solutions, su linuxaria.com, 16 ottobre 2013.
- ↑ History and Awards - PrestaShop Addons, su addons.prestashop.com. URL consultato il 26 gennaio 2021.
- ↑ Vincitori dei premi BSOCO per l'anno 2013, suddivisi per categoria, su software-comparison.net. URL consultato il 14 settembre 2019 (archiviato il 14 settembre 2019).
- ↑ PrestaShop Wins a Bsoco Award in Best CMS Category, su prestashop.com, 23 maggio 013. URL consultato il 14 settembre 2019 (archiviato il 14 settembre 2019).
- ↑ premio, su cnll.fr.
Altri progetti
[modifica | modifica wikitesto]
Wikimedia Commons contiene immagini o altri file su PrestaShop
Collegamenti esterni
[modifica | modifica wikitesto]- (MUL) Sito ufficiale, su prestashop-project.org.
- (MUL) Blog ufficiale, su build.prestashop-project.org.
- PrestaShop Project (canale), su YouTube.
- Repository sorgenti di PrestaShop, su github.com.
- Forum Ufficiale, su prestashop.com.

