Google Sitemap Generator – Ultimate Tag Warrior – Tags Addon Plugin の出力内容を一部修正

2007-08-09更新
ウチの環境だけかもしれないが、同名で別IDのtagが存在しているせいで、sitemap.xmlに同一URLが複数出力されてしまっていたため、SQLにdictinctを追加した。
さらに、日本語表記のタグを使っているので、 URLEncode処理を追加。


Ultimate Tag WarriorGoogle Sitemap Generator も素晴らしいプラグインだ。
導入してからGoogle botも的確にページを拾っていってくれている気がする。さらに、UTWが持つタグ情報をSitemapに同時出力してくれるWordPress Google Sitemap Generator – Ultimate Tag Warrior – Tags Addon Plugin(長い名前だ)を導入することで、さらにGoogleに渡せるSitemapが充実する。しかも初期設定さえしてしまえば、あとは意識すらしなくて良い。

ただ、今日ログを眺めていたときにGooglebotが拾っていったURLで404エラーが出てる。結構出てる。Google様に嫌われたらどうしよう!
SQLを見てみたらtagテーブルに存在する全てのタグ名を拾ってきて出力しているようだ。
UTWの使い方が悪いのかもしれないが、どの記事にも割り当てられていないタグが存在するために、それを拾いに来たGooglebotに404を返してしまっている。
なんとなく気持ち悪いので、記事で使われているタグのみをSitemapに含めるように修正。

(今回の対象バージョンは2.1)
113行目のSQLを修正。
[php num=113]
$utwtags=$wpdb->get_results(“SELECT tag FROM ” . $UTWtabletags);
[/php]

POST2TAGテーブルと結合して、記事が存在するタグだけ取り出し。
[php num=113]
$utwtags=$wpdb->get_results(“SELECT distinct tags.tag FROM ” . $UTWtabletags . ” tags, ” . $UTWtablepost2tag . ” p2t WHERE tags.tag_ID = p2t.tag_id”);
[/php]

日本語タグをURLエンコード。$utwtag->tag部分に。
[php num=116]
$utw_tag = GetUTWTagUrl(urlencode($utwtag->tag), $UTWhome, $UTWbaseurl, $UTWuseprettyurls, $UTWtrailing);
[/php]

少しでも404が減らしたい方どうぞ。

wp-otenkiがやっとこさ使えた

今月頭くらいから仕込んでいた WordPress Plugins/JSeries ≫ wp-otenki だが、何度記事を投稿しても天気マークが表示されない現象に悩まされていた。

wp_postmetaテーブルを見ると、meta_keyがwpotenkiのデータが a:1:{s:6:”otenki”;s:7:”loading”;} とかなってて、どうやらLWWSからデータが取れていない模様。
最初は非同期投稿辺りがイケてないのかも、と思って投稿時にそのままデータを取ってくるようにしても、やっぱり取れない。

切り分けのためにテスト環境を作ってやってみたら、全然普通に取ってくる。もうちょっとソースを見てみると、function executeOtenkiの関数に

$argyle = @ fsockopen(
$parts[‘host’],
$_SERVER[‘SERVER_PORT’],
$errno,
$errstr,
0.01);

の記述を発見。あ゛ー、、、、

私は管理画面にはSSLアクセスをするために、Haris.tv » Admin-SSL : New WordPress Pluginを使っている。
なので、ソケットが443ポートでLWWSからデータを取ってこようとしていたから、データが取得できていなかった模様。

とりあえず該当部分を80とハードコードして回避。テスト環境でとりあえず取ってこれることを確認。解決。スッキリ!

そういえば、小さい問題だけど、Yellow Swordfish » Admin ‘Advanced’ Drop Menus WordPress Pluginも若干動作が怪しくて、メニュー中の画像のリンク先だけhttpへリンクされてしまうために、管理画面にアクセスしても、一部HTTPが混ざってるせいでアドレスバーが黄色く(Firefoxなので)ならなかった。
これは、
$plugin_uri= trailingslashit(get_option(‘siteurl’)) . ‘wp-content/plugins/’ . $dir;
この部分を、
$plugin_uri= ‘/wp-content/plugins/’ . $dir;
に書き換えてとりあえず解決。たぶん。

2007-07-22追記

何やら作者様のページにバグ情報という文章が追記されたようで。
普通の使い方であれば、全く問題にならない部分ですし、バグとは言えないと気が。
同様の現象ではまっている方が居たら、参考になれば幸いです。
なんかすいません。。。

flickr画像を表示するwidget探し

picasa webから画像を引っ張ってくるKivela » Picasa Web Album widgetを使っていたのだが、設定できる画像の最小サイズが大きすぎて、横にはみ出るのが気になっていた。

いくつか試してみたが、最終的にはEightface // flickrRSS for WordPressに落ち着いた。シンプルで可も無く不可も無く。
元ネタはflickrRSS | わーどぷれすっ!
このサイトで紹介されている中では、Another Flickr Pluginがかなり良さげだったのだが、Lightbox 2.0 for WordPressとぶつかってうまく動作しなかった、残念。

ただ、今Picasa Web Album widgetのサイトを見た限りは、作者のサイトの画像はうまいこと納まってる。うーん、、、
Picasa2用のFrickrアップロードプラグインが上手く動作しなかったから、出来ればpicasa webと連動できると嬉しい。
もう少し調べるかー。

Ajaxified Expand Post NOW – Ajaxを利用した記事折りたたみplugin

WordPressには<!–more–>タグ以降の記事を省略表示する機能がありますが、標準では結局パーマリンクにリンクされるだけで、動作的にはイマイチ感が。
このプラグインを導入すると、その部分の動作が変更になります。
単純にJavaScriptでたたんでおく場合は、最初からその分のデータをダウンロードさせられますが、これなら必要に応じて受信するので、軽くて良いです。
設定もプラグインを有効にするだけ。

Ajaxified Expand Post NOW

問題としては、本来はLightboxで開くはずの画像が通常の画像へのリンクになってしまう点か。。。

続きを読む Ajaxified Expand Post NOW – Ajaxを利用した記事折りたたみplugin