こんにちは、危険な関係の小柴こと細山田隆人です(嘘です)。
喜び勇んで公開してみた Flickr Tag だったのだが、バグ発見・・・orz
ブログパーツをさがせ の satokoto さんからのご指摘で判明したばい。(satokotoさん、ありがとーございます)
バグの内容はある特定のタイトルの場合に写真が表示されないってものだった。
うーむ。
2分くらい調べてやっとわかったのだが Filckr Tag では写真のタイトルを取得してサムネールのALTタグにセットしたりしている。
で、この写真のタイトルに、「'」というシングルクォートがあると Javascript でエラーが発生する。(←そりゃーそーだ)。
なので、タイトルが「ryouchi's Book」とか「Rock'n Roll」(謎)といったよーなタイトルだとエラーになっていた。(すまん)
Flickr Tag では、先ず、指定したタグのRSSを SimpleXML でGetして、phpで表示用の Javascript ファイルを動的に生成する。
なので、ユーザからは生成された Javascript のコードのみが返ってくるよーな仕組みになっている。
で、この Javascript で表示するものは document.write で勿論指定するのだが、 document.write は「'」というシングルクォート内の文字列を表示しようとする。
しかし、変数内にシングルクォートがあると、そこで表示は終了ですと思っちゃったりするので、その後にはなんだかわけのわからない文字列がくっついているねって感じでエラーだよと認識されちゃうのだ。
なので、ちょいと面倒だったのでもう下記の部分をバッサリと「シングルクォートはもう取ってしまえ」って感じでこんな風にしてみた。
■変更前
foreach ($rss->channel->item as $ln){
$l_array[] = $ln->link;
$t_array[] = $ln->title;
}
■変更後
foreach ($rss->channel->item as $ln){
$l_array[] = $ln->link;
// シングルクオートをNULLに変換
$t_array[] = str_replace("'" ,"" ,$ln->title);
}
なんとなく付け焼刃っぽいのだがとりあえず動いたばい。
うーむ。プログラムとは難しいのぅ・・・
satokotoさんによるご紹介記事:ブログパーツをさがせ : FlickrTagで新着写真

あのあと、すぐ表示されたのでFlickrの方の不具合なのかと。(今もひそかにそう思ってます^^)
対処ありがとうございました!
>あのあと、すぐ表示されたのでFlickrの方の不具合なのかと
あー、いえいえ。私のミスでした。うーむ。
いろいろ難しいことがあります(^^
しかも7/20現在、filckr.comが
Seriously, we apologise for the unannounced downtime.
(予告無しにサービスとめてしまってごめんね)
って感じで現在TAGのRSSが取得できずに何も表示されない状態になっています(うーむ)
RSSの仕様が変更になるとちょいと面倒だなー。
ではでは。