Flexible Upload WP2.5対応!!


Creative Commons License photo credit: billaday

WordPressが2.5にバージョンアップして、一番痛かったのが Flexible Upload というプラグインが対応していなかったことだ。
このプラグインは画像をアップロードする際に、サムネイル画像とオリジナル画像とそれぞれ指定サイズで出力してくれる、と同時に画像を貼り付けるときにLightboxなどに対応できるように、タグを埋め込んでくれる、という優れもの。

そのFlexible Uploadの2.5対応版がついにリリースされた。

続きを読む Flexible Upload WP2.5対応!!

Flickrから使って問題無い画像を検索できるプラグイン


Creative Commons License photo credit: rusci

Flickr からブログに掲載可能な画像を検索してくれるプラグイン » [WordPress] Tips Communityで紹介されていたPhoto Dropper Flickr WordPress Pluginというプラグインがなかなか良い。

ブログ書くときに、自分で撮った写真があればそれを載っけるんだけど、それが無いときには写真無しの地味な日記になる。
そんなときにはFlickrから内容にあった写真を適当に探してくるんだけど、このプラグインを使えば投稿画面から検索して画像を挿入できるだけではなく、Creative Commonsで転載が可能なもののみを検索してくれるのでライセンス的にも問題無い画像だけを使うことができる。

Eye catchで画像が入っていると何となく印象が良くなるので、積極的に活用したい。

サイト軽量化完了

前々からこのサイトが全体的に重かったのだけど、やっと満足いく速度になった。

一番の原因はなんとPicasa Web Arubum widgetだった。。。
細かくは見ていないけど、ページを遷移するごとにwp-optionテーブルにレコードが作成される(キャッシュ?)仕様のようで、作成されるレコードが意外とでかい。Pluginを止めて、これが作成したと思われるレコード(option_nameがrss_から始まるもの)をざっくり削除。
ついでなので、昔使っていたテーマやプラグインの設定と思われる不要なレコードも削除。
数MBが削減された。
最後に optimize table を実行してスッキリ。

何度も疑ったCounterizeII、犯人はお前じゃなかったのね。。。

併せて使用中のテーマ(wp.Vicuna Ext)を1.43へバージョンアップ。
でも、1.44がそろそろ出そう。
作者様頑張ってますなあ。感謝。

写真が無くなって地味になっちゃったので、Eye Catch の画像でも作ろうかな。

Counterize II の影響でページ表示時にエラー発生

このサイトでも使わせてもらってるWordPress用PluginのCounterize II
アクセスカウンタに加えて簡易アクセス解析も付いた便利なプラグインだ。

エラーが発生したのは、検索エンジン経由でRefererにキーワードが含まれるとき。
しかも、マルチバイト文字が含まれるときに限られることが分かった。
ページは表示されるものの、ページ上部にWordPressのエラー表示が出てしまうのでかっこ悪い。
関係するのは、

  • wp_Counterize
  • wp_Counterize_Keywords
  • wp_Counterize_Pages
  • wp_Counterize_Referers
  • wp_Counterize_UserAgents

と4つあるテーブル(接頭辞は環境によって違う)の、うち Counterize_Keywords だ。
原因はこのテーブルのnameフィールドの照合順序がlatin1_swedish_ciになっていたこと。
ページ表示の際に新規キーワードか既存キーワードか判断して、カウントアップ(Update)するか、新しいレコードを作製(Insert)するかを判断する部分、
$sql = “SELECT keywordID from “.counterize_keywordTable().” where keyword = ‘”.$wpdb->escape($ref[‘keyword’]).”‘”;
このクエリのwhere句でlatin1_swedish_ciとutf8_general_ciが混じっているのがMySQL的に嫌だったらしくエラーになっていた。
該当フィールドをutf8_general_ciに変更して修正完了。
海外製プラグインでは良くあることなので気をつけていたはずなのに、、、
phpMyAdminで修正。念のため関連テーブルも全て変更。

wp_Counterize_Keywordsには”???”とかのゴミが溜まっていたので、適当に削除。
一応wp_Counterize_ReferersのkeywordIDフィールドと関連あるっぽいけど、Joinしているようなクエリは見当たらなかったので、あんまり深く考えずざっくり削除。
まあ動いてるし大丈夫っしょ。

