[wordpress] Trasferire sito da un dominio (o da locale) ad un altro

Trasferire un sito fatto in WordPress da un dominio all’altro è molto semplice. Questo vale anche nel caso in cui si abbia un sito in WordPress su un server locale (per esempio XAMPP) e lo si voglia trasferire su un hosting online.

1. Copiare tutti i file

Anzitutto dobbiamo copiare tutti i file da un dominio all’altro. Se abbiamo il sito su XAMPP, in locale quindi, dobbiamo individuare la cartella di installazione e copiare tutti i file contenuti in essa. La cartella con i file avrà circa questo aspetto:

Trasferiamo tutti quanti i file nella radice del nuovo hosting.

2. Esportare il database

Adesso dobbiamo esportare il database del sito, cosa che possiamo fare tipicamente da PHPMyAdmin. Nel caso di XAMPP l’indirizzo per l’accesso al database sarà probabilmente http://127.0.0.1/phpmyadmin

Dentro PHPMyAdmin selezioniamo il nostro database e poi andiamo alla voce Esporta. In generale da qui è sufficiente cliccare su esegui per scaricare il file *.sql.

3. Cambiare l’indirizzo del sito nel database

A questo punto apriamo il file *.sql che abbiamo appena scaricato con un editor di testo (per esempio Notepad++).

Dentro il file cerchiamo il termine siteurl, dovremmo trovare qualcosa di simile a questo:

Questo è l’indirizzo del nostro sito. Nel caso specifico vuol dire che il vecchio percorso del sito era http://127.0.0.1/wp

Immaginiamo che il nuovo dominio, sul quale vogliamo trasferire il sito, sia https://petarkaran.it

Faccio notare che il nuovo dominio ha la dicitura https anziché http.

A questo punto dobbiamo fare le seguenti sostituzioni usando l’opzione Trova e Sostituisci (disponibile nella maggior parte degli editor come Notepad++). Nel mio caso procederò nel modo seguente:

Attenzione a rispettare la medesima combinazione di slash. Quindi sostituiremo con i seguenti comandi:

http://127.0.0.1/wphttps://petarkaran.it

http:\/\/127.0.0.1\/wphttps:\/\/petarkaran.it

127.0.0.1/wppetarkaran.it

127.0.0.1\/wppetarkaran.it

ATTENZIONE a non fare i seguenti errori dove la struttura del dominio non è la medesima.

http://127.0.0.1/wphttps://petarkaran.it/

http://127.0.0.1/wp/https://petarkaran.it

In generale se si deve passare da un dominio ad un altro dominio è sufficiente usare:

https://vecchiodominio.exthttps://nuovodominio.ext

https:\/\/vecchiodominio.exthttps:\/\/nuovodominio.ext

Una volta fatte le modifiche salvare il file *.sql ed importarlo sul nuovo database.

4. Modificare wp-config.php

Ultima operazione che dobbiamo fare è modificare la configurazione del database dentro al file wp-config.php

Apriamo il file e modifichiamo le seguenti righe di codice:

In ordine mettiamo i dati del nome del database, lo username del database, la password del database e l’indirizzo host del database.

Una volta modificato il file wp-config.php carichiamolo sul nostro nuovo hosting ed abbiamo finito.

Vedi articolo

[wordpress] Escludere pagine dalla sitemap generata da YoastSEO oppure JetPack

Sia YoastSEO che JetPack permettono di generare automaticamente delle sitemap per i contenuti del sito.

Potrebbe essere però necessario escludere alcune pagine dalla sitemap. Per esempio le pagine del carrello, del checkout e dell’account, generate da WooCommerce, comprendono il tag noindex, che le esclude dall’indicizzazione di Google per ovvie ragioni (principalmente pratiche, inutile indicizzare contenuti accessibili solo per motivi funzionali o per alcuni utenti).

