カテゴリー : WordPress

WordPress 2.5 リリースまであと少し

新しもの好きの自分としては、早々に新バージョンに乗り換えてヒイヒイ言いそうな気はするのですが、3/10(北米)に WordPress 2.5 のリリース(2.4 はスキップ)が予定されています。日本語版はローカライズ等々があるだろうから、うーん、早くて日本時間の 3/12 とかでしょうか。

この WordPress 2.5 で変更される部分としては……

  • PHP4.2 から 4.3 への底上げ。
  • 管理画面のデザイン変更(すごい変わっていて正直ついていけない)
  • Gravator に対応(get_avatar() で呼び出せるみたい。テーマ側での対応が必要)
  • プラグインのアップデートが管理画面上から行えるように(現状、プラグインが全部消えるとかいう不具合があるらしい……)
  • ビジュアルリッチエディタのアップデート (TinyMCE v3.01)
  • 動画などの投稿が簡単に!(ファイルアップローダの大幅な変更)

ぐらい。ほかにも外部へのトラックバック機能の改善やら、SQLの最適化などなど、細々とした変化が盛りだくさん。英語まみれでとてもとても読んでられませんでした。

ローカル環境には trunk (http://svn.automattic.com/wordpress/trunk/)で最新版を取ってきてあるのですが、やはり新しくなった管理画面がどうにも使いづらい気がします。慣れの問題もあるのでしょうが、特にウィジェット管理部分がレイアウトがちょっとわかりづらい感じ。

でも、開発の進捗状況を見ると、55% だかになっちゃってるんですが、本当に間に合うのかな(笑)

WP-DBManager のメール文字化けを解消する

一日安静だーといいましても、一日中寝ていることもできないものなので、ネットしたりしながらゴロゴロとしているのですが、「wp-dbmanger 文字化け メールタイトル」だなんてクエリで検索があったので、そういえば気持ち悪かったものがひとつあったと思いだし、ちょっと直してみることにしてみました。

つい先日にもご紹介した、 WordPress のデータベースを自動でバックアップ・メール送信までしてくれる素敵すぎるプラグイン「WP-DBManager」ですが、やはり海外で作られたプラグインだけあって日本語のことなんかは考慮されていないつくりになっています。Gmail などで見れば問題はないようなのですが、ぼくが自宅で使用しているメールクライアント「Becky!」でバックアップメールを受け取ると、差出人と件名が壮絶に文字化けしてしまいます。

mojibakemail.gif
↑ こんなかんじ

ファイル自体は正常なのですが、メールボックスに化けに化けた件名のメールが溜まっていくにつれて、気持ちが悪いというかイライラしてきます。

原因自体は単純で、メールヘッダの From と Subject に WordPress の get_bloginfo(‘name’) (ブログ名)が指定されているからで、日本語が含まれたタイトルで運営しているとエンコードの都合で問題が出てしまうだけです。修正の方法も簡単でした。


$mail_subject = sprintf(__(‘%s Database Backup File For %s’, ‘wp-dbmanager’), get_bloginfo(‘name’), $file_date);
$mail_header = ‘From: ‘.get_bloginfo(‘name’).’ Administrator <’.get_option(‘admin_email’).’>’;

db-manager.php の 94,95 行目と database-manage.php の78,79 行目にある上記のコードから、メールの Subject, From 部分をメールヘッダ用にきちんとエンコードするべく、以下のように置き換えてあげるだけ。

$mail_subject = sprintf(__(‘%s Database Backup File For %s’, ‘wp-dbmanager’), get_bloginfo(‘name’), $file_date);
$mail_subject = mb_encode_mimeheader($mail_subject,”UTF-8″,”B”);
$mail_header = sprintf(‘From: %s Administrator <%s>’, mb_encode_mimeheader(get_bloginfo(‘name’),”UTF-8″,”B”), get_option(‘admin_email’));

mailmojibake2.gif
なおりました。:D

これでWP-DBManager を日本語化していようがいまいが、 どちらでも正常に表示されるはずです。

あくまでぼくの借りている CORESERVER 上でしか試していないので必ず直ります!とはいえませんが、 同じ問題でお悩みの方。一度おためしください :-)

