SEO e WordPress: Ecco 10 funzioni per aumentare la velocità di caricamento del tuo blog

Se usi wordpress saprai sicuramente che utilizzare tanti plugin significa incrementare notevolmente la pesantezza e la lentezza del tuo blog.

Ciò che probabilmente non sai è che spesso utilizzando poche righe di codice php sarai in grado di raggiungere lo stesso scopo per cui sono stati sviluppati i plugins con la metà delle risorse.

In questo articolo mi piacerebbe illustrarti qualche piccolo trucco grazie al quale potrai aumentare le funzionalità del tuo cms, riducendo le risorse utilizzate sul tuo server.

Tutte le funzioni che sto per mostrarti andranno implementate nel file function.php del tuo tema, (tuoblog.com/wp-content/themes/tuotema/function.php):

1. Come Inserire i Banner Adsense con uno Shortcode:

adsense su blog

Attraverso questa funzione sarai in grado di inserire un banner adsense delle dimensioni che preferisci, sia nelle pagine sia negli articoli, in un punto ben preciso:

<br /><br />function wpc_adsense_shortcode($content= null) {<br /><br />return ' QUI IL CODICE ADSENSE NON MODIFICARE GLI APICI ';<br /><br />}<br /><br />add_shortcode('adsense', 'wpc_adsense_shortcode' );<br /><br />

a questo punto potrai inserire i banner nei tuoi articoli semplicemente scrivendo [adsense].

Vorrei rassicurarti sul fatto che utilizzare utilizzare questo script non modifica il codice javascript di Google adsense pertanto non viola le policy del programma.

Ti segnalo che puoi ottenere lo stesso effetto con diversi plugin disponibili gratuitamente per esempio:

  • Author Advertising, tempo fa avevo scritto una guida su come configurarlo correttamente;
  • Adsense Deluxe è un ottimo plugin, ma ho scoperto, leggendone il codice sorgente, che l’autore lo aveva programmato per mostrare anche i suoi adsense all’insaputa di chi usava il plugin;
  • Adman un altro plugin che permette di inserire banner pubblicitari nei tuoi articoli, onestamente non mi ha mai convinto.

Ti faccio notare che nessuno di questi plugin utilizza il tag [adsense] per mostrare gli annunci.

2. Come Aggiungere un Video da Youtube con uno Shortcode:

youtube icona

Utilizzo questo codice in un plugin per wordpress che sto sviluppando, ti permetterà di inserire il player (con il relativo video) con uno shortcode, partendo sia dall’url sia dallo shortlink, potrai anche modificare le dimensioni del player specificandolo direttamente nello shortcode:

<br /><br />function wpc_youtube_player($atts, $content= null) {<br /><br />extract(shortcode_atts(array(<br /><br />"url" =&gt; 'www.'<br /><br />), $atts));<br /><br />extract(shortcode_atts(array(<br /><br />"width" =&gt; 'width'<br /><br />), $atts));<br /><br />extract(shortcode_atts(array(<br /><br />"height" =&gt; 'height'<br /><br />), $atts));<br /><br />$cerca_id_youtube = str_replace(array('http://www.youtube.com/watch?v=','http://youtu.be/','http://youtube.com/watch?v=','http://www.youtu.be/'), '', $url);<br /><br />return '&lt;/pre&gt;<br /><br />&lt;iframe src="http://www.youtube.com/embed/'.$cerca_id_youtube.'" frameborder="0" width="'.$width.'" height="'.$height.'"&gt;&lt;/iframe&gt;<br /><br />&lt;pre&gt;';<br /><br />}<br /><br />add_shortcode('youtube', 'wpc_youtube_player');<br /><br />

Questa, che sembra una funzione complicata funziona così: nei tuoi articoli devi semplicemente scrivere:

  • [youtube url="http://www.youtube.com/watch?v=Z8-qMLFuLPE" width="500" height="100"]
  • [youtube url="http://youtu.be/Z8-qMLFuLPE" width="600" height="250"]

Questo script è la combinazione dell’utilizzo delle API di WordPress e del comando php “str_replace”.

In sostanza questo comando ti permette di sostituire, dove presente, il testo presente nel primo array con (in questo caso) un testo vuoto racchiuso negli ultimi apici, se per altri utilizzi potresti trovare utili queste risorse:

3. Come Inserire Automaticamente i Metatag di Facebook:

facebook

Grazie a questa funzione potrai inserire i meta tag di facebook automaticamente, non devi fare nient’altro, solo inserire il codice nel file function.
In questo modo eviterai di mettere mano al file header.php rischiando di mandare a monte la testata del tuo blog:

<br /><br />function wpc_facebook_opengraph() {<br /><br />?&gt;<br /><br />&lt;meta property="og:title" content="&lt;?php the_title(); ?&gt;" /&gt;<br /><br />&lt;meta property="og:url" content="&lt;?php the_permalink(); ?&gt;" /&gt;<br /><br />&lt;meta property="og:site_name" content="&lt;?php bloginfo('name'); ?&gt;" /&gt;<br /><br />&lt;meta property="og:description" content="&lt;?php echo strip_tags(get_the_excerpt($post-&gt;ID)); ?&gt;" /&gt;<br /><br />&lt;meta property="fb:admins" content="QUI IL TUO ID FACEBOOK, PUOI METTERNE PIU DI UNO SEPARATO CON LA VIRGOLA"/&gt;<br /><br />&lt;meta property="og:image" content="&lt;?php echo wp_get_attachment_thumb_url( get_post_thumbnail_id( $post-&gt;ID ) ) ?&gt;"/&gt;<br /><br />&lt;?php }<br /><br />add_action('wp_head', 'wpc_facebook_opengraph');<br /><br />

Questa funzione merita qualche chiarimento: nel campo og:image verrà postata l’immagine in Evidenza; quindi se non la inserirai non verrà pubblicata alcuna immagine di anteprima su facebook, nel campo og:admins devi inserire l’id del tuo profilo o il tuo nickname; puoi metterne più di uno separandoli con la virgola.

Per maggiori dettagli sui tag OpenGraph di facebook, su come utilizzarli ti consiglio di dare uno sguardo a queste risorse:

4. Inserire il Pulsante “Mi Piace” nei tuoi Articoli con uno Shortcode:

mi piace di facebook

In qualsiasi punto delle tue pagine o dei tuoi articoli, grazie a questo shortcode, potrai mostrare il pulsante “mi piace” di facebook:

<br /><br />function wpc_mi_piace() { ?&gt;<br /><br />&lt;div class="fb-like" data-href="&lt;?php the_permalink(); ?&gt;" data-send="true" data-width="450" data-show-faces="true" data-font="verdana"&gt;&lt;/div&gt;<br /><br />&lt;?php  }<br /><br />add_shortcode('mi_piace', 'wpc_mi_piace');<br /><br />

Per utilizzarlo scrivi semplicemente [mi_piace].

Se utilizzi in modo combinato questa funzione con la precedente otterrai quelle che Daniele Ghidoli di Bigthink.it chiama pagine fantasma, ovvero quando l’utente clicca sul pulsante “mi piace” non solo condivide l’articolo su facebook, ma diventa anche fan della pagina facebook corrispondente (che verrà creata automaticamente), guarda qui sotto:

Per ulteriori risorse sul pulsante “mi piace” e sulle pagine fantasma puoi leggere:

5. Come Aggiungere la “Favicon” al tuo Blog:

cartella favicon

La Favicon è l’icona che appare affianco all’url di un qualsiasi sito.

Il problema è che non tutti i template per wordpress la utilizzano, pertanto se vuoi inserirla inserisci questa funzione:

