Crea sito

Come risolvere un piccolo bug dei temi “Magasin” per WordPress

| 10 ottobre 2009 | 2 Comments

Non so se conoscete i temi gratuiti per WordPress della serie Magasin. Sono temi appositamente studiati per una catalogazione degli articoli secondo uno schema giornalistico e non da blog. In poche parole trasformano un blog in un vero e proprio sito web. Fra le numerose fuzioni simpatiche c’è anche la possibilità di collegare una immagine agli articoli e farla girare in homepage tramite un apposito codice javascript incorporato. Devo ammettere che capirne il funzionamento non è proprio semplice, ma una volta messo a pieno regime da delle soddisfazioni, soprattutto se gli date qualche aggiustatina a vostro piacimento qui e lì. Unica cosa che non ho molto gradito è una funzione eval() annidata nel footer (che appena ho testa e voglia proverò a decomprimere), probabilmente creata per fare in modo che non si possa togliere il copyright, ma è comunque troppo fastidiosa per rimanere lì. Fatto questo elogio alla serie di temi Magasin passiamo al punto dell’articolo, la risoluzione del bug che, una volta installato il tema, mostra questa scritta e ne impedisce il funzionamento:

Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or ‘}’ in /wp-content/themes/magasin-uno/functions/option.php on line 5

Logicamente in questo caso si tratta del tema “Magasin-uno”, ma girando per la rete in cerca di notizie ho notato che questo errore si presenta su tutti i temi della serie indifferentemente, quindi la soluzione è la medesima.

L’errore è dovuto al fatto che il server su cui lo avete installato sta girando con la libreria PHP4 e non PHP5 (Grazie a ClAuS per la geniale e semplice intuizione). A questo punto le soluzioni possibili sono due.

  1. Nel caso in cui abbiate la possibilità di abilitare l’esecuzione della versione PHP 5 invece della 4, vi consiglio caldamente di utilizzare questa prima possibilità dato che da una maggiore sicurezza nell’esecuzione del codice (in poche parole, nel codice fornito, alcune funzioni hanno nomi che vengono protetti da eventuali sovrascrittura da altre parti di codice, cosa che adattandolo al PHP 4 non avviene più).
  2. Adattare il codice del tema al PHP4. In questo caso vi toccherà aprire i due file “option.php” ed “advertisement.php” nella sottocartella “functions” del tema e modificarli.

Iniziamo dal file “option.php”, apriamolo con un editor di testo, possibilmente non wordpad, va invece benissimo notepad di Windows. Prima di tutto cancelliamo queste le seguenti righe:

protected $keyword;
protected $value;
protected $name;
protected $type;
protected $description;
protected $width;
protected $height;

Una volta fatto questo procediamo togliendo tutti i “public ” da davanti alle funzioni di tutto il file. Salvare e sostituire a quello sul server. poi passiamo al secondo file “advertisement.php” facendo più o meno lo stesso procedimento. Apriamolo e cancelliamo le seguenti righe:

protected $keyword;
protected $value_img;
protected $value_web;
protected $name;
protected $description;

ed anche in questo caso cancelliamo tutti i “public ” da davanti alle funzioni di tutto il file. Salviamo e sostituiamo anche questo file a quello originale. A questo punto dovrebbe funzionare tutto perfettamente anche con php4.

Auguri per il nuovo tema! 😉

VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
Come risolvere un piccolo bug dei temi “Magasin” per WordPress, 10.0 out of 10 based on 1 rating

Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Category: Informatica

About the Author ()

Comments (2)

Trackback URL | Comments RSS Feed

  1. Claus scrive:

    eh se non c’ero io 😀 avresti risolto lo stesso senza sapere il motivo dell’errore

    VA:F [1.9.22_1171]
    Rating: 0.0/5 (0 votes cast)
    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)
  2. MindLab scrive:

    Eh si, non avevo voglia di cercare il perchè, avevo semplicemente corretto il codice togliendo le parti da me considerate inutili (che infatti in php4 lo erano).

    VN:F [1.9.22_1171]
    Rating: 0.0/5 (0 votes cast)
    VN:F [1.9.22_1171]
    Rating: 0 (from 0 votes)

Leave a Reply