PrestaShop

CMS per la creazione di eCommerce

PrestaShop è un CMS open source utilizzato per realizzare siti di commercio elettronico.

PrestaShop
software
Logo
Logo
Schermata di esempio
Schermata di esempio
GenereContent management system
SviluppatorePrestaShop SA
Data prima versione31/08/2007
Ultima versione8.1.5
Ultima beta8.1.0 Beta 1
Sistema operativoMultipiattaforma
LinguaggioPHP
LicenzaOpen Software License
(licenza libera)
Sito webwww.prestashop.com/it

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

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:

  • web server: Apache 1.3, Apache 2.x, Nginx o Microsoft IIS;
  • PHP 5.4 o superiore installato e abilitato fino alla versione 1.7.3;
  • PHP 7.0 o superiore installato e abilitato dalla versione 1.7.4;
  • MySQL 5.6 o superiore installato e abilitato;
  • credenziali per l'accesso FTP.

Versioni modifica

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.1.5 26 Ottobre 2022 18 Marzo 2024
9.0.0

Supporto multilingua modifica

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

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 livelloauthor su 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

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

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

  Lo stesso argomento in dettaglio: Ottimizzazione per i motori di ricerca.

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

  • 2010: Best Open-source Business Application Awards[20]
  • 2011: Best Open-source Business Application Awards[21]
  • 2013: Business Software Comparisons (BSOCO) nella categoria CMS.[22][23]
  • 2019: Acteurs du Libre International Award[24]

Note modifica

  1. ^ Prestashop 1.7 sceglie Symfony e dice addio a Smarty (o quasi), su HTML.it. URL consultato il 9 gennaio 2023.
  2. ^ (EN) PrestaShop (Projects using Symfony), su symfony.com. URL consultato il 9 gennaio 2023.
  3. ^ Aggiornamenti tecnici e di prodotto - Ottobre 2021, su PrestaShop, 29 ottobre 2021. URL consultato il 19 gennaio 2023.
  4. ^ (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.
  5. ^ 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.
  6. ^ Moduli PrestaShop di Sicurezza & Access - PrestaShop Addons, su addons.prestashop.com. URL consultato il 27 gennaio 2021.
  7. ^ (EN) Bhagyeshwari Chauhan, Prestashop Security Issues: Top 7 Most Common Prestashop Attacks, su getastra.com. URL consultato il 26 gennaio 2021.
  8. ^ Optimizing your CMS Hub site for performance, su developers.hubspot.com. URL consultato il 26 gennaio 2021.
  9. ^ (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.
  10. ^ (EN) Web Font Performance - How Your Fonts Affect Page Speed, su MachMetrics Speed Blog, 11 febbraio 2020. URL consultato il 26 gennaio 2021.
  11. ^ prestashop, su themebooster.com.
  12. ^ Come configurare la CDN per Prestashop, su keliweb.it. URL consultato il 27 gennaio 2021.
  13. ^ Ottimizzazione SEO su PrestaShop: 10 consigli per far crescere il tuo negozio online, su Nextre Digital, 8 luglio 2019. URL consultato il 27 gennaio 2021.
  14. ^ Versioni PrestaShop Download, su PrestaShop, 25 gennaio 2017. URL consultato il 19 gennaio 2023.
  15. ^ Reindirizzamenti e la Ricerca Google | Google Search Central | Documentazione, su Google Developers. URL consultato il 19 gennaio 2023.
  16. ^ 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.
  17. ^ Canonizzazione degli URL e tag canonical | Google Search Central | Documentazione, su Google Developers. URL consultato il 19 gennaio 2023.
  18. ^ Strumento di test per il markup schema | Google Search Central, su Google Developers. URL consultato il 19 gennaio 2023.
  19. ^ Evitare contenuti duplicati | Google Search Central | Documentazione, su Google Developers. URL consultato il 19 gennaio 2023.
  20. ^ (EN) Top 6 Open Source Shopping Carts solutions, su linuxaria.com, 16 ottobre 2013.
  21. ^ History and Awards - PrestaShop Addons, su addons.prestashop.com. URL consultato il 26 gennaio 2021.
  22. ^ 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).
  23. ^ 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).
  24. ^ premio, su cnll.fr.

Altri progetti modifica

Collegamenti esterni modifica