CORESERVERでWP-DBManagerを動かすために

起きたらなぜか三時だった。

二度寝しようにも目がさえて眠れないので、摩訶不思議な状態に陥いり前々から気持ち悪く思っていた問題を解決することにしてみました。

WordPress のプラグインのひとつに、データベース内のデータをバックアップ、 リストア、バックアップしたデータをメールで自動送信ができるというすばらしいプラグイン「WP-DBManager」というものがあるのですが、このサイトが動いている CORESERVER ではデフォルト状態だと設定後に手動でのバックアップはできても、肝心のメール配信機能で 0byte のファイルが送られてきてしまうという問題が発生します。

これはどうも「そんな処理できねーよ!」というサーバー側からの無言の抵抗のようで、このメール自動配信機能は cron として処理する部分である以上、CORESERVER で……というよりも XREA 系のサーバーで動かすには、PHP を CGI として動作させる必要がでてきてしまうようです。

別にそうすりゃいいじゃないというお話でもあるのですが、CORESERVER のサーバーヘルプに書かれている説明だと『モジュール版PHPに比べて、動作が遅くなる。負荷が掛かる。』とあり、重くなるんかよウゲゲーと感情的に嬉しくありません。早いほうがいいですよね!

ルートに「AddHandler application/x-httpd-phpcgi .php」と書いた .htaccess を置けば実に簡単に解決するのですが、これだと全体がそう処理されてしまうわけですから、前述の負荷云々で問題が出そうです。

かといって、CGI として動作させないことにはどうにもなりません。そこで今回、その被害(?)を最小限に食い止める方法をご紹介してみます。

方法はいたって簡単。WordPress のルートフォルダに .htaccess を設置もしくは追記してあげるだけ(たぶん mod_rewrite がらみのものがあるので、追記になるはず)!

<files wp-cron.php>
AddHandler application/x-httpd-phpcgi .php
</files>

要は WordPress の cron 部分を担当しているファイルだけを指定してやるだけです。ひとまずこれでメールの 0byte 問題は解決。負荷 pt なんかもそんなに上がらないんじゃないかなーと踏んでいます。

お困りのかたは是非どうぞ、と言いたいところですが、ぼくも今し方、書き換えたばかりのものなので他にやっぱり問題が出るかもしれないというところは、念頭に置いていてくれると助かります :-)

おっと、ちなみに CORESERVER の mysql と mysqldump のパスは


mysqldump : /usr/local/mysql/bin/mysqldump
mysql : /usr/local/mysql/bin/mysql


となります。

WordPress 2.3.3

WordPress 2.3.3 は緊急のセキュリティリリースです。とても巧妙なリクエストによって、有効なユーザー権限を持つ者なら誰でも同一ブログ上の他のユーザーの投稿の編集ができてしまうという弱点が、私たちの XML-RPC の実装に見つかりました。

WordPress | 日本語 (2008-02-06)

日本語版もさきほどダウンロードできるようになったようです。

新しいバージョン大好きセキュリティリスクがあるのを放置しておくのもなんなので、サクッと 2.3.3 にアップデート。旧バージョンをご利用のかたはご注意!

注目させたい記事を表示するプラグイン

常にトップページ上にあげておきたいといったほどではなく、記事ごとの人気度を測って表示させるほどの必要もない。

埋もれてしまう記事を救う意味でも、特別な記事をピックアップするリストを簡単お手軽に作る方法はないものかと色々なプラグインを試していたのですが、シンプルに徹したものはどうも見つけられませんでした。

まあタグを使えば一発解決なんですが、タグの管理というのがどうも苦手というか、必要なくなったときのタグの付け替えが面倒だなあと思い、勉強がてらに「テーマのウィジェットとしてさくっと配置できて、ワンクリックで設定、出力も単純なリストで」的なプラグインをひとつ作ってみることにしました。

