flickrRSS RU – WP Plugin for Unlimited* and Random Images from Flickr to your blog

Integrate Flickr photos into your site. Random option and limit of 500 images. It supports user, set, favorite, group and community photostreams.

Contributors: Gianluca Crema, eightface
Donate link: PayPal
Official Page on wordpress.org: wordpress.org/extend/plugins/flickrrss-ru
Tags: flickr, photos, images, sidebar, widget, rss, random
Requires at least: 2.6
Tested up to: 3.0
Stable tag: 1.0

Description

This plugin allows you to easily display Flickr photos on your site. It supports user, set, favorite, group and community photostreams. The plugin is relatively easy to setup and configure via an options panel.

Avoids the limit of 20 images flickr feed to up to 500 images, implements a random function.

Derived from the flickrRSS plugin created by eightface adding RU functions (Random and Unlimited).

Installation

  1. Put the flickrRSS RU files into your plugins directory
  2. Activate the plugin
  3. Configure your settings via the panel in Options
  4. Add <?php get_flickrRSSRU(); ?> somewhere in your templates or adding the flickrRSSRU widget to your widget area.

Frequently Asked Questions

Can I get random images from my stream?

Yes, Just enable the Random option in the settings panel.

How do a I get borders between photos?

You need to edit your CSS file. There are plenty of tutorials online, you may find some help in the forum.

Why aren’t any photos showing up?

Sometimes it can take a little while to kick in, have patience. Flickr may possibly have been down.

Will it work with video?

Yes, videos will be displayed as a thumbnail image. You’ll need to click through to flickr to play it though.

Screenshots

Changelog

1.0 Modifica della parte più grossa del codice, risolto un bug nei link alle foto dei set

0.2 Initial release

Feedback and Support

For Feedback and Support leave a comment to this post or contact me from contact page. I’ll do my best to respond.

Soon I will create a forum.

Advanced

The plugin also supports a number of parameters, allowing you to have multiple instances across your site.

  1. 'type' => 'user' – The type of Flickr images that you want to show. Possible values: ‘user’, ‘favorite’, ‘set’, ‘group’, ‘public’
  2. 'set' => 'set_id' – Optional: To be used with type = ‘set’
  3. 'id' => 'user_set' – Optional: Your Group or User ID. To be used with type = ‘user’ or ‘group’
  4. 'random' => false – Optional: Enable the random images
  5. 'num_random' => 20 – Optional: Number of images which allows choosing randomly
  6. 'num_items' => 4 – The number of images that you want to display
  7. 'before_list' => ' ' – The HTML to print before the list of images
  8. 'html' => '<a href="%flickr_page%" title="%title%"><img src="%image_square%" alt="%title%"></a>' – the code to print out for each image.
    Meta tags available: %flickr_page%, %title%, %image_small%, %image_square%, %image_thumbnail%, %image_medium%, %image_large%
  9. 'default_title' => "Untitled Flickr photo" – the default title
  10. 'after_list' => ' ' – the HTML to print after the list of images

Example 1

<?php get_flickrRSSRU(array(
'num_items' => 50,
'type' => 'public',
)); ?>

This would show the 50 most recent community photos.

Example 2

<?php get_flickrRSSRU(array(
'set' => '72157620600672300',
'num_items' => 25,
'type' => 'set',
'random' => true,
'num_random' => 150
)); ?>

This would show 25 random picture from the 150 most recent thumbnail sized photos from the specified set.

L’importanza della sitemap XML e come crearla

CON sitemap si intende quella pagina del sito che raccoglie in modo gerarchico tutte le pagine del sito per fornire ad un utente una vera e propria mappa. Oltre che agli utenti questa pagina è utile anche agli spider dei motori di ricerca che in questo modo leggono ed esplorano tutti i link del sito.

C’è una versione della sitemap ancora più utile ai motori di ricerca la sitemap XML ovvero un file, appunto in formato XML, che secondo degli standard raccoglie l’elenco di tutte le pagine e dei rispettivi link di un sito che vogliamo indicizzare nella serp dei motori di ricerca.