<br /><br />function wpc_favicon () {<br /><br />return '&lt;link rel="icon" type="image/png" href="INDIRIZZO DELL'IMMAGINE"&gt;';<br /><br />}<br /><br />add_action('wp_head', 'wpc_favicon');<br /><br />

Ovviamente prima di inserire questa funzione dovra mettere l’icona sul tuo server, la dimensione dovrebbe essere 16 x 16 pixel.

Come hai potuto notare già in due occasioni ho utilizzato la sintassi “add_action wp_head”, questa fa parte delle API dei plugin di wordpress, e serve per includere codice (in qualsiasi linguaggio) direttamente tra i tag <head></head> del tuo blog, localizzati nel file header.php del tuo tema, se ti interessa capirne di più dai uno sguardo a:

  • Plugin API sul Codex di WordPress, nella sezione “Action Reference”
  • In particolare all’azione “wp_head” sempre sul codex di wordpress

6. Come Eseguire uno Shortcode al di Fuori degli Articoli:

wordpress shortcode

Prima ti ho spiegato come creare shortcode da usare negli articoli.

Adesso voglio mostrarti un trucco per eseguirli ad di fuori di pagine e articoli, per esempio nella sidebar.

Individua il punto in cui vuoi eseguire lo shortcode e aggiungi:

<br /><br />&lt;?php echo do_shortcode('[shortcode che vuoi eseguire]'); ?&gt;<br /><br />

nei casi che ti ho proposto dovrai scrivere ad esempio

<br /><br />&lt;?php echo do_shortcode('[adsense]'); ?&gt;<br /><br />&lt;?php echo do_shortcode('[mi_piace]'); ?&gt;<br /><br />

Anche in questo caso la funzione “do_shortcode” rientra tra le Api che wordpress mette a disposizione per gli sviluppatori di plugin.

Potrebbero interessarti:

7. Come Mostrare un Campo Personalizzato Solo se ha un Valore:

esempio di campo personalizzato su wordpress

Come sai wordpress consente l’utilizzo dei campi personalizzati nei temi; ma come fare se vuoi mostrarlo solo se c’è un valore? Così:

<br /><br />&lt;?php if ( get_post_meta($post-&gt;ID,'campo_personalizzato', true) ) { ?&gt;<br /><br />&lt;?php $values = get_post_custom_values("campo_personalizzato"); echo $values[0]; ?&gt;<br /><br />&lt;?php } ?&gt;<br /><br />

Ecco alcune referenze utili:

8. Come Reindirizzare gli Utenti allo Stesso Articolo Quando Effettuano il Login:

login wordpress

Questo codice è utile se vuoi permettere agli utenti di essere reindirizzati allo stesso articolo dopo che hanno effettuato il login, in un punto qualsiasi del tuo tema inserisci:

<br /><br />&lt;a href="&lt;?php echo wp_login_url(get_permalink()); ?&gt;" title="Login"&gt;Dopo il Login sarai reindirizzato qui: "&lt;em&gt;&lt;?php the_title(); ?&gt;&lt;/em&gt;" &lt;/a&gt;<br /><br />

Anche in questo caso una buona risorsa per altri utilizzi di questa funzione è il codex di wordpress.

9. Come Mostrare il Numero dei Fans della tua Pagina su Facebook in Forma Testuale:

fan facebook

Se per esempio tu volessi mostrare il numero dei fan del tuo sito su facebook nella sidebar del tuo blog dovresti usare questo semplice codice:

<br /><br />//questo nel file function.php<br /><br />function wpcode_fb_fan() {<br /><br />$id_pagina = 'ID DELLA TUA PAGINA FACEBOOK';<br /><br />$info = json_decode(file_get_contents('http://graph.facebook.com/' . $id_pagina));<br /><br />echo $info-&gt;likes;}<br /><br />

Dove vuoi mostrare il numero dei fan:

<br /><br />&lt;?php bloginfo('name'); ?&gt; ha &lt;?php wpcode_fb_fan(); ?&gt; su Facebook.<br /><br />

si traduce in

Nome del blog ha xyz fan su Facebook. Per saperne di più:

10. Come Modificare la Lunghezza del Riassunto del post in WordPress:

funzioni di wordpress

Se nel tuo blog, per esempio nella pagina principale, utilizzi il tag php “the_excerpt” ma ti sei reso conto che il contenuto viene troncato in malo modo potresti voler modificare la lunghezza del risassunto. Puoi farlo inserendo questo codice nel file function:

<br /><br />function wpc_excerpt_length($length) {<br /><br />return 20; // sostituisci 20 con il numero di parole che vuoi mostrare<br /><br />}<br /><br />add_filter('excerpt_length', 'wpc_excerpt_length');<br /><br />

Risorse che potresti trovare utili:

  • l’immancabile riferimento al codex di wordpress;
  • l’interessante articolo di wpengineer cirla la possibilità di gestire la lunghezza del riassunto di wordpress.

Per questa volta è tutto, se vuoi scoprire altri trucchi per wordpress puoi seguirmi sul mio blog Wpcode.net, disponibile in inglese o in italiano.

Ti è piaciuto questo articolo?

Ricevi continui aggiornamenti su come migliorare il tuo blog:

Scegli di seguire i post e le chicche di blographik (esclusiva ai soli iscritti), direttamente nella tua casella email.

Abbonati ora alla newsletter compilando questo form.

Nome:
Email:
 
 

Articoli correlati:

Se di tuo interesse, puoi consultare anche i seguenti post correlati:

  • dimagrirecongusto.com

    mi piace

  • http://twitter.com/giannipuglisi Gianni Puglisi

    complimenti, uno dei migliori articoli del blog di Mirko, lo metto subito in opera su http://www.ideageek.it

    • http://www.blographik.it Mirko D’Isidoro

      Grazie Gianni, mi farebbe piacere avere un tuo feedback qui, sui risultati che otterrai seguendo i consigli di Piergiorgio, l’autore del post.

      Sopratutto sarebbe interessante ed utile capire, se aumenta la velocità di caricamento del blog, e google per questo ti migliora nei risultati di ricerca.

      Tienici aggiornati.

  • http://twitter.com/_pigi_ Piergiorgio P

    Ciao a tutti, mi fa davvero piacere che vi sia piaciuto questo il post. Ringrazio nuovamente Mirko per l’opportunità.

    A presto

    • http://www.blographik.it Mirko D’Isidoro

      Grazie a te Piergiorgio per l’aiuto.

      Volevo segnalare, che io e Piergiorgio stiamo preparando insieme una guida completa su come velocizzare wordpress, per migliorare le prestazioni e ottenerne vantaggi anche lato seo.

      Se tu hai trovato utile questo post, fammi sapere nello specifico quali sarebbero gli argomenti che vorresti approfondissimo.

  • Bobo

    Il post è sicuramente interessante ed utile, anche se personalmente non ritengo che il titolo sia aderente ai contenuti; non sono un programmatore, ma così a sensazione la maggior parte dei punti prevede una chiamata di funzione in più rispetto all’incorporazione del codice necessario nel tema, quindi più pulita l’implementazione, ma probabilmente di fatto (impercettibilmente o quasi) più lenta.

    • http://www.blographik.it Mirko D’Isidoro

      Ciao Bobo e benvenuto da queste parti.
      Neanch’io sono uno sviluppatore pure, ma ti assicuro che il titolo è attinente al post.

      Forse hai ragione sui campi personalizzati, però pensa ad esempio se qualcuno usasse diversi widget in wordpress per inserire ad esempio del codice adsense o del semplice testo o un codice html.

      Per gli altri esempi poi, se si lavora inserendo direttamente le funzioni all’interno del file funcition.php, non ci sono passaggi ulteriori ma la funzione attiva subito l’azione da compiere, senza che il sistema debba prima caricare un plugin o un widget che faccia più o meno la stessa cosa.

      Spero che il mio contributo ti sia stato di aiuto.

      Grazie per aver lasciato il tuo parere, spero di rivederti da queste parti per altre discussioni.

      • http://twitter.com/_pigi_ Piergiorgio P

        Inoltre tieni presente che implementare le funzioni direttamente nel tema (nei vari file tipo single.php o header.php) significa che basta 1 solo aggiornamento e butti via tutto il lavoro, in questo modo basta il backup di un file da pochi Kb (function.php).

        Neanche io sono un programmatore, semplicemente ho notato che evitando di caricare plugin con tutti gli ammennicoli vari non ho più problemi di cache e di timeout.

        Ovviamente sono di parte, perchè l’articolo l’ho scritto io, ma non avrei scritto cose inesatte, soprattutto su un blog prestigioso come questo.

        • http://www.blographik.it Mirko D’Isidoro

          Grazie mille Piergiorgio per aver approfondito il mio feedback, spero che ora Bobo la pensi come noi ;)

  • http://www.bigthink.it Ghido

    Ottimo articolo e grazie per la citazione, Mirko! ;)

    • http://www.blographik.it Mirko D’Isidoro

      Ci mancherebbe Ghido ;) , ho visto il layout del tuo bigthink, mi piace molto, complimenti, un lavoro professionale.