プラグインの作り方を解説しているサイトがないものかと探してみるも、データベースエラーで閲覧できないというステキすぎる状況……。そもそも、あまりプログラムが得意な人ではない ((コピペプログラマー))のですが、なんとか単純極まる仕組みのプラグインが完成。XAMPPがなければ、出だしで諦めていたかもしれません。

できあがったプラグインはこんな感じ。エディタ上から、注目させるかさせないかのチェックボックスで設定することができ、ウィジェットとしてぽいっと設置できるような感じになりました。早速設置してみましたが、大丈夫だよね……。

fav_plugin.gif

需要もないだろうし、これを公開する勇気まではさすがにありませんが、同じようなことで悩んでいる方がいらっしゃるようなら差し上げますので、コメント欄にでもお気軽にお知らせください。:-D

# その後、需要があったようなので公開しました。(2009/5/3 追記)

My Favorite Posts 0.3
http://blog.newf.jp/etc/favorite_posts.zip

しんしんと雪が降る中の暇つぶしには最適でした。

img_0598.jpg

豪雪のなか、散歩に行きたそうなレウさん。

眠れぬ夜の WordPress 遊び

なんでか四時ぐらいに目が覚めてしまったので、今更寝直すわけにはいかんというわけで WordPress を弄って遊んでます。 昨日もこんな感じだったなあ。

WordPress を弄るといえば、それはもう多々あるプラグインをどんどん入れて、「アッー、高機能っぽくなってるヨォ!」という遊びに尽きるわけですが、ご多分に漏れず今日もそのように遊んでいます。

そこで今日導入してみたプラグインは―

WP AJAX Edit Comments

投稿されたコメントを投稿者本人が編集できるようになるプラグインです。

本ウェブログでは20分間以内なら、投稿したコメントをちょいちょいと弄くることができるようになっています。誤字脱字の訂正などにがんがん利用してやってください。

本来なら名前欄も編集できたりするのですが、ここはそう編集することはないだろうし、ちょっと邪魔だなということで、削らせてもらいました。

昨日あたりからデザインテーマを変更したりと色々と弄くりまわしてしまっているので、何かおかしな表示になってしまっていたりするところがあれば、是非ともぼくに教えてください。いちおう、Firefox, IE7, Opera で確認しているので問題ないハズなのですけれど。

feedburnerの使用を止めてみる。

CORESERVERに移転後、feedburnerから毎時の勢いで

FeedBurner had trouble retrieving your Source Feed:

http://blog.newf.jp/feed/

なんてメッセージがガンガン届くようになってしまいました。

要は、あんたのところのフィードおかしいよというお知らせで、

The error message is: Error getting URL: 500 – Internal Server Error

Actions you can take:
Validate your Source Feed with Feed Validator. This service provides additional detail about the problem, and how to repair it.
Resync your FeedBurner feed once you have repaired the source feed.
Contact FeedBurner for help with your feed if all else fails.

具体的にはこんなメッセージがおまけで付属しています。