In entrambi i casi, la presenza di tali pagine nella sitemap, provoca degli errori sulla Google Search Console (vengono proposti link per l’indicizzazione, che poi non possono essere indicizzati per via del tag noindex). Per risolvere simili problemi è sufficiente rimuovere le pagine coinvolte dalla sitemap.

In entrambi i casi è possibile farlo programmaticamente (per YoastSEO anche intervenendo nelle opzioni di ciascuna pagina) aggiungendo un’opportuno filtro nel file functions.php del tema (o dove si preferisce).

Per JetPack sarà sufficiente aggiungere il seguente codice:

In questo caso verranno escluse le pagine con ID 102, 103 e 104. Per trovare l’ID di un contenuto, in generale, è sufficiente controllare l’indirizzo al momento della modifica. Modificando un articolo si avrà un indirizzo del tipo post.php?post=102&action=edit

Il 102 è l’ID del contenuto.

In maniera analoga per YoastSEO è sufficiente aggiungere il seguente codice:

In entrambi i casi i contenuti con l’ID coinvolto non verranno più inseriti nella sitemap.

Vedi articolo

[wordpress] Got error ‘crayon-syntax-highlighter/crayon_langs.class.php on line 340

Problema: Dopo l’aggiornamento al PHP 7.3 il plugin per WordPress Crayon Syntax Highlighter, utilizzato per evidenziare codici di programmazione, smette di funzionare e blocca la visualizzazione delle pagine nelle quali è utilizzato.

Soluzione: Modificare due file per rendere compatibile il riconoscimento per espressioni regolari con le nuove definizioni di PCRE2

L’errore che si presenta è tipo il seguente: AH01071: Got error 'crayon-syntax-highlighter/crayon_langs.class.php on line 340PHP message: PHP Warning: preg_replace(): Compilation failed: invalid range in character class at offset 4 in

Purtroppo il plugin, per quanto buono, non è aggiornato da 4 anni.

In particolare presenta problemi con l’aggiornamento del PHP alla versione 7.3, per via delle nuove definizioni PCRE2 ed in particolare proprio per la presenza di un segno – (meno), proprio come trattato nel precedente articolo.

Per risolvere il problema facciamo nel modo seguente. Posizioniamoci nella cartella del plugin /wp-content/plugins/crayon-syntax-highlighter/

Modifichiamo il file crayon_langs.class.php alla riga 340

Sostituiamo la riga con:

Modifichiamo il file crayon_formatter.class.php alla riga 118

Sostituiamo le due righe con:

Fatto tutto questo il problema sarà risolto e potremo continuare ad usare il plugin.

Vedi articolo

[wordpress] Cambiare le bandierine per le lingue di PolyLang

Per cambiare le immagini delle bandiere delle lingue del plugin PolyLang è sufficiente procedere nella maniera seguente:

  1. Creare dei file PNG (*.png), JPG (*.jpg) o SVG (*.svg) nominandoli secondo il codice della lingua, ad esempio: it_IT per italiano, en_GB o en_US per inglese (dipende quale si è scelto nelle impostazioni di PolyLang), de_DE per il tedesco ecc
  2. Creare la cartella /wp-content/polylang (la cartella non esiste di predefinito)
  3. Caricare nella cartella i file delle bandiere creati in precedenza
  4. Andare su WordPress in Bacheca > Lingue > Impostazioni > Modifiche dell’URL > Impostazioni, senza dover apportare modifiche premere su Salva modifiche

A questo punto le nuove bandiere saranno visibili al posto di quelle predefinite.

Vedi articolo

[wordpress] Problema video Revolution Slider 6 con Uncaught TypeError: Cannot read property ‘x’ of undefined

Problema: inserendo in Revolution Slider 6 delle slide con video in HTML5 (file mp4 nel caso particolare) lo slider non riesce ad avviarsi e provoca un loop infinito di errori nella console javascript.

