Dal trackback al trackrati
In un post di una decina di giorni fa, Massimo di DTCM chiedeva alla sua utenza geek:
Ho deciso di mettere il link ai miei trackback su technorati dove prima c’erano i trackback, ovvero a fine post, in basso a destra di fianco al link ai commenti che hanno, tra parentesi, il numero di commenti presenti. Problema: come faccio a farmi dire da Technorati hic et nunc sul mio blog quante persone hanno linkato al mio post, in modo che se ho technorati [0] non clicca e non perde tempo nessuno?
Qualcuno di voi ricorderà che il desiderio di far fuori uno strumento – purtroppo affossato dallo spam – che tenesse traccia delle ‘conversazioni’ come il trackback, sostituendolo con uno servizio esterno alternativo, era già emerso nell’esperimento di Particle Tree “Replacing Trackback with Blog Search“: due script PHP 5 richiedevano al servizio ‘Google Blog Search‘ un RSS con le informazioni relative agli blog che si riferivano ad un determinato post, e queste venivano visualizzate tramite due XSLT e l’allora emergente libreria JS Lightbox in un div al centro della pagina.
Tornando a Technorati (che secondo la mia impressione perde meno post per strada di Google Blog Search) ed al semplice numero dei post linkanti, questa che leggete è la mia proposta, a disposizione di voi tutti nelle due versioni ‘WordPress plugin’ (PHP) ed ‘Ajaxxone’ (PHP + JS).
Versione ‘WordPress plugin’
Download: Trackrati_WP_0.2.zip
Funzionamento: interroga l’API CosmosQuery di Technorati ricevendo in risposta il numero di link relativi ad un post, che inserisce nel template del blog. Una cache su file riduce il numero di query al servizio.
Installazione: Aprite il file trackrati_wp.php, ed inserite la vostra Technorati API Key. Copiate la cartella trackrati_wp (con all’interno trackrati_wp.php e la cartella vuota tracache, che dovrà avere i permessi settati a 777) all’interno della cartella wp-content/plugins di WordPress, e attivate dal menu di amministrazione.
Inserite quindi <?php trackrati(); ?> nella parte del “loop” del template* in cui volete visualizzare un link “Trackrati (n)” ,con n numero di blog linkanti.
Versione ‘Ajaxxone’
Download: Trackrati_0.2.zip
Funzionamento: Il funzionamento di base è identico alla versione precedente, ma viene aggiunto un javascript (kudos al collega Skid X che mi ha risolto un problema di compatibilità dell’ XMLHttpRequest) per quei sistemi di pubblicazione che non consentono di inserire codice PHP all’interno del proprio template. (penso principalmente a Movable Type. So che dalle nuove versioni è supportato il PHP con plugin annessi, ma non sono così deciso nell’addentrarmi in questo software che si avvia verso il viale del tramonto). Visto che la funzione trackrati.init viene richiamata al caricamento della pagina, controllate se all’onload vengono richiamate altre funzioni: in questo caso usate una delle tecniche segnalate in questo post.
Installazione: Aprite il file trackrati.php ed inserite la vostra Technorati API Key. Uplodate la cartella trackrati (con all’interno trackrati.php, trackrati.js e la cartella vuota tracache che dovrà avere i permessi settati a 777). Inserite nel file HTML, o meglio nel template che lo genererà, il riferimento al javascript:
<script language="javascript" type="text/javascript" src="(percorso)/trackrati.js"></script>
e per ogni post fate in modo che compaia questo link:
<a class="trackrati" href="http://www.technorati.com/search/
(permalink)">
trackrati [?]</a>
Non ho fatto molti test a proposito (al contrario della versione sopra, da tre giorni sui due Central Scrutinizer), ma sembra che sui blog in Movable Type questa soluzione funzioni. In ogni caso potete testare, anzi, provare…per credere.
Seguirà dibattito.
*[generalmente nell' index.php, nei div con class="postmetadata", accanto a <?php comments_popup_link('No comments »', '1 Comment »', '% Comments »'); ?>.]
Ciao Marco,
provo a postare qui invece che a scriverti, così magari il thread servirà anche a qualche altro viandante del web :-)
1)inserire la API key di Technorati. Io l’ho messa fra ‘ e ‘ – come in HTML standard l’avrei messa fra ” e “. Ho fatto bene?
2)io non vedo del tutto la cartella vuota tracache (la zip che ho scaricato – ajaxxone – ha solo trackrati.php e trackrati.js)
3)ho caricato trackrati.js e trackrati.php creando due nuovi “template” via il pannello admin di MT, ma http://www.dotcoma.it/trackrati.php mi dà come risultato 0:? (non dovrebbe darmi solo il numero, senza dietro nessun “:” o “?” ?)
4)ho inserito il riferimento al javascript nel Main Template, subito prima di “chiudi head”.
5)ho aggiunto il link che deve comparire in ogni post nel template Individual Entry Archive (lo trovi sotto il label “Archives”)
6)mi ritrovo però ora con un blog che di fianco al mio originario technorati [?] (che volevo migliorare facendo comparire al posto del punto di domanda il numero di post che linkano al mio post secondo technorati) si ritrova una seconda scritta trackrati [?] (ho aggiunto il tuo codice al punto 5), non l’ho sostituito al mio). Ho tre problemi:
(a) mentre il mio codice punta a http://www.technorati.com/search/http://www.dotcoma.it/2006/10/08/
technorati_tag_e_trackback.html il tuo punta a http://www.dotcoma.it/2006/10/08/%E2%80%9D
http://www.technorati.com/search/ che ovviamente dà url not found, perchè dovrebbe esserci prima la parte http://www.technorati.com/search e poi la url di dotcoma;
(b) prende non l’individual archive di dotcoma ma il daily archive;
(c) abbiamo sempre il punto di domanda [?].
007)dove abbiamo sbagliato? :-)
p.s.
Sorry per i link che “sfondano”in larghezza, avrei dovuto usare tinyurl.
p.s.p.s.
sul mio blog per ora il trackrati c’è solo sui permanent link dei post.
Ciao,
1)Sì,ok.
2)Ho provato a riscaricarlo, e nello zip sembra che ci sia. Setta i permessi della cartella, via FTP, a 777.
3)E’ uno script che funziona con i parametri “url” e “offset”, vedi ad esempio
questa url, che richiede a technorati gli inbound links di Gmail (13857). Comunque, a settare i parametri ci pensa il javascript.
4)Sostituisci quel “(percorso)”, con “http://www.dotcoma.it”. (quindi punterebbe qui). Dovresti inserire il riferimento anche nell’ Individual Entry Archive, visto che stai testando sulle singole pagine.
5)vedi dopo
6)a)dovresti sostituire “(permalink)” con “<$MTEntryPermalink$>”. Come nel tuo post, ma c’è in più una classe.
Il link viene visualizzato in modo differente perchè c’è un problema del copiaeincolla con le virgolette nel MT (se guardi il sorgente su Firefox si vede che sono diverse).Prova a cancellarle e riscrivele tutte e quattro.
(b) e (c) dipendono da sopra.
007)ora gli articoli delle inchieste verranno scritti solo su hard disk esterni portatili.
1)ok
2)giuro che io non la vedo ancora. me la giri via email ? :)
3)ok, ma, per curiosità, 3:13857 cosa vuol dire? 3 cosa? 13857 cosa?
4)ah, percorso = url. Già che conosco MT, ho messo ;-)
5)ok
6)non capisco proprio. ti scrivo, che se nonqui ti faccio saltare il template.
smettetela di URLare. ho mal di testa.
Prendi una compressa di aURLin.
foradil…
news…