ecommerce con wordpress

Come installare WordPress su un server VPS

Cercando su internet mi capita spesso di scoprire ottimi tutorial su come creare un ecommerce con un servizio di hosting, ma di rado trovo qualcosa sui server autogestiti o sui server VPS. Questa guida vorrebbe in parte rimediare, e se avrai la pazienza di seguirla fino in fondo  potrai realizzare da zero il tuo ecommerce con WordPress e Woocommerce. Il tutto con una spesa bassissima, traffico internet illimitato e prestazioni insuperabili.


 

Realizzare da zero un ecommerce con WordPress

_____

       1


Come procurarsi un server VPS

Affidare il tuo sito ad un hosting "condiviso" tipo Aruba, Bluehost o Register può essere comodo nella fase iniziale, quando il basso numero di visite non incide sulla velocità del server - ahimè condiviso - ma dopo pochi mesi il calo delle prestazioni farà fuggire i tuo nuovi visitatori.

Scegli dunque da SUBITO la qualità e affidati a un server VPS, ormai disponibile a costi bassissimi!
       2


vps server
Come usare un server VPS

Usare un server VPS non è molto più difficile che usare un hosting, a patto di conoscere "prima" alcuni semplicissimi trucchi e ferri del mestiere.
Scoprirai quanto è semplice ottenere prestazioni spettacolari con un modesto sforzo iniziale!
       3


Comprare un nome di dominio su Namecheap

Esistono diversi siti dove comprare nomi di dominio ma Namecheap rimane tra i più convenienti e funzionali.
La gestione dei DNS è davvero semplice e intuitiva, l'affidabilità nei pagamenti assoluta.
Per me Namecheap rimane la scelta migliore.
       4


logo wordpress
Installare WordPress

La procedura di installazione di Wordpress sta diventando talmente "automatica" da essere alla portata di un semplice appassionato con una minima conoscenza di Internet.
Wordpress dovrebbe essere la tua scelta migliore per lanciarti nel mondo dei Blog e del Web Marketing.
       5Come sistemare i permalinks di WordPress
       6Installare alcuni plugin importanti
       7

woocommerce logo
Installare Woocommerce

Seppure Wordpress non sia nato per fare ecommerce, la potenza e la facilità di uso dei suoi plugin gli hanno consentito di diventare leader anche in questo settore, dopo i Blog e i Siti istituzionali.
Scopri come installare Woocommerce in 10 semplici mosse.

Se seguirai la guida passo passo ti svelerò i piccoli trucchi che ho risolto nel mio lavoro di programmatore PHP e Python. Sono sicuro qualcuno di questi ti sarà molto utile per risparmiare tempo e dedicarti a cose più importanti come il design e il contenuto del tuo blog. Se rimani bloccato in qualche passaggio scrivi un commento sotto e sarò lieto di aiutarti.

 

[1] – COME PROCURARSI UN SERVER VPS

Io uso in genere server forniti da Vultr.com, ma puoi ugualmente acquistarne uno da Digitalocean.com o da Linode.com

In questo tutorial proverò ad usare un server fornito da Vultr, ma in genere cambia pochissimo tra un provider e l’ altro: in ogni caso ti avviserò delle eventuali differenze. Vai su Vultr e registrati usando la username che preferisci ed un password che creerai usano il sito Roboform.com e usando una stringa di 16 caratteri. Non preoccuparti della lunghezza eccessiva perchè ti basta fare copia e incolla  sulla maschera di registrazione e Chrome si occuperà di conservarla.