In questo modo avendone due con differenti funzioni potremmo ottimizzare la prima per gli utenti e la seconda per i motori di ricerca. La sitemap XML di cui parleremo in questo articolo è stata introdotta da Google nel Giugno del 2005 e risponde ad un protocollo ben definito e nei mesi successivi è stata supportata anche da altri importanti motori di ricerca come Yahoo e MSN (sucessivamente divenuto Bing).

Vantaggi

Il vantaggio fondamentale è che l’utilizzo della sitemap ci consente di essere sicuri che tutte le pagine vengano visitate dallo spider, e quindi si spera indicizzate dai motori di ricerca (dico si spera perchè non basta che una pagina esista perchè venga indicizzata ma deve avere certe caratteristiche) questo senza la sitemap potrebbe non accadare per esempio quando:

  • le pagine all’interno del nostro sito non sono bene collegate fra loro
  • per errore o per altri motivi abbiamo pagine totalmente isolate
  • ci sono pochi link in ingresso al nostro sito
  • abbiamo contenuti in flash, ajax o semplicemente javascript che potrebbero nascondere certe pagine agli spider
  • abbiamo migliaia di pagine tipo per un azienda che produce migliaia di prodotti ed è presente una pagina per prodotto oppure abbiamo migliaia di post

Nel caso per esempio che alcuni motori di ricerca abbiano indicizzato pagine che ora non esistono più avendo una sitemap definita della pagine esistenti quelle sbagliate verranno tolte dai risultati (attenzione questo non è automatico ma sicuramente aiuta a fare chiarezza).

Oltre che all’elenco di pagine la sitemap offre ai motori di ricerca altre informazioni molto importanti come:

  • la data di ultima modifica di ogni pagina
  • la frequenza di aggiornamento di ogni pagina
  • la priorità di indicizzazione delle pagine e quindi la loro importanza nel sito: nella sitemap viene assegnato ad ogni pagina un valore in decimi che al massimo può essere 1 questo sta a significare l’importanza della pagina.

Come Crearla

Esistono varie possibilità per creare la sitemap XML a seconda delle esisgenze se si utilizza WordPress per esempio basta un comodo plugin, oppure si può creare con tool online oppure a mano.

A mano

Anche se a mano è la via più scomoda e poco pratica sopratutto se trattiamo migliaia di pagine credo sia importante conoscere almeno la sintassi base di come è strutturata una sitemap XML, anche senza conoscere il metalinguaggio XML (non ci vuole niente per capirlo) vedrete che è abbastanza banale. Il codice base è questo:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>http://www.example.com/</loc>
    <lastmod>2005-01-01</lastmod>
    <changefreq>daily</changefreq>
    <priority>1</priority>
  </url>
  <url>
    <loc>http://www.example.com/secondapagina.htm</loc>
    <lastmod>2005-01-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority></em>
  </url>
</urlset>

Per poterla creare basta un semplice editor di testo e andremo a salvare il file con il nome sitemap.xml ovviamente attenzione che l’estensione sia XML.

Commentiamolo un po il codice, per prima cosa bisogna dichiarare che utilizziamo il linguaggio XML e la codifica UTF-8 (prima riga), poi apriamo il tag <urlset> per definire il protocollo della sitemap XML (seconda riga), poi per ogni url che vogliamo inserire apriamo il tag <url> e definiamo l’indizizzo <loc>, l’ultima modifica <lastmod> (opzionale aaaa-mm-gg), la frequenza di aggiornamento <changefreq> (opzionale può assumere i valori: always, hourly, daily, weekly, monthly, yearly e never) e infine la priorità <priority> (opzionale va da 0.0 a 1.0) ovviamente ricordiamoci di chiudere ogni tag e alla fine di tutto l’elenco chiudiamo l’ultimo tag </urlset>.

Con WordPress

Su wordpress ci sono vari plugin che consentono la creazione di ottime sitemap XML, quello che vorrei consigliarvi in assoluto è Google XML Sitemap Generator for WordPress potete scaricarlo direttamente dalla pagina ufficiale e installarlo come qualsiasi altro normale plugin.