ちなみに気づいたきっかけは、嫁が会社から “and i love you アニキ” というキーワードでblog検索した結果から飛んできたときにエラーになったってことを教えてくれたから。
アニキて。いや、書いたけどさ。。
このページで頂いたコメントもこのことだったのかもしれず。タイトル日本語だし。
いやぁ、スッキリ!
自分はWPにログインしっぱなしで、自分のIDはカウントしない設定になっていたんで、発見が遅れますた。

ちなみに、このサイトでは右側のWidgetに「過去の累計」「本日のアクセス数」「昨日のアクセス数」「アクセス中のURIへのアクセス数」の4つのカウンタを表示している。
それぞれ、

  • counterize_getamount() トータル
  • counterize_gethitstoday() 本日
  • counterize_gethitsyesterday() 昨日 (標準では用意されていないのでgethitstodayを参考に作成)
  • counterize_getHitsOnCurrentArticle() アクセス中のURIへのアクセス数

使える関数はFunctions ≫ Blog der Microsoft .NET / Dynamics NAV – Group Halle で紹介されている。
けど、counterize_getHitsOnCurrentArticle() は書いてない??

1回のページ表示で select count(1) from wp_Counterize where hoge みたいなSQLを毎回実行するのは非効率だなぁ、と思いながら。
重さが気になったら何か考えることにする。

コメントスパムが特定の記事を狙い撃ち

GIGAZINEでも紹介されているが、Akismetの強力なSpam排除機能のおかげで、100%に近いコメントスパム、トラックバックスパムが自動的に捨てられている。
他のblogシステムをまともに使ったことが無いので、一般的にどうとかは分からないが、良く出来たシステムだと思う。

それはいいのだが、アクセス数やコメント数、トラックバック数などからスコアを算出して、人気記事のランク付けなどが出来るプラグイン “Popularity Contest”(WordPress Plugins | alexking.org) は、残念ながらスパムコメントやスパムトラックバックの数もカウントしてしまう。
時間が有ればそれらを除いた数でランク付けするように改造したいのだが、いかんせん時間が無い。(あとPHPもよく分からん!)
で、昔書いた何てこと無い日記にスパムが押し寄せた結果、ランク上位にそんな記事が上がってしまったりしていた。
最初は情けないことにスコアを管理しているテーブルを無理やり書き換えてスコアを下げたりしていたのだが、いよいよもってさっきその記事のコメントとトラックバックを止めてみた。

何かの基準で機械的に記事を選んでるんだろうけど、全く持って意味が分からん&迷惑。。。

週末にでもちょっとPopularity Contestのソースでも覗いてみるかなぁ。
はぁ、早くオウチ帰りたい。。。

最強の呼び声高いブログ用対スパムプラグイン「Akismet」 – GIGAZINE

サイドバーコメントの表示方法カスタマイズPlugin Get Recent Comments

以前からWordPressのデフォルトのコメント表示方法には不満があった。
デフォルトの表示内容は、[コメント投稿者名] >> [記事名] となっていて、Widgetでカスタマイズできる項目は表示件数のみ。
サイドバーをカスタマイズするPluginも一杯存在するが、しっくりきたのは、Bitte keine heisse Asche einwerfenで配布されているGet Recent CommentsというPlugin。カスタマイズ項目も豊富で、指定文字数以上の省略表示についても日本語も問題なし。
ダウンロードして、Pluginを有効化したら、Widgetの中に “Get Recent Comments” と “Get Recent Trackbacks” というのが増えているので、それを表示させたい位置に置くだけ。細かい設定は各種設定から可能。

やっと一つスッキリした。こうやってクエリが増えていってサイトも重くなっていくのか。。。
そろそろ新しいサーバに移行したいなぁ。

ダウンロードはGet Recent Comments « Extend › Pluginsから。

カスタマイズ可能な項目は以下のとおり。
続きを読む サイドバーコメントの表示方法カスタマイズPlugin Get Recent Comments