Dopo la email di conferma potrai accedere alla consolle di comando che è in genere uguale per tutti i provider VPS. Su Vultr premi il tasto rotondo azzurro in alto a destra e prosegui in questo modo:

  • locazione Francoforte
  • server type 64 bit
  • os ubuntu 16.04
  • server size 10 dollars
  • additional feature nessuna
  • startup script nessuno
  • ssh key nessuna
  • premi deploy, e dopo alcuni secondi sarà tutto pronto.
    •  

      [2] – COME USARE UN SERVER VPS

      Usare la tua VPS non  è nulla di troppo complicato, ma le prime volte avrai  bisogno di procedere con attenzione leggendo la guida.

      In genere non passano più di 30 secondi prima che Vultr o Linode ti rendano il server disponibile,  su Vultr ad esempio ti apparirà la scritta “running”. Clicca dunque sul nome del server e prendi nota di  due cose fondamentali: la prima è l’ indirizzo IP del nuovo server, l’ altra è la password di root. Nel resto della schermata trovi informazioni secondarie.
      Adesso puoi adesso accedere al server usando il programma putty se lavori con Windows, altrimenti usando Mac o Linux potrai usare il semplice comando SSH. Per la configurazione completa di putty puoi seguire questo ottimo articolo su altervista, mentre su linux puoi scrivere:
      ssh root@indirizzoip

      terminale
      putty
      su windows
      o ssh su linux
      e macOS
      > ssh root@indirizzoip

      -----------------------------------------------------
      ssh root@95.179.160.11
      The authenticity of host '95.179.160.11 (95.179.160.11)' can't be established.
      root@95.179.160.11's password:
      Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-50-generic x86_64)

      -----------------------------------------------------
      > $

      Questa è la schermata che ti accoglierà se tutto è andato per il verso giusto; se non riesci a collegarti controlla con attenzione l’ indirizzo IP e la password. Ricorda che a volte il copia e incolla di Windows può aggiungere uno spazio alla fine del testo e farti andare in errore.

      La prima cosa da scrivere sul server e la seguente:
      sudo ap-get update; apt-get upgrade
      rispondendo YES a tutte le domande.

      La cosa successiva è installare il server Apache2 con:
      apt-get install apache2
      il server risponderà con alcuni messaggi e alla fine per essere certi che tutto sia ok scrivi:
      service apache2 status
      e ti dovrebbe apparire la scritta:

      terminale
      putty
      su windows
      o ssh su linux
      e macOS
      # apt-get install apache2
      # ok.
      # service apache2 status
      --------------------------------------------------------------
      May 31 08:55:57 scrivere-012 systemd[1]: Starting The Apache HTTP Server...
      May 31 08:55:57 scrivere-012 apachectl[30237]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 1
      May 31 08:55:57 scrivere-012 systemd[1]: Started The Apache HTTP Server.
      ----------------------------------------------------------------------
      > $

      Non fare troppo caso alla seconda riga, il server si lamenta che non sia stato ancora impostato il nome del dominio ma per ora possiamo trascurare le cosa.
      Per strano che ti possa sembrare con 2 soli comandi hai già installato il server http Apache e lo puoi trovare già funzionante scrivendo http://indirizzoip sulla barra indirizzi del tuo browser. Rilassati un attimo e goditi questo piccolo successo 😉

      Adesso puoi installare mysql con i comandi:
      apt-get install mysql-server
      mysql_secure_installation
      rispondi con Invio alla prima domanda sul controllo password, quindi inserisci la password presecelta 2 volte e poi rispondi YES a tutte le domande successive. Ricorda che la password di Mysql e la passord del server non devono coincidere e non sono la stessa cosa. Copiale su un file di Notepad o su una App tipo Slack o Trello, altrimenti rischi di perderle!

      Installa PHP:
      apt-get install php libapache2-mod-php php-mysql
      Il server procederà ad installare i pacchetti software richiesti e quelli secondari in pochi secondi, con una velocità e affidabilità che purtroppo manca a Windows.
      Se puoi passa presto ad un altro sistema operativo per il tuo PC di casa, ad esempio  Mac o Ubuntu, ma sarà ovviamente una tua scelta.

      Se ti senti un poco confuso dai termini tecnici non disperare perchè si tratta in genere di operazioni una tantum che affronterai solo occasionalmente; consideralo il prezzo da pagare per avere un tuo server molto più veloce di un hosting normale e soprattutto così flessibile da diventare la tua arma segreta nel commercio elettronico. Continua a seguire la guida e non resterai deluso, prova a controllare la velocità del mio server sebadima.press su google speed insight!

       

      [3] – COMPRARE UN DOMINIO SU NAMECHEAP

      Vai adesso su Namecheap e scegli un nome che ti piace per il tuo dominio. Io per semplificare le cose userò il nome mioecommerce.online che al momento di scrivere questo post era libero…

      ma ovviamente potrai scegliere il nome che più ti piace. Ricordati comunque che il nome del dominio dovrebbe restare quello “a vita” e cambiarlo ti penalizzerà in molti modi su Google. Insomma, sceglilo con cura e poi vai tranquillo. Vai dunque su www.namecheap.com e inizia questa sequenza di operazioni:

      Registrati sul sito e al solito conferma la email che ti arriverà dopo pochi secondi, vai sulla barra di ricerca di namecheap in alto e scrivi il nome del dominio che ti piace. Se risulta libera premi “add to cart” e prosegui altrimenti immetti un altro nome fino a trovarne uno disponibile.
      Premi “View cart” e controlla il prezzo complessivo e i dettagli del nome. Se tutto è ok premi “Confirm order” e vai avanti.
      A questo punto puoi inserire i dati della tua postepay e continuare con il checkout come faresti su qualsiasi sito di ecommerce. Namecheap è piuttosto seria e non ti affibbierà rinnovi automatici e fregature simili.

      Vai adesso su “dashboard” in alto a sinistra e accedi a “Domain List”, ti dovrebbe apparire il dominio che hai appena acquistato.

      Clicca sul pulsante “Manage” a destra e imposta i DNS, clicca su “Advanced DNS” e  cancella la prima riga con la scritta:
      CNAME – Record – www parkingpage.namecheap.com premendo sul tasto trash a destra e alla domanda di conferma rispondi YES e procedi. Fai lo stesso con la riga restante con la scritta:
      URL Redirect – Record @ – http://www.mioecommerce.online/
      sempre premendo il tasto trashcan a destra.
      Dopo queste operazioni namecheap continuerà a mostrare il residuo delle due righe cancellate, tu ignorale e vai avanti.

      Clicca su ‘add new record’ e scegli TIPO A mentre su HOST devi aggiungere “@”, su IP ADDRESS inserisci l’ indirizzo ip fornito da VULTR o altro vps provider, sulla casella TTL scrivi “5 minutes” e procedi premendo “save all changes”


      A questo punto puoi una breve pausa di 30 minuti circa per consentire ai valori del DNS di namecheap di propagarsi sulla intera rete Internet.
      Qando i DNS saranno funzionanti potrai accedere al sito mioecommerce.online senza usare l’ indirizzo ip. Prova a testare il nome sul tuo browser ogni 15 minuti circa.

      Fatto questo puoi programmare il server WEB Apache per servire il dominio e perciò procedi in questo modo:

      collegati al server e digita:

      terminale
      putty
      su windows
      o ssh su linux
      e macOS
      # cd /etc/apache2/sites-available
      # vi mioecommerce.online.conf

      HELP: appena si apre "vi" premi la lettera "i"
      e incolla il testo qua sotto:
      fai copia e incolla <VirtualHost *:80>
      ServerAdmin admin@mioecommerce.online
      ServerName mioecommerce.online
      DocumentRoot /var/www/html/wordpress
      <Directory />
      Options FollowSymLinks
      AllowOverride All
      </Directory>
      <Directory /var/www/html/wordpress>
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      Order allow,deny
      allow from all
      </Directory>
      </VirtualHost>
      HELP: esci da "vi" scrivendo "ESC" ":x" "INVIO"

      > $ vi: 15 lines written

      Ricorda di modificare tutte le scritte mioecommerce.online con il tuo dominio!

      a2ensite mioecommerce.online
      service apache2 reload

      Collegati a mioecommerce.online sul tuo browser e dovresti vedere la pagina di benvenuto di Apache. Se hai problemi prova a inserire il tuo commento in fondo alla pagine, ti risponderò entro poche ore.

       

      [4] – INSTALLARE WORDPRESS

      Prima di installare il programma  devi creare il database su Mysql con queste 5 istruzioni:

      mysql -u root -p
      CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8;
      CREATE USER 'wordpressuser'@'localhost' IDENTIFIED BY 'miapassword';
      GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpressuser'@'localhost';
      FLUSH PRIVILEGES;

      adesso installa wordpress seguendo la procedura:

      cd /tmp
      curl -O https://wordpress.org/latest.tar.gz
      tar xzvf latest.tar.gz
      touch /tmp/wordpress/.htaccess
      cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php
      cp -a /tmp/wordpress/. /var/www/html/wordpress
      chown -R www-data:www-data /var/www/html/wordpress
      find /var/www/html/wordpress/ -type d -exec chmod 750 {} \;
      find /var/www/html/wordpress/ -type f -exec chmod 640 {} \;
      vi /var/www/html/wordpress/wp-config.php

      inserisci il valore corretto nella righe:
      define(‘DB_NAME’, ‘wordpress’);
      define(‘DB_USER’, ‘wordpressuser’);
      define(‘DB_PASSWORD’, ‘miapassword’);

      Infine (ci siamo quasi) scrivi sulla barra indirizzi del browser: http://mioecommerce.online

      1. titolo dei sito scrivi ad esempio “il mio ecommerce”
      2. come nome utente scegli quello che usi abitualmente
      3. come password userò la password STRONG suggerita da wordpress
      4. inserisci la email
      5. lascia “visibilità ai motori di ricerca” SENZA visto
      6. premi “installa wordpress”
      7. dopo il messaggio di “congratulazioni” di WordPress sei gia al login.
      8. inserisci il nome utente e la password che avevi copiato…
      9 vai su http://mioecommerce.online/wp-admin/

      Boom! hai il tuo sito WordPress su VPS pronto per stracciare tutti i concorrenti su Internet!

       

      [5] – Come sistemare i permalinks di WordPress

      Modifichiamo la struttura dei permalink di wordpress per renderli più SEO friendly.

      I permalink standard di wordpress sono così brutti e dannosi per il SEO che chiunque li cambia immediatamente prima di pubblicare qualsiasi contenuto.
      Speriamo presto che qualcuno provveda a porre rimedio nella installazione standard. Appena proverai a selezionare i permalink corretti, immediatamente WordPress andrà in confusione e non riuscirà a trovare la pagina: http://mioecommerce.online/articolo-di-esempio.

      Per rimediare ho seguito le indicazione di questo articolo su https://www.digitalocean.com/community/tutorials/how-to-rewrite-urls-with-mod_rewrite-for-apache-on-ubuntu-18-04 e alla fine basta eseguire i comandi:
      a2enmod rewrite
      systemctl restart apache2

      Nell’ attesa che wordpress si decida cambiare i permalink di default una volta per tutte! 🙂

       

      [6] – INSTALLARE I PLUGIN FONDAMENTALI

      E adesso pensiamo ai PLUGIN… vai nella sezione a sinistra e clicca su plugin quindi clicca su “aggiungi nuovo” e cerca “Classic Editor” per ripristinare il classico editor di WordPress…

      che è stato eliminato nelle ultime revisioni. Clicca su “installa” e quindi “attiva”. Se tutto è andato per il verso giusto comparirà la scritta “attivo” sul tasto del plugin.

      Un altro plugin utilissimo che vorrai installare di sicuro è “Contextual Related Posts” che serve a proporre ulteriori post interessanti ai tuoi lettori e aumentarne la permanenza, che è una cosa eccellente per il SEO. Segui la stessa procedura per tutti i plugin dell’ elenco qua sotto:

      1SEOGoogle XML Sitemapswordpress.org
      2programmazioneHead, Footer and Post Injections wordpress.org
      3programmazioneSimple Custom CSS wordpress.org
      4compressione immaginiimagifysito plugin
      5sicurezzaWordfence Securitysito plugin
      6emailWP Mail SMTP wordpress.org
      7emailCheck Email wordpress.org
      8SEOContextual Related Postssito plugin
      9editingClassic editorwordpress.org

      Assicurati di installare e attivare tutti i plugin e pensiamo al certificato SSL del tuo blog. Google tende a penalizzare i siti senza la “HTTPS” ovvero con il lucchetto verde e prima di andare avanti ad aggiungere contenuti è meglio mettere in “regola” il sito. Scrivi sul server:

      add-apt-repository ppa:certbot/certbot
      riceverai questo messaggio dalla console:
      ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
      add-apt-repository ppa:certbot/certbot
      This is the PPA for packages prepared by Debian Let's Encrypt Team and backported for Ubuntu(s).
      More info: https://launchpad.net/~certbot/+archive/ubuntu/certbot
      Press [ENTER] to continue or Ctrl-c to cancel adding it.

      ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
      ti basta rispondere con “INVIO” e proseguire…
      scrivi:
      apt-get update
      aspetta che il prompt ritorni libero e scrivi:
      sudo apt-get install python-certbot-apache
      Rispondi Yes a tutte le domande. Scrivi poi:
      certbot --apache -d mioecommerce.online
      Ti verrà intanto richiesta la tua email..
      Enter email address (used for urgent renewal and security notices) (Enter ‘c’ to
      cancel):

      Poi dovrai fornire il tuo consenso alla licenza di letsencrypt

      Please read the Terms of Service at
      https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
      agree in order to register with the ACME server at
      https://acme-v02.api.letsencrypt.org/directory
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      (A)gree/(C)ancel: A

      e ovviamente ti basterà premere “INVIO” e continuare.

      – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

      Would you be willing to share your email address with the Electronic Frontier
      Foundation, a founding partner of the Let's Encrypt project and the non-profit
      organization that develops Certbot? We'd like to send you email about our work
      encrypting the web, EFF news, campaigns, and ways to support digital freedom.
      (Y)es/(N)o: Y

      Rispondi “YES”

      Obtaining a new certificate
      Deploying Certificate to VirtualHost /etc/apache2/sites-available/mioecommerce.online-le-ssl.conf
      Enabling available site: /etc/apache2/sites-available/mioecommerce.online-le-ssl.conf
      Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      1: No redirect - Make no further changes to the webserver configuration.
      2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
      new sites, or if you're confident your site works on HTTPS. You can undo this
      change by editing your web server's configuration.
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

      A questo punto rispondi con “2” e così facendo tutte le richieste verso il sito verranno criptate su SSL e il tanto sospirato lucchetto verde apparirà nella barra del tuo browser.

      Siccome il protocollo http è stato disabilitato, WordPress ti forzerà a rifare il login al sito; niente paura, ti basterà inserire di nuovo login e password.

      Vai sul pannello di controllo e cerca “IMPOSTAZIONI” e quindi “SSL”.
      Attiva SSL come ti propone il plugin e puoi continuare. Anche se il plugin ti avverte che ci sono delle funzionalità attive solo nella versione “PREMIUM” puoi ignorare gli avvisi tranquillamente.

       

      [7] – Come installare woocommerce

      Vai su PLUGIN, quindi “aggiungi nuovo” e digita “woocommerce” nella casella destra, premi “installa ora” e quindi”attiva”.

      Dopo avere premuto partirà in automatico la procedura di installazione:

      1Inserisci il tuo indirizzo esatto, la valuta – EURO – e il tipo di prodotti
      2Imposta come forma di pagamento Paypal e scrivi l’indirizzo email collegato
      3Sui costi di spedizione inserisci per ora solo “forfettaria” al costo di 5.00 EURO
      4Installa il tema di default “Storefront”, e accetta tutte le impostazioni del wizard di woocommerce
      5Evita di installare “Jetpack” per il momento e premi su “Salta questo step”
      6Ti apparirà la scritta “Ora sei pronto per cominciare a vendere!”, inserisci la tua email e premi il tasto “Crea un prodotto”
      7Ignora tutti gli avvisi di Woocommerce e inserisci il prodotto “test1”
      8Inserisci il nome del prodotto sulla prima casella, quindi una breve descrizione e il prezzo
      9Clicca su “pubblica” e “Visualizza prodotto e dovrebbe apparire tuo primo articolo!
      10In basso a destra clicca “immagine del prodotto” e inserisci una foto dalla galleria o fai l’ upload di una nuova foto

      Da questo punto in poi la gestione di WordPress e Woocommerce non differisce dai normali siti ospitati su Bluehost o Siteground, ma il vantaggio in più, ripeto, sta nella velocità del server. Se sei attento alle performance del sito questa guida ti potrebbe essere utile.