added article about bash-notes. Still in draft
[danix.xyz.git] / articles / wp_patcher-un-metodo-per-aggiornare-wordpress.md
diff --git a/articles/wp_patcher-un-metodo-per-aggiornare-wordpress.md b/articles/wp_patcher-un-metodo-per-aggiornare-wordpress.md
deleted file mode 100644 (file)
index 5d72584..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
----
-title: wp_patcher – un metodo per aggiornare WordPress
-author: Danilo M.
-type: post
-date: 2009-07-22T13:37:40+00:00
-excerpt: Ecco un metodo molto semplice per aggiornare la vostra installazione di WordPress, wp_patcher!!
-url: /2009/07/wp_patcher-un-metodo-per-aggiornare-wordpress/
-Sto ascoltando:
-  - smoke on the water
-categories:
-  - diy
-  - linux
-  - WordPress
-tags:
-  - bash
-  - svn
-  - update
-  - WordPress
-
----
-Ciao a tutti,
-
-purtroppo si sa, l’estate è molto dannosa ai contenuti del mio blog, in questa stagione diventa difficile rimanere a casa a scrivere al pc, la tastiera del portatile si trasforma in una piastra su cui si potrebbe tranquillamente arrostire la carne per un picnic e starci vicino e come accendere il caminetto con 40 gradi di temperatura ambientale, praticamente un supplizio…
-
-<!--more-->
-
-Tuttavia gli sviluppatori di WordPress continuano alacremente a sfornare novità, ed è risaputo che bisogna aggiornare sempre la propria installazione di WP per non incorrere in spiacevoli inconvenienti come la perdita dei dati o l&#8217;hacking del proprio sito web. Per venire incontro ai blogger dalle ultime versioni di WP è possibile aggiornare automaticamente la propria installazione utilizzando una voce nel pannello di controllo. Questa possibilità, almeno per me, non ha funzionato nelle ultime 2 revisioni della versione 2.8, quindi ho deciso di provare un&#8217;altra strada :)
-
-chiacchierando su [slacky.eu][1], mi è stato suggerito di usare svn per recuperare le varie versioni di WP e poi di prendere solo le differenze in modo da andare a sostituire solo i files che effettivamente sono stati modificati. A questo punto mi son detto, perchè non scrivere uno script bash che mi chieda solo la mia versione attuale e quella verso cui voglio aggiornare, e poi mi crei un archivio contenente solo i files che mi servono??
-
-Detto fatto, mi sono messo a giocare un po&#8217; con Vim e ho tirato fuori **wp_patcher.sh**, uno script bash che scarica le 2 revisioni richieste di wordpress, controlla le differenze e crea un archivio tar.bz2 pronto per essere installato ;)
-
-Questo è lo script:
-
-<pre class="wp-block-preformatted language-bash"><code>#! /bin/bash
-# WP-patcher - script che si occupa di recuperare le differenze
-# tra 2 versioni differenti di WordPress, scaricando le revisioni
-# tramite svn.
-
-# Autore: Danilo 'danix' Macrì - http://danixland.net
-# Licensed under the statements of the GPL v3 - http://www.gnu.org/licenses/gpl-3.0.html
-
-# exit status
-E_NOARGS=171
-
-# variabili
-workdir="wp_patch"
-old_vrs=$1
-new_vrs=$2
-sane_old_vrs=`echo $1 |sed s/[.]//g`
-sane_new_vrs=`echo $2 |sed s/[.]//g`
-patchdir="${sane_old_vrs}_to_${sane_new_vrs}_patch"
-
-#funzione di aiuto (viene mostrata in caso di errore nell'avvio del programma)
-showhelp () {
-  echo "USO: `basename $0` vecchia_versione nuova_versione"
-  echo "dove 'vecchia_versione' è la tua attuale versione di WordPress"
-  echo "e 'nuova_versione' è la versione verso cui vuoi upgradare"
-  exit $E_NOARGS
-}
-
-# controllo che siano presenti gli argomenti in modo da avere
-# le versioni di WP da scaricare
-if [ -z $1 ];then
-  showhelp
-elif [ -z $2 ];then
-  showhelp
-fi
-
-# inizio l'esecuzione dei comandi
-mkdir $workdir
-cd $workdir
-echo "sto recuperando le 2 versioni svn"
-svn co http://core.svn.wordpress.org/tags/$old_vrs
-echo "ho recuperato la versione $old_vrs"
-svn co http://core.svn.wordpress.org/tags/$new_vrs
-echo "ho recuperato la versione $new_vrs, adesso saranno esportate."
-svn export $old_vrs wp_$sane_old_vrs
-svn export $new_vrs wp_$sane_new_vrs
-rm -rf $old_vrs $new_vrs
-echo "ho esportato correttamente le 2 versioni di wordpress"
-echo "adesso procedo alla creazione della patch"
-diff -qr wp_$sane_old_vrs wp_$sane_new_vrs |cut -d" " -f4 &gt; patch_file.txt
-mkdir $patchdir
-mods=`cat patch_file.txt`
-for i in $mods;do
-  cp --parents $i $patchdir
-done
-echo "compressione in corso..."
-cd $patchdir
-mv wp_$sane_new_vrs wp_$new_vrs
-tar -jcvf ../wp_${patchdir}.tar.bz2 wp_$new_vrs
-cd ../
-mv wp_${patchdir}.tar.bz2 ../
-echo "patch creata"
-echo "ripulisco la directory di lavoro"
-cd ../
-rm -rf $workdir
-echo "l'archivio contenente i files da sostituire"
-echo "è il file 'wp_${patchdir}.tar.bz2"
-# fine :)
-exit 0</code></pre>
-
-E&#8217; molto semplice e non dovrebbe essere difficile modificarlo secondo le vostre necessità&#8230;
-
-Lo script va salvato con un nome a vostro piacimento (io l&#8217;ho chiamato wp_patcher.sh) e poi va lanciato in questo modo:
-
-`wp_patcher.sh vecchia_versione nuova_versione`
-
-In una directory qualsiasi nella vostra home, ovviamente è consigliabile che lo lanciate in una&nbsp; directory vuota in modo da evitare conflitti con i files e le dir che il programma crea durante il suo funzionamento&#8230;
-
-Nell&#8217;esempio che vi ho riportato &#8216;vecchia\_versione&#8217; sarà la vostra attuale versione di WordPress, e &#8216;nuova\_versione&#8217; sarà la versione verso cui vorrete aggiornare.
-
-Perchè lo script funzioni è necessario che nel sistema sia installato svn, tar, e tutti i comandi di base come mv, cp, rm ecc&#8230; ma dubito che stiate utilizzando una qualsiasi distribuzione Linux e non abbiate questi programmi installati ;) .
-
-Una volta creato l&#8217;archivio con i files da aggiornare vi basterà decomprimerlo e caricare i files sul vostro spazio web sovrascrivendo quelli già presenti. Nel caso in cui fosse necessario un aggiornamento del database di WordPress vi basterà lanciare dal browser la pagina **http://urldelblog/wp-admin/upgrade.php**.
-
-<blockquote class="wp-block-quote alert">
-  <p>
-    <strong><em>Come sempre vale il consiglio, prima di aggiornare WordPress, di effettuare un backup dei files e del database, in modo da poter ripristinare una situazione funzionante in caso di problemi.</em></strong>
-  </p>
-</blockquote>
-
-Questo script come potete vedere è rilasciato sotto la GPL v3, quindi è liberamente utilizzabile e modificabile entro i termini di questa licenza appunto.
-
-Se vi dovesse tornare utile, o anche semplicemente se voleste dirmi che lo avete provato o che non ha funzionato o farmi i complimenti o mandarmi a cagare :) non fatevi problemi e lasciatemi un commento&#8230;
-
-A presto
-
- [1]: http://www.slacky.eu "La comunità italiana di utenti slackware"
\ No newline at end of file