Soluzione: l’errore dipende probabilmente da un altro plugin che provoca incompatibilità nel codice. Nel mio caso specifico l’errore era provocato da Enlighter – Customizable Syntax Highlighter. Disattivando il plugin lo slider torna a funzionare.

Nel caso specifico l’errore che si presenta è il seguente.

Uncaught TypeError: Cannot read property 'x' of undefined
at HTMLVideoElement.computePosition (mootools-core-yc.js?ver=3.10.0:4)
at HTMLVideoElement.setPosition (mootools-core-yc.js?ver=3.10.0:4)
at Object.R (revolution.tools.min.js?ver=6.0:46)
at Object.i._initProps (revolution.tools.min.js?ver=6.0:46)
at Object.i._init (revolution.tools.min.js?ver=6.0:46)
at Object.i.render (revolution.tools.min.js?ver=6.0:46)
at Object.i.render (revolution.tools.min.js?ver=6.0:46)
at Object.E._updateRoot.H.render (revolution.tools.min.js?ver=6.0:46)
at Object.i.dispatchEvent (revolution.tools.min.js?ver=6.0:45)
at s (revolution.tools.min.js?ver=6.0:45)

Oltre a cercare di correggere il file revolution.tools.min.js, cosa che sconsiglio caldamente, conviene verificare quali altri plugin stiano utilizzando mootools, perché probabilmente ci sono delle incompatibilità.

Disattivando il plugin in questione lo slider torna a funzionare correttamente.

Vedi articolo

[php] Modificare programmaticamente i prezzi nel carrello di WooCommerce su WordPress

Immaginiamo di voler modificare i prezzi dei prodotti su WooCommerce una volta che sono stati inseriti nel carrello. Nel mio esempio voglio aggiungere uno sconto del 50% su un prodotto quando vengono comprati almeno 2 prodotti dello stesso tipo.

Per fare questo anzitutto voglio calcolare quanto verrebbe il costo di un singolo prodotto affinché la somma di tutti i prodotti, dello stesso tipo, risulti tale che 1 solo dei prodotti sia scontato al 50%.

Ammettiamo che n sia il numero di prodotti (n ≥ 2), s lo sconto (nel mio caso 50%) e x il prezzo di ciascun prodotto. Avremo

n*x=x*s+(n-1)*x

x = x*(s+n-1)/n

Stabilito questo usiamo il hook per WooCommerce woocommerce_before_calculate_totals inserendo il nostro calcolo per ultimo (dopo tutti gli eventuali plugin).

La base del codice che vogliamo usare è la seguente:

Questa funzione può essere inserita dentro functions.php del nostro tema.

Detto questo dobbiamo anche prendere in considerazione che sul prezzo finale del prodotto potrebbero incidere ulteriori parametri (derivati magari da altri plugin) che potrebbero variare il prezzo. Per ovviare a questo problema legherò il hook alla fine di tutte le altre eventuali operazioni (da qui il valore 1000 nell’ordinamento di esecuzione del hook) e calcolerò il prezzo a partire da quello base, applicando poi il modificatore che sarebbe risultato prima del mio sconto.

La nuova funzione sarà la seguente:

Volendo calcolare il valore scontato al 50% al parametro p ho inserito il valore 0.5.

In questo modo calcoliamo il prezzo finale che dovrebbe avere ciascun prodotto, affinché risulti che la somma dei prodotti sia la somma di un prodotto scontato al 50% e di tutti gli altri a prezzo pieno (compresi gli eventuali modificatori).

Vedi articolo

[wordpress] Aggiungere un utente amministratore programmaticamente

Per creare un utente amministratore per il nostro sito di WordPress utilizzando solo il codice di programmazione (immaginiamo per esempio di aver dimenticato l’utente principale e non voler fare modifiche sul database, dove per altro sarebbe ancora più facile), è sufficiente procedere nella maniera seguente.