Una volta installato troverete il pannello di controllo XML-Sitemap sotto la voce Settings (Impostazioni) da cui potrete impostare ogni cosa come la frequenza di aggiornamento, la priorità dei vari tipi di pagina, segnalarlo ad alcuni motori di ricerca.

Molto importanti anche le funzioni per escludere alcune categorie o alcuni post. Una volta impostato basterà generare la prima volta la sitemap XML poi questo plugin ad ogni aggiornamento del nostro blog (nuovi post, nuove pagine ecc) modificherà automaticamente al sitemap.

Con Tools On-line

Nel caso non utilizziate una piattaforma potete semplicemente avvalervi di tool on-line che tramite dei crawler esplorano il vostro sito e creano la sitemap, questo potrebbe essere pericoloso perchè per i motivi che dicevamo prima lo spider potrebbe non trovare alcune pagine e quindi escluderle, è meglio controllare i risultati di questi tool per vedere se sezioni del nostro sito sono state trascurate. I tool che vi consiglio io sono:

Potreste anche pensare di utilizzare dei programmini gratuiti come Gsitemap che trovate qua.

Gli unici limiti a cui fare “attenzione” (tra virgolette perchè ce ne vuole a raggiungerli) sono quelli dei 50000 URL e dei 10MB. Vorrei segnalarvi questo post di SeoPerSeo che suggerisce di suddividere in più file sitemap veramente grandi e offre uno script in php utile al riguardo.

Come Segnalarla

La sitemap va generalmente posizionata nella cartella principale del nostro dominio oppure possiamo creare un redirect nel file .htaccess per esempio se si trova nella cartella blog andremo a scrivere questa riga nel file .htaccess:

Redirect /sitemap.xml /blog/sitemap.xml

Affinche venga letta dai crawler possiamo aggiungere una riga al file robots.txt

sitemap: http://www.example.tld/sitemap.xml

Per segnalarla direttamente ai motori di ricerca come Google possiamo utilizzare i Google Webmaster Tool per una guida più esaustiva anche su altri motori di ricerca e sugli altri strumenti avanzati vi rimando al guest post che ho scritto su francescogavello.it

Oppure possiamo utilizzare i seguenti url di segnalazione tramite i quali inoltrare direttamente la sitemap ai motori di ricerca Google e Bing, al posto di {url} inserire l’indirizzo della sitemap.

http://www.google.com/webmasters/tools/ping?sitemap={url}

http://www.bing.com/webmaster/ping.aspx?sitemap={url}

Foto random del tuo album di Flickr sul tuo Blog

ATTENZIONE: Ho creato un plugin per WordPress con queste funzioni, maggiori informazioni le trovate nella pagina ufficiale. Ormai tutti conoscerete Flickr il social network che da la possibilità di gestire un album con le proprie foto e condividerle con amici o con l’intera rete. Per implementare Flickr in WordPress ci sono vari Plugin a disposizione ma fra tanti ho scelto FlickrRss che consente facilmente di integrare le foto direttamente dal Feed Rss di Flickr, in questo articolo analizzeremo ogni passaggio dall’installazione all’implementazione e in fine, per chi volesse, con una piccola modifica del codice (non servono grandi conoscenze di php) andremo a rendere casuale l’ordine e le foto pubblicate dal nostro album così anche se non aggiorniamo spesso il nostro album i lettori non vedranno sempre le stesse ultime foto inserite.

Installazione

Inazitutto partiamo scaricando il plugin da questo sito, un volta scaricato il file zip, possiamo scompattarlo e caricarlo nella cartella wp-content/plugins tramite ftp oppure da pannello di controllo nel menu di sinistra andare su plugin/aggiungi nuovo e caricare il file compresso.

Una volta caricato il plugin entriamo nel pannello di controllo, dal menu di sinistra clicchiamo su Plugin e nella lista dei plugin non attivi vedremo anche quello che ci interessa “FlickrRss”, lo attiviamo cliccando su “attiva” alla destra della descrizione.

Implementazione

Ora per implementarlo nel blog abbiamo due possibilità,

  • se il nostro tema è widgest ready (ovvero supporta i Widget), basta andare dal menu su Aspetto -> Widget a cliccare su “aggiungi” affianco a flickRss.
  • Oppure (consigliato) andando a modificare il nostro tema inserendo questo tag dove vogliamo che venga inserito il nostro album:[php toolbar="false"]<?php get_flickrRSS();?>[/php]

