For whom it may concern, here is my new code for having del.icio.us favorites into your pages, as I did.
It uses an rss library (here : magpierss) instead of Matthews Dusty's domxml classes whose problems are :
- uses web app were there was no use for just getting
- is not cache and del.icio.us' bandwitdh friendly
- not unicode friendly(àéùô caratères accentués and kana were iso-like "é")
- ask you to put you password on you .php page (BAAAAAAD)
- asks a LOT of dependencies (xmldom, curl, ... ), not very good about security or hosting
hreflang
in the suggested maneer by Joshua down there (even if [fr]was more lisible because at the beginning of our tags... but he is working on it !). It is a little bit more sophisticated instead of my planet composer, but still modifiable by php novices.
I would like in near future finishing my xbel parser, and find out a solution for the favicon caching of firefox :( le malheur des uns, etc...)
So... here it is. Yes, the code is awful. And again, EXCUSE MY BAD FRENCH !
<?php
require_once('rss_fetch.inc');// appel à magpierss
if ($_flux = fetch_rss('http://del.icio.us/rss/dascritch'))
{
echo '<ul>';
foreach($_flux->items as $item)
{
$_sub=explode(' ',$item['dc']['subject']);
$hreflang='';
$tags=array();
foreach($_sub as $_tag)
{
if (strstr($_tag,'lang:'))
{ // nous avons un tag linguistique
$hreflang.=($hreflang===''?'':'|').substr($_tag,5);
} else { // tag normal
array_push($tags,$_tag);
}
}
echo "<li><b><a href=\"{$item['link']}\"".($hreflang===''?'':" hreflang=\"$hreflang\"").">{$item['title']}</a></b><br />{$item['description']}<br />";
echo "<small style=\"cursor:help\" title=\"{$post['time']}\">";
foreach ($tags as $tag)
{
echo ": : <a href=\"http://del.icio.us/dascritch/$tag\">$tag</a> ";
}
echo " : :</small><br /> </li>
";
}
echo '</ul>';
} else {
echo "oops !!!! we had a problem...";
}
?>
- From: me
To: Joshua Schachter Hello.
i like to use del.icio.us because it permits me to "blog" indirectly even at work. I want to redesign completely the page dascritch.ath.cx/liens-delicious.php in my website (moving from your webapp to rss, more server friendly for you, easely cachable and more simple to share code for friends). I decided to use keywords for indicating the site language;, and parsing it (later) to put it in a special
<A>
parameter (namedhreflang
, it is puting [en] in my website with small css strick).I found out that the most simple was to put them between [ ]
Example : [en] for english , [fr] for french.
but for multiple langages (as in www.ruskeys.net both english and russian), I saw other blog using hreflang using pipe for separating : [en|ru].but if i enter :
[en|ru] design histoire musique tech
, del.icio.us will put[en design histoire musique ru] tech
. Same problem if i use a coma[en,ru]
Is it obiviously a bug ?
- Response from: Joshua Schachter
-
Hi!
Unfortunately, the spec for
hreflang
appears to allow only one language: w3.org/TR/REC-html40/struct/links.html#adef-hreflangAnyway, I have taken out the "|" and "," splitters.
I recommend you use multiple tags like: lang:en lang:ru
I will be adding support for foreign language delicious soon, using this method!
6 réactions
1 De Da Scritch - 25/11/2004, 01:48
And now, on the side of my dotclear blog !
2 De obi - 25/11/2004, 12:33
Super ! A quand le plugin pour dotclear ?
J'ai trouve deux plugins interessants et complementaires pour delicious:
foxylicious, qui integre les bookmarks delicious dans les bookmarks firefox
dietrich.ganx4.com/foxyli...
et une extension tres simplement baptisee del.icio.us qui permet d'ajouter un bookmark et des tags en quelques clicks.
Sinon, delicious, c'est bon, mangez-en.
3 De obi - 25/11/2004, 12:36
Oups, il manque le lien pour la deuxieme extension :
delicious.mozdev.org/
4 De Da Scritch - 25/11/2004, 13:44
Pour dotclear :
- décompresser la librairie (pour être clean, dans un sous-répertoire, par exemple "magpie".
- Dans ton template, copier coller
- faire l'appel à 'rss_fetch.inc' relativement au répertoire où est le fichier d'appel à ta page (pour moi, c'est /blog.php, donc en "magpie/", même si le template est en "trucmuche/themes/perso/")
- mettre une limitation du nombre d'entrée (genre $nb=0; avant le premier foreach, et dedans, englober la boucle dans une conditionnelle. À peu près comme ceci : foreach($_flux->items as $item) if ($nb++<10) { BOUCLE }.
- modifier la fonction d'écriture, style <li><a ××× title=\"{$item['description']}\">{$item['title']}</a></li>
- voire carrément l'arranger à votre sauce si vous avez refait la feuille de style (comme je l'ai fait)
C'est très simplifié, donc attention à ne pas mettre de guillemets dans vos entrées, sinon la page est cassée. Le mieux étant d'avoir une fonction de slashing " vers \"
Je pense que vous pourriez vous en sortir. Si vous ne connaissez pas le php, faites vos dents sur un thème que vous n'aimez pas trop, en modifiant son template.php, ou copier le thème default
5 De fgautron - 30/11/2004, 02:02
Merci pour cette version RSS qui fonctionne tres bien chez moi.
6 De da scritch net works - 15/04/2011, 17:05
Les sites des codeurs sont les plus mals codés
Oh mince... y'a un accroc dans mon plan. Cela s'appelle une transition à l'arrache....