Apriamo il file functions.php che si trova nella cartella del tema, tipicamente in /wp-content/themes/

In fondo al file aggiungiamo il seguente pezzo di codice:

A questo punto eseguiamo una qualunque pagina del sito, per esempio la home page, ed il gioco è fatto. 🙂

Vedi articolo

[woocommerce] Nascondere gli attributi senza alcuna variante attiva

In WooCommerce è possibile creare prodotti con diverse varianti. Immaginiamo di avere una situazione come la seguente:

 

In questo caso la prima variante di colore non è disponibile in alcuna taglia e se la proviamo a selezionare ci compare un avviso che ci dice che non c’è alcun prodotto selezionabile. Per evitare che il cliente debba testare tutte le combinazioni inutilmente WooCommerce, sotto a 10 variazioni per prodotto, tende a nascondere automaticamente le combinazioni inesistenti.

Quando però, come in questo caso, il numero di variazioni aumenta per motivi di prestazioni l’opzione non è attiva. Per aumentare tale limite basta aggiungere a functions.php nel nostro tema le seguenti righe di codice:

A questo punto vedremo un risultato come il seguente (abbiamo impostato il limite a 500):

Si può notare come il primo colore, assieme ad altri, è automaticamente sparito.

Vedi articolo

Installazione Ubuntu 18.04.2 LTS webserver pronto all’uso [per esordienti totali]

Abbiamo già visto come installare Ubuntu 16.04.2 LTS e predisporlo per fare da webserver. Stavolta voglio ripetere la procedura, utilizzando però l’ultima distribuzione a lungo termine ovvero Ubuntu 18.04.2 LTS.

Come al solito eseguiremo l’operazione utilizzando VirtualBox. Per chi lo volesse installare su una macchina fisica la procedura sarebbe comunque analoga.

1. Configurazione Ubuntu Server 18.04.2 LTS

Anzitutto procuriamoci la ISO dal sito ufficiale.

Selezioniamo la seguente configurazione e premiamo download.

A questo punto cominciamo a creare la macchina virtuale sulla quale faremo girare il nostro webserver. Dentro VirtualBox premiamo CTRL+N. Si avvierà la seguente schermata che prepariamo nel modo seguente:

Premiamo su Successivo. Ci verrà chiesto quanta RAM intendiamo assegnare, mettiamo almeno 1024MB (ossia 1GB).

Procediamo e scegliamo di creare un nuovo disco fisso virtuale.

Proseguiamo selezionando VDI e per lo spazio diciamo Allocato dinamicamente (questo vuol dire che il disco virtuale non occuperà immediatamente tutto lo spazio assegnato, ma solo via via che il sistema operativo ne avrà bisogno).

Lasciamo 10 GB di spazio.

A questo punto avviamo la macchina virtuale.e ci verrà chiesto di selezionare un disco di avvio. Se fosse stata una macchina fisica si sarebbe trattato del supporto di installazione, per esempio un CD oppure una penna USB. Nel nostro caso clicchiamo sulla cartellina gialla e andiamo a selezionare il file ISO che abbiamo scaricato in precedenza dal sito ufficiale.

Se abbiamo fatto tutto correttamente dovremmo vedere qualcosa di simile:

Premiamo su Avvia.

A questo punto inizierà il caricamento del programma di installazione finché non ci si presenterà la schermata dove scegliere la lingua.

Selezioniamo inglese. A quanto pare ancora non lo hanno tradotto in italiano.

Premiamo il tasto INVIO.

Usando le frecce direzionali, nella schermata successiva, posizioniamoci sui menu a tendina della lingua e premendo INVIO apriamolo. Selezioniamo la tastiera italiana e premiamo di nuovo INVIO. A questo punto torniamo, premendo la freccia verso il basso, su [Done].

Alla prossima schermata premiamo nuovamente INVIO.