RSSフィードのURLが自分の環境(Firefox)で、たまに何も表示されなくなってしまうことがあることが関係しているような気もするのですが、そもそもこれがさっぱり原因が分かりません。CORESERVERに問い合わせてみるも、ルータの再起動をしなさいだとか、キャッシュをクリアしなさいということで。むむむ :-(

とりあえずFeedBurner 側でフィードのURLを変更しようとして、http://blog.newf.jp/feed/ 、http://blog.newf.jp/?feed=rss を新たに入力しても不正なURLだとか、フィードが含まれていないだとかではじかれるようになってしまい、にっちもさっちもいかなくなってしまいましたので、上記の問題が解消するまでは(するのかなあ)FeedBurnerは使用しないことにしました。

うーん、なんでだろう。

track feedさんが突然デレた。

track feed」というサービスをご存じでしょうか。

私が愛してやまないサイドフィード株式会社 ((フレッシュリーダー最高!))の提供しているサービスで、ページ上にステッカーをぺたっと貼っておくだけで、どこのサイトからリンクを貼られたのかを RSS で教えてくれる今風のイカしたサービスです。

いちおう登録して貼り付けておいたものの、世界の隅っこにあるようなぼくのサイトでは「リンクなんてないわよバカ」なんて具合のツンツン・フィードしか提供してくれなかったのですが……さきほど見ると、なにやらすごいことになってました。急にデレたとしか思えないほどのフィードの提供っぷり。

はてな。

急に増えたのはなんだろうと思いつつも参照先を見ると、うむむ? WordPressから?

何か悪いことでもしたっけ……と考えつつ、管理画面に入ってみるとエラいことになっていました。当ウェブログで使用している WordPress ME では、管理画面(ダッシュボード)にログインした際に、登録されたサイトの最新記事が表示されるなんて仕組みがあるわけですが……。

ご迷惑をおかけしました!

ヒィーッ! なんかごめんなさい!! きっと「何でこんなに占有してるんだよ」的な思いでクリックされたことでしょう……。せっかくなのでうちのかわいくて愛らしいレウさまの写真でも貼り付けておきますので、堪忍してください。

ちょっとだけよ。なんかしらないけど、ごめんなさい

サーバーお引っ越し後の問題

CORE SERVERへの引っ越し後、どうもRSS Feedを表示するページに問題が起きている様子。

http://blog.newf.jp/feed/で、RSSフィードを読み込めるはずなのですが、なぜか真っ白で表示されてしまいます。さくらインターネット時代には、こんな症状は出ていなかったはず……。いろいろと調べてみたもののお手上げ状態。まったく原因がわかりません。

と思ったら表示されたりもする。ウムム、なんなんだ。

サーバーお引っ越し終了。

約一日のあいだ、当ウェブログ(newf.jp)に接続できなかったと思います。

当ウェブログ(と、他のドメイン)はこれまで「さくらインターネット」さんのレンタルサーバーを借りて運営していたのですが、「もっとじゃんじゃんペットの動画とか載せたい!」なんてリクエストに応えるには、少しサーバーの容量が心許ない感じでありました。

とはいっても、 スタンダードプランで1GBはあるし、贅沢いわなければ全然余裕あるわけで、なにせ年間五千円という低価格。あまり文句も言えまいと考えていた矢先、ドメインの管理でお世話になっている「VALUEDOMAIN」さんで新しいサーバーホスティングサービスが開始されていた模様。

CORESERVER.JP(コアサーバー)は、PHP MySQLの快適性を重視した大容量の次世代レンタルサーバーサービスです。
XREA の仕様を基本に、より高性能なサーバーと高速な回線に、より豊富なリソース配分を加え、より少ない定員数で安定性を高めた上位互換サービスです。 VALUE-DOMAINとの連携でドメインの運用を自由に行えます。

CORESERVER.JP:コアサーバー (2007-08-05)

これまでの年額五千円と同額でありながら、サーバーのスペックやら手が出せる範囲も相当広い!何より「上位互換」という響きがいい! 仮想マシン上で動かしてるのかしら、これ。安くていろいろできる、というなら躊躇う理由もないことからお引っ越しの準備をすることに。

データベースのバックアップは取っているので、特にめんどくさい作業も必要なさそう……と思っていたものの、ドメインの移管とDNSの反映に予想以上に時間を費やしてしまい、かなりの長い期間、ドメインにアクセスできない状態になってしまいました(もちろん、一度に設定したのではなくて順次していましたが)。

WordPressの移行そのものは割とすんなり。一部のプラグインで前の情報が残っていたためにうまく動作しないものがありましたが、wp_option から直接編集することで対応も完了。

おそらくおかしな箇所ももう無い(たぶん)はずですが、なにやらおかしなエラーが出ているような場合はコメントなどで教えていただけると助かります……。