Google (XML) Sitemaps Generator for WordPress を導入

サイトマップの話の続き。

RSS 2.0 を受け入れてくれるはずなのに、 feed/ でもダメでした。しかたがないので Google (XML) Sitemaps Generator for WordPress というプラグインに頼ります。

以下、次回インストール時のためのメモもかねて使い方を説明します。

上記のリンク先から google-sitemap-generator.3.1.0.1.zip (数字はバージョンによって異なる)をダウンロードして解凍したら、出てきたファイルをババーっとプラグインフォルダにアップロードして、 readme.txt にあるようにトップディレクトリに sitemap.xml と sitemap.xml.gz を作成し、両方ともパーミッションを 606 (あるいは 666)に変更。

あとは WordPress の設定画面から有効化して、各種設定→ XML-Sitemap とたどり、適当に設定。最後に一番上の Status の中にある build the sitemap のリンクをクリックすれば、sitemap.xml と sitemap.xml.gz が更新されます。新しいエントリーも自動的に登録されます。(www.hekt.org の sitemap.xml。静的ページを含めない設定にしたのに About が含まれてるのはなぜだろう。たけど、いつの間にか消えてました。

WordPress ME 2.2.1 から WordPress 2.5.1 (日本語版)にアップグレード

この前テーマを変更したときに WordPress ME がいつの間にか消えていたことが判明したので、テキトーにググって先人の移行メモを参考にしながら、本家の日本語版に移行しました。以下は大雑把な作業内容。

バックアップを取って、プラグインをすべて無効にしたあと、ダウンロードして解凍した WordPress 2.5.1の ファイル群をそのまま(wp-config-sample.php は、以前の wp-config.php を参考に同じように変更して wp-config.php にリネームしたうえで)アップロードし、wp-admin/upgrade.php のアップグレード用のリンクをクリック。あとは無効にしたプラグインを有効に。これで完了。

前回も楽でしたが、今回はクロスアップグレードというか、ME から本家版へのアップグレードなので、いろいろ不具合が起こると思ったのですが、何も起こらず拍子抜けでした。

とりあえずこの記事を投稿してみただけですが、管理画面のレイアウトが変わった以外は特に何が違うというわけでもなさそう。利用者としてもスムーズに移行できそうです。

表示エンコードを EUC-JP から UTF-8 に

実はこのブログ、データベースの文字コードはずっと UTF-8 で、表示部分だけ EUC-JP となっていました。なんでこんな設定にしたのかは覚えてません。WordPress ME のデフォルトがそうだったのかな?

まあ、そのへんはどうでもいいので置いといて、例によって備忘録をかねた作業内容を。

管理画面の「設定」→「表示設定」から文字コードを変更するという、ただ一つの手順が、おそらく普通の場合の内容になるのですが、僕の場合、 ME から本家 2.5.1 にアップグレードする際に一つのミスを犯していて、おそらくそれがいくつかの作業を追加しなくてはならない原因となっていたようです。どんなミスかというと、本来 wp_config.php とリネームするべきファイル(wp_config-sample.php)を、wp_config..php (ピリオドが二つ)としてアップロードしていて、実際に使われた wp_config.php の内容は、WordPress ME 2.2.1 のものでした。

で、作業中にそれに気づき、新しいものに差し替えたのですが、そうすると今度は Warning: Invalid argument supplied for foreach() in /example/wp-includes/capabilities.php on line 31. というようなエラーコードが表示されるようになってしまい、また、管理画面にログインしようとしても同じファイルの19行目(capabilities.php on line 19.)がエラーを出しすようになってしまいました。

このエラーコードでググってみたところ、どうやら WordPress の文字コードを変更した場合によく見られるエラーのようで、「WordPress標準ガイドブック」サポートサイトの wp_cap.php を利用することで解決するらしいということを知りました。これは WordPress ME に向けたパッチのようですが、どうやら本家版 2.5.1 でも動くようで、エラーコードの問題がしっかり解決してくれました。(もちろん動作する保証はしません。自己責任で。)あとから判明したのですが、ちょっと面倒なことになりました。2.5.1 では使わないでください。

あと、2.5.1 にアップグレードしたあとの管理画面を見て、ところどころ日本語化されていなかったのが気になっていたのですが、どうやらそれもこのミスに起因するようです。修正した後はちゃんと日本語化されていました。

というわけで、UTF-8 になりました。データベースと表示部で違う文字コードを使うのは非効率な気がして修正したのですが、なんだか表示も速くなったような気がします。プラシーボ?

ファイターズケガ人リスト

  • 稲田 左母指末節骨(復帰済み)
  • 糸井 左下腿外側コンパートメント症候群(二軍調整中)
  • 小谷野 左外腹斜筋肉離れ(復帰済み)
  • 金子誠 左脚付け根付近の痛み(復帰のメド立たず)
  • 武田勝 左親指末節骨骨折(8月復帰予定?)
  • MICHEAL 右ハムストリング筋挫傷(5/15より2-3週間)
  • 森本 左手第五中手骨骨折(5/26より全治4-5週間)
  • 高橋 左手第五中手骨骨折(6/2より全治約1ヶ月)

全員開幕一軍の主力級(稲田は控えクラス?)ばっかり8人。これでよくパリーグ2位、交流戦首位にいられるなあ。

ページの公開・編集・削除ができない

WordPress 2.5.1 にアップグレードして、いくつかの問題が生じています。たとえば、アーカイブページの一覧表示ができなかったり。

それを正そうと思ったのですが、なぜか「このページの編集は許可されていません。」というエラーが。なら削除してもう一度作り直そうと思っても、削除する権限もないんだとか。じゃあもうほかの名前で作ればいいやと思ったら、今度は公開できず。どうしようもないのでググったら、同じような問題に関する記事があった(wp_config.php のくだりに親近感!)ので、掲載されているコードを wp_user_roles にコピペ(全角文字は半角に直したよ)したものの、何もかわらず。

ダメ元でもうひとつユーザーアカウントを作って、権限を「管理人」や「編集者」に昇格させてみるも、やっぱりダメ。

もしかして前回の my_cap.php が悪さしたんだろうかと思ったものの、コードを見てみると、どうやらさっき修正した wp_user_roles しか弄ってない模様。

もうだめぽ、とあきらめつつも最後のよりどころとして 2ch 某スレに質問したところ、新規インストールしてそれをコピペすればいいよ、というようなアドバイスをいただきました。で、そこで気づくのですが、僕がずっと操作していたデータベースは、いまは使っていない古いものなのでした。なんでこんなミスが生じたかというと、データベースの操作に使っていたツールをインストールしたのが、一度まっさらにしたとき以前だったんですね。そのときの設定のままで使ってしまっていたわけです。

つまり、犯人はやっぱり my_cap.php で、wp_user_roles を修正したと思っても修正できていなかった、と。それならば正しいデータベースにさっきのをコピペすれば、と思ったのですが、これもダメで、結局素直に新規インストールしてコピペしたところ、うまく動いてくれました。

で、最初のアーカイブページの問題は、あれこれ弄っても Exec-PHP が動いてくれなかったので、runPHP というプラグインに変更しました。

補足。どうせならこの記事でコピーしたコードを残しておいたほうが有意義だと思ってもう一度 wp_user_roles を見に行って気づいたのですが、コピーしたときにはなかった runPHP に関するコードが追加されていました。おそらく、Exec-PHP が動かなかったのは、それに関するコードが wp_user_roles になかったことが原因だったんだと思います。再インストールしてもダメだったのは、一度インストールしたことがあることがどこかに記録されていたから?

パチってきたよ

前回(書いてない)は、アクエリオンに14kほど喰われたのですが、懲りずに今度はエヴァやってきました。

ザっと書くと、 3k くらい投資した時点で暴走→単発→単発→浪費で、 5k 投資の 5k 回収でプラスマイナスゼロ。リツコの顔見飽きた。二回目の時短終了でやめておけば 4k くらいプラスだった気がする。

iPhone は Softbank から

 ソフトバンクモバイルは6月4日、今年中に日本国内で「iPhone」を発売することについて、米Appleと契約したと発表した。

アメリカのハゲから日本のハゲへ。

が、僕は今使っている 920SH の分割払いが1年半以上残っているのでした。それに、iPhone もなんだかいまさらというか、僕の中でガジェットとしての魅力が薄れてしまった感が。iPod Classic + ケータイでいいんじゃないか、と。つまり iPod Classic がほしいのです。遅めの誕生日プレゼントにゼヒ。

たまには二軍戦にも触れてみる

といっても映像ではまったく見てないんですけど、結果を見ただけでもいろいろと起こってるのがわかったので。

  • 陽が2試合連続先頭打者ホームラン
  • 金子洋平が死球で途中交代
  • 金子誠が代打で1打席のみ出場
  • 中田が3試合で5本塁打を放ち現在イースタンホームラン王
  • 八木が7回を2安打1四球で無失点
  • MICHEALが復帰登板(次の中日戦から一軍らしい)

数試合にまたがったものもありますが、すべて昨日の試合がらみでのこと。あとは、糸井が順調に来てる(現在8試合で打率.290の2本塁打)のも好材料。金子洋平はどうやら由規に頭部死球を食らったみたいで、大丈夫なんだろうか。

それと、なんか新外国人を獲得するらしいです。まあ、当然というか、この状況ならそりゃ動きますよね。

 日本ハムは5日までに、外国人補強選手として、米大リーグ・レンジャースの元選手で、マイナーリーグに所属するジェーソン・ボッツ内野手(27)を獲得する方針を固めた。打撃陣にけが人が続出する中、長打力が期待できるスイッチヒッターのボッツに白羽の矢を立てた。

成績を見ると、打率に比べて出塁率が高いのが目に付きます。それだけ四球を選んでいるということで、それはつまりスレッジ二世? 守備位置も一塁と外野みたいで丸かぶりです。スレッジがもう一人(しかも両打ち)いるとなるとかなり心強いですが、そのスレッジも日本の野球になれてくるまでは打率も2割前半で、ファンからもボロクソいわれていただけに、即戦力として期待しすぎると失望する気がします。しかしほんとスレッジの成績とそっくりだな……。

で、現在二軍で2割前半のジョーンズ……、応援してるんですけどね、応援してはいるんですけどね……。

文章作成のセルフルール

WordPress をアップグレードしてから、英文(アルファベットで表記されている単語)の前後に半角スペースを空けているのですが、文章のルールについてそこから発展していろいろ考えてみます。

最初にあげた半角スペースの場合、英語のルールとして、単語の間にはスペースが入りますよね、しかし日本語は入りません。ここで、英語と日本語が並んだ場合にそれぞれのルールの間で矛盾が生じますが、日本語のルールは「入れてはいけない」ではなく「入れなくてかまわない」(これも違う気がするけど)なので、文章として見やすいこともあってスペースを入れることにしました。ただ、句読点の後をどうしようかいまだにちょっと迷ってます。英語の場合は句読点(ピリオド・コンマ)の後ろにスペースを入力しますが、日本語のフォントの場合、句読点そのものにスペースが含まれている気がします。たとえば縦書きの原稿用紙ならマス目の右上に書くように決められているように、スペースも含めて句読点なのかな、と。(英語におけるピリオドやコンマもマス目のどの程度の位置に書くべきか定められているのかもしれませんが、少なくとも半角英数のプロポーショナルフォントではそれは無視されていますよね。)

文頭のスペースなんかは CSS で実現することが可能なのですが、日本語において文等にスペースを入れるのは見た目的な問題というよりも、三点リーダ(「…」)や直線(「─」)を二つセットで使うというようなことと同じように、ルールとして存在しているように感じます。ニュース記事なんかでは CSS ではなく全角スペースで表現している場合が多くて、僕もそれに倣って使おうと思ったのですが、それをやりはじめると今度は意味段落と形式段落の違いを意識するべきという気がして、面倒になりました。

(X)HTML では段落のマークアップに Paragraph を略した P という要素(タグ)が使われるのですが、これは日本語でいうと意味段落の表現に近いものだと思います。形式段落を実現するには単なる改行のタグである BR 要素を使うのが現実的ですが、形式段落マークアップしているわけではなくて改行をマークアップしているだけなので、目的に適っているとはいいがたい。となると、段落全体を何らかの要素で包含するという方法になるのですが、P 要素の中に含むことができるのはインライン要素だけで、その中で汎用的に利用できるのは SPAN 要素なのですが、ぶっちゃけインラインがどうとか以前にせっかくブログツールの便利なエディタで文章を書いているのに、手打ちでタグを加えるなんて面倒なのでやってられません。なので、結局形式段落は妥協することにしました。実際はかなりあいまいですけど。

なんか、前に HTML だとかについてグダグダ書いたのも6月でした。一年周期でこういう文章を書きたくなるんでしょうか僕は。

WWDC 2008 Steven Jobs 基調講演

AM2:00 から、眠い目を擦りつつ大量のコーヒー(致死量の1割くらい)を飲みつつ大富豪をやりつつ MacRumors.com のリアルタイム更新を見てました。

今回はソフトウェア的なこと(iPhone の新作アプリと、mobileme というオンラインサービス、それに Mac OS X の次期バージョンについてチラっと)がほとんどで、ハードウェア的なことは 3G iPhone のことだけの発表でした。MacBook か Mac mini のメジャーアップデートを期待していたのですが、まったく触れられず残念。マイナーアップデートでいいので、せめて mini にメモリ 4GB 詰めるようにしてください。そうしたら買います。たぶん。

で、日本でも Softbank から7月11日に発売される iPhone 3G。8GB 版は $199、16GB 版が $299 ということで、日本円にすると 8GB が ¥20,000 から ¥30,000、16GB が ¥30,000 から ¥45,000 くらいかな。僕が今使っている Softbank 920SH は、(分割なのでアレですが) ¥40,000 ちょっとなので、16GB のほうはそれより安いか、あるいはちょっと高いくらいです。(ジョブズは世界中で $199 で売る(The maximum price around the world is $199 USD.)と言っていたので、それを信用すると、8GB:¥21,800, 16GB:¥32,800 くらい?)

でも、個人的にはちょっと「待ち」かなあ。というのも、今現在 iTunes のライブラリが 6GB くらいあって、しかも最近は中古の CD を買ったり iTS で曲を買ったりで、結構なペースで増えていっているので、それをそのままインポートするとしたら、8GB 版はもとより、16GB のほうでもほかのアプリなんかのことを考えるとすぐなくなってしまいそうです。32GB くらいあれば安心なのですが。

あともうひとつ、Softbank の販売方法が不安。iPhone は結構頻繁に値段改定をしていて、発売から2ヶ月ちょっとで $200 の値下げを行い、それから9ヶ月で $200 値下げされた 3G 版が発売されてしまいました。仮に発売直後に2年の割賦で購入したとなると、$200 で価格で新型を買っている人たちを尻目に残り1年で $300 を支払わないといけません。(それも旧型のために。)一括で買っても $400 の差が出るのは変わりませんが、これから支払わなくてはいけない分、精神的にはこっちのほうがダメージが大きいですよね。なので、一括で買うという選択肢もほしいなあ、と。これは iPhone に限ったことじゃないのですが、920SH はいまのところ僕が買ったときの価格(¥3,880 – ¥2,200 = ¥1680/m)と変わらないことを考えると、iPhone はちょっと極端すぎますよね。(発売から半年とちょっとなのでこれから下がるかもしれませんし、1,2年で実質0円になる場合もありますけど。)

そういえば、iPod Touch の 8GB が ¥36,800、16GB が ¥48,800 なので、これも iPhone にならって値下げされそうですよね。¥20,000 くらい下がるのかな? Classic も ¥10,000 くらい下がらないかなー。