A questo punto ci verrà chiesto come vogliamo configurare la scheda di rete. Se stiamo usando una macchina virtuale come VirtualBox la scheda di rete sarà identificata dal dispositivo enp0s3 (normalmente sarebbe eth0, eth1, ecc…). Premiamo nuovamente INVIO.

Alla richiesta di configurare il proxy lasciamo tutto così com’è e premiamo di nuovo INVIO.

Selezioniamo il mirror predefinito per le repository di Ubuntu premendo semplicemente INVIO.

Nella prossima schermata scegliamo come formattare il disco. In questo esempio voglio utilizzare LVM per la gestione dei dischi, quindi mi sposto sulla seconda voce e premo nuovamente INVIO.

Per maggiori approfondimenti sull’utilizzo del LVM suggerisco questo articolo.

Selezioniamo il disco da partizionare, che è anche l’unico disco di cui disponiamo in questo momento.

Arrivati a questo punto possiamo verificare l’intera configurazione ed apportare, eventualmente, delle modifiche. Nel nostro caso lasciamo tutto tale e quale e procediamo premendo INVIO.

Ci chiederà se siamo sicuri di proseguire. Proseguiamo 🙂

Adesso compiliamo i campi con il nostro nome, il nome del server, lo username e la password. Memorizziamo questi dati perché ne avremo bisogno per accedere al server una volta pronto.

Alla schermata successiva selezioniamo la casella di Installa OpenSSH server premendo la barra spaziatrice. Spostiamoci poi con le frecce su Done e proseguiamo premendo INVIO.

Nella schermata successiva spostiamoci immediatamente su Done premendo il tasto della tabulazione e poi di nuovo INVIO.

A questo punto inizierà l’installazione, non ci resta che aspettare pazientemente che finisca.

Quando sarà tutto finito ci troveremo di fronte ad una schermata come questa, dove ci viene chiesto di riavviare. Premiamo INVIO e riavviamo il sistema.

Poco dopo ci verrà chiesto di rimuovere il dispositivo di installazione. Premiamo semplicemente INVIO e aspettiamo.

ATTENZIONE: Normalmente ci si dovrebbe trovare di fronte alla seguente schermata:

ma operazioni in differita su questa ultima versione di Ubuntu fanno sì che si sovrappongano degli output oltre la schermata di login. Se compare qualcosa di simile a questo è sufficiente premere INVIO per avere accesso alla schermata di login.

A questo punto effettuiamo il login con le credenziali che abbiamo creato in precedenza.

Una volta dentro il sistema digitiamo ifconfig e dovremmo vedere un risultato simile a questo.

Come possiamo notare il server si trova sull’indirizzo 10.0.2.15 che è l’indirizzo automatico assegnato dalla rete virtuale NAT di VirtualBox alla macchina virtuale.

Quello che vogliamo fare adesso è creare una nostra rete NAT personalizzata sulla quale spostare il server. VirtualBox ci permette infatti di creare una rete interna che, rispetto al nostro computer host, sarà raggiungibile all’indirizzo 192.168.56.1. Tale indirizzo sarà, rispetto al server, l’indirizzo esterno con il quale la rete virtuale nella quale si trova il server si affaccerà alla rete nella quale si trova il computer host.

Andiamo perciò sul panello di controllo di VirtualBox, spostiamoci su File > Preferenze (raggiungibile anche premendo CTRL+G).

Spostiamoci su Rete e poi premiamo il pulsante con la scheda di rete e il simbolo più verde . Questo aggiungerà una nuova rete virtuale chiamata NatNetwork (nel mio caso ci sono già altre reti configurate). Restando su NatNetwork premiamo il terzo pulsante a destra con il simbolo dell’ingranaggio .

Impostiamo la rete nel modo seguente scegliendo come ID di rete 10.0.2.0/24:

Con l’IP Calculator possiamo testare i dettagli della rete, ma per quello che ci interessa avremo 254 host dal 10.0.2.1 al 10.0.2.254.

Premiamo OK e spostiamoci nelle impostazioni della nostra macchina virtuale.

Andiamo su Rete e impostiamo come tipo di rete Rete con NAT e il nome Rete Ubuntu, che abbiamo creato prima.

A questo punto torniamo dentro la nostra macchina virtuale e aggiorniamo lo stato della connessione di rete.

Per farlo digitiamo: sudo netplan apply

Digitiamo ifconfig  e verifichiamo l’IP al quale è connesso adesso il nostro server. Nel mio caso è sempre 10.0.2.15

Adesso torniamo nelle Preferenze > Rete e andiamo ad impostare l’inoltro delle porte sulla rete che abbiamo creato.

Dal momento che vogliamo testare il server web con Apache e usare l’SSH per connetterci, dobbiamo inoltrare le porte 80, 443 e la 22.  Per aggiungere nuove regole di inoltro premiamo sul tasto col più verde e compiliamo l’elenco nel modo seguente.

L’indirizzo 192.168.56.1 rappresenta l’indirizzo della scheda di rete virtuale creata da VirtualHost, con la quale possiamo collegarci dal nostro PC alla rete virtuale creata poc’anzi. Fatto tutto questo diamo OK a tutto e proviamo a collegarci alla nostra macchina utilizzando Putty.

Se abbiamo fatto tutto a dovere adesso la macchina dentro la rete NAT virtuale è raggiungibile dall’indirizzo esterno 192.168.56.1.

Configuriamo Putty e premiamo Open.

Se tutto è andato bene ci verrà chiesto di acquisire la chiave per la connessione. Diciamo di sì:

A questo punto entriamo dentro il sistema usando Putty.

Procediamo con l’installazione di Apache e degli altri componenti del server LAMP.

2. Installazione e configurazione Apache

Per installare Apache anzitutto aggiorniamo la repository di Ubuntu digitando:

Quando finisce l’operazione procediamo installando Apache e digitiamo:

Se tutto è andato bene possiamo andare all’indirizzo http://192.168.56.1/ e verificare che si veda una pagina come la seguente:

Questa è la pagina default del nostro server Apache. La possiamo anche modificare andando nella cartella /var/www/html che è la root default del server.

Proviamo a farlo digitando:

Dentro Putty dovremmo vedere qualcosa come questo:

A questo punto usciamo dall’editor nano premendo CTRL+X e poi rimuoviamo il file e mettiamone uno nuovo digitando.

Dentro il file scriviamo semplicemente:

E salviamo premendo CTRL+O. Premiamo INVIO per confermare e CTRL+X per uscire.

Tornando su http://192.168.56.1/ dovremmo vedere qualcosa di analogo a questo:

3. Installazione e configurazione MySQL

Per installare il database MySQL digitiamo:

Premiamo Y alla richiesta di conferma dell’installazione e poi aspettiamo che sia ultimata. Una volta completata digitiamo:

Questo avvierà una procedura di configurazione del nostro database, durante la quale ci verranno richieste diverse cose. Alle varie domande rispondiamo rispettivamente:

Press y|Y for Yes, any other key for No: Y

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2

(dove: STRONG Length >= 8, numeric, mixed case, special characters and dictionary file)