Nel pannello di controllo dopo l’installazione comparirà sotto la voce “impostazioni” la voce flickrRss dal quale potremmo configurare varie cose come:

  • il numero di foto da visualizzare,
  • la tipologia di album, se volte le vostre foto personali selezionate “user”
  • i tag delle foto da visualizzare (se lasciate in bianco visualizzate da tutto l’album)
  • l’user ID, se non lo conoscete potete cliccare affianco su “find yout ID” per ricavarlo dal vostro user name
  • il codice html da mettere prima dell’album
  • come impostare il tag di visualizazzione dell’immagine e il suo link
  • il codice html da mettere dopo l’album

Sulla destra potete vedere i metatag da inserire nel Item Html per poter personalizzare il funzionamento, di default il link dell’immagine rimanda alla pagina di Flickr ma nel mio caso ho voluto implementare con lightbox l’ingrandimento dell’immagine.(farò una guida anche su questo)
Per migliorare l’aspetto delle anteprime potete racchiudere il vostro album all’interno di un div con un “id” specifico nel tema oppure appunto definendo il before list e l’after list e andare a specificare i CSS per quel determinato div.

Versione random

Una cosa che mi piaceva poco di questo plugin è che ogni volta che viene visualizzato il blog si vedono sempre se solite ultime foto in ordine di inserimento. Quindi ho cercato il modo di rendere random sia la visualizzazione delle foto sia la scelta di quali visualizzare purtroppo il feed RSS di flickr è limitato a 20 foto. Anche se il modo per ovviare a questa cosa esiste ma la vedremo in un altro articolo.Ora tornando al random per poterlo implementare bisogna modificare “flickrrss.php” potete farlo andando dal pannello di controllo in plugin ? editor, sulla destra selezionate flickrRSS
cercate “function printGallery” (è circa a metà intorno alla riga 131 ma potete comunque utilizzare lo strumento di ricerca per trovarlo). Il codice che vi si presenta dovrebbe essere questo

[php]function printGallery($settings = array()) {
if (!is_array($settings)) {
$settings = $this->fixArguments(func_get_args());
}

$settings = array_merge($this->getSettings(), $settings);
if (!($rss = $this->getRSS($settings))) return;
# specifies number of pictures
$items = array_slice($rss->items, 0, $settings['num_items']);
echo stripslashes($settings['before_list']);
# builds html from array
foreach ( $items as $item ) {
[/php]

ora lo selezionate e lo sostituite interamente (attenzione a non sbagliare neanche una riga) con questo

[php]function appartiene($random,$foto){
$dim = count($foto);
for($j=0;$j<$dim;$j++)
if($foto[$j]==$random)return 0;
return 1;
}

function printGallery($settings = array()) {
if (!is_array($settings)) {
$settings = $this->fixArguments(func_get_args());
}

$settings = array_merge($this->getSettings(), $settings);
if (!($rss = $this->getRSS($settings))) return;

$numero_foto = 20; //numero di foto tra cui andare a random
$items = array_slice($rss->items, 0, $numero_foto);
echo stripslashes($settings['before_list']);

$foto=array($numero_foto); //tiene conto delle foto già messe

for($ji=0;$ji<$settings['num_items'];$ji++){
$random = rand(0,$numero_foto-1);
while($this->appartiene($random,$foto)==0){
$random = rand(0,$numero_foto-1);
}//controlla che la foto non sia già stata messa
array_push($foto,$random);
$item = $items[$random];[/php]

Nel caso che il vostro album contenga meno di 20 foto per non avere dei buchi dovete modificare $numero_foto che trovate alla riga n.146 (del codice qua sopra intendo) con il numero di foto presenti nel vostro album

In questo modo ad ogni visualizzazione del vostro blog le immagini cambieranno rendendolo più dinamico.

ATTENZIONE: Ho creato un plugin per WordPress con queste funzioni, maggiori informazioni le trovate nella pagina ufficiale.