New password: )9@JZ21@pam)KUfB)2hc{n[vrK?BAeTU  (questo è un esempio di password che possiamo mettere, questa password ha una qualità di 187bit e una lunghezza di 32 caratteri)

Se la passowrd è buona ci verrà detto qualcosa come:

Estimated strength of the password: 100

Proseguiamo:

Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y

Fatto questo il database è pronto per l’utilizzo.

4. Installazione e configurazione PHP

Procediamo installando il PHP e digitando:

Confermiamo sempre con Y quando ci viene richiesto.

Una volta finito verifichiamo che sotto Apache le pagine index.php siano configurate come pagine predefinite:

Se tutto va bene vedremo qualcosa come:

Notiamo la presenza di index.php quindi possiamo procedere tranquillamente.

Per concludere riavviamo il server Apache.

5. Ulteriori configurazioni

A questo punto dovremmo fare ancora qualche implementazione, configurando alcune cose come:

  1. Sistemare il Firewall
  2. Mettere in sicurezza Apache
  3. Configurare fail2ban ed altri eventuali servizi

Io procederò con un esempio su come configurare un nuovo VirtualHost e installarci sopra WordPress.

6. Configurazione VirtualHost e installazione WordPress

Quello che vogliamo fare adesso è aggiungere un dominio al nostro server, affinché alla richiesta di un sito web su tale dominio esso risponde.

In poche parole voglio aggiungere il sito torregatti.com al mio server. Per farlo dobbiamo aggiungere un host virtuale. (qui un esempio della solita procedura)

Per farlo voglio creare, dentro a /var/www/ una cartella dedicata al dominio e poi aggiungerlo ai VirtualHost di Apache.

Procediamo quindi nel modo seguente creando anzitutto la suddetta cartella che, per motivi di ordine, chiamerò come il dominio:

Adesso assegniamo la cartella ad Apache modificando i permessi e digitando:

Aggiungiamo il VirtualHost in sites-available copiando un modello esistente:

Modifichiamo il file che abbiamo appena copiato ed aperto fino ad ottenere qualcosa di simile:

In questo modo il nostro server risponderà sia al dominio torregatti.com che al sottodominio www.torregatti.com

Salviamo con CTRL+O e confermiamo premendo INVIO.

Abilitiamo il host digitando:

Ricarichiamo Apache digitando:

A questo punto possiamo testare la nostra configurazione da dentro Windows modificando il file hosts in C:\Windows\System32\drivers\etc\ impostandolo nel modo seguente:

Salviamo e verifichiamo dal browser che il risultato sia simile a questo:

7. Installazione e configurazione di WordPress

Adesso voglio concludere installando WordPress sul nostro nuovo dominio appena creato.

Anzitutto spostiamoci dentro la cartella del dominio e scarichiamo WordPress digitando i seguenti comandi:

Installiamo zip e scompattiamo il pacchetto:

Spostiamo tutti i file da dentro la cartella wordpress alla radice del dominio digitando:

Rimuoviamo la cartella wordpress:

Assegniamo tutti i file ad Apache, altrimenti avremo problemi durante l’utilizzo del portale (per esempio nel caricamento delle immagini).

Creiamo ora un database con utente per la torregatti.com

Accediamo al database digitando:

Creiamo un nuovo database digitando:

Creiamo un utente per il database e diamogli tutti i privilegi.

A questo punto andando su http://torregatti.com dovremmo vedere l’installazione di WordPress.

Completiamo tutti i dati che abbiamo già configurato:

Completiamo l’installazione seguendo le istruzioni a video ed abbiamo finito.

Vedi articolo

[wordpress] Too few arguments to function wpdb::prepare()

Soluzione veloce: Nella funzione $wpdb->prepare() va aggiunto almeno un argomento, che può essere anche array(), nella maniera seguente $wpdb->prepare( “SELECT * FROM tabella” , array() ).

Questo errore si presenta perché nella funzione $wpdb->prepare() manca un argomento, ovvero quello dei parametri da “preparare” dentro la query. Supponiamo per esempio di avere una variabile $id che vada inserita in una query. La seguente operazione sarebbe sbagliata:

L’errore sarebbe sia pratico che concettuale. Anzitutto questa scrittura di per se non necessita del $wpdb->prepare() dal momento che la variabile è già inserita nella stringa.

In secondo luogo la definizione della funzione prevede l’utilizzo di almeno due argomenti, come descritto qui: wpdb::prepare( string $query, array|mixed $args )

La funzione corretta sarebbe:

Oppure:

 

Vedi articolo