TinyMCE Advanced

TinyMCE Advanced 導入前。
TinyMCE Advanced 導入前。
TinyMCE Advanced 導入後。
TinyMCE Advanced 導入後。

WordPress のビジュアルエディタには TinyMCE が採用されていますが、デフォルトでは TinyMCE 用のプラグインがインストールされていないため、テーブル(表)を編集することができません。自分で TinyMCE のプラグインをインストールするのは面倒なので、TinyMCE Advanced プラグインを導入して、テーブルを編集できるようにしています。

get_category_parents 関数を使うと、Catchable fatal error になる事の解決法

WordPress の日本語版 Codex に書かれている通りに、get_category_parents 関数(日本語版 Codex では関数ではなくテンプレートタグに分類されていますが、どのように違うのかあまりはっきり分かっていません)を使うと、Catchable fatal error が出力されてしまいます。僕は PHP の事はほとんど勉強したことが無いので、以下の理解が正しいのかどうか自信がありませんが、どうやら get_category_parents 関数の引数 $cat は自動的に WordPress が用意してくれるものではなく、php コードをきちんと書いてやらねばならなかったようです。ですので、僕は以下のように記述してみました。

[source language="php"]cat_ID, TRUE, ' » ')); ?>
[/source]

これで無事にカテゴリーのパンくずリストが表示されるようになりました。いい加減 PHP の勉強にも手をつけた方がよさそうです。

List category posts

子ページを乱造することを避けるため、これまでの方針を転換してできる限り投稿で済まそうとしているのですが、そうするとページから投稿群へのリンク集が必要になってきます。完全に機械的な作業ですので、手作業の代わりに編集してくれるプラグインを探して見つけたのが、このプラグインです。

プラグインに頼らずとも、WordPress のテンプレートを操作すれば、同様の機能を得ることができます。ただ、ページごとにテンプレートを変えることは、サイトを管理する上でのストレスになります。php コードを埋め込むプラグインを使用することもできるのですが、そうするとビジュアルエディタを使用できなくなってしまいます。

WordPress の「ページ」を「投稿」に変換したい

WordPress でウェブサイトを作るようになって、もうすぐ三年になります。僕が最初に触れた WordPress は ME 2.2 というバージョンで、すでに「投稿」と「ページ」の使い分けができるようになっていました。それまでブログというものに対して否定的だった僕は、ブログのエントリーと言う考え方にどうもなじめなくて、せっかく WordPress を導入したにもかかわらず、古い時代のウェブらしい使い方ができる「ページ」を盛んに作っていました。

ところが、エントリーの考え方がわかってくるにしたがって、「投稿」の方が便利なのではないか、と考えるようになりました。これは、僕自身のブログに対する理解(というよりも、昔ながらに言うところの Web 2.0 に対する理解、とでもいうべきか)が進んだというだけにとどまらず、社会全体でのブログに対する理解 ――― もっと言うならば、カテゴリーやタグといった概念を利用して、情報にインデックスを付けていくことに対する理解 … たとえば、60 年間パソコンを使ったことのなかった僕の母親も、公民館のパソコン教室で習ったおかげで、今では自分で撮影した写真にタグ付けをしています ――― が進んだことによって、「投稿」に対する親和性が高まって、これを利用することへの抵抗がだんだんと薄らいできたことによるのではないかと思います。

そういうわけなので、旧来のスキームに従って作ってあった「ページ」の内容を、極力「投稿」へと変換したいと思うようになりました。やはり世間には同じような事を考えている人が多かったのか、ちょっと検索したところ、すぐにそのような WordPress のプラグインが見つかりました(p2pConverter)。ボタンひとつで「ページ」と「投稿」を相互に変換できます。大変便利ですので、おすすめしたいプラグインです。

WordPress のトップページが真っ白になった場合の対処法

WordPress のダッシュボードからテーマを選択していたら、突然ブログのトップページが真っ白になってしまいました。管理画面の URL を直接タイプしたところ(ブログのトップページの URL の末尾に /wp-admin を追加する)、ダッシュボードには入ることができましたので、他のテーマに変更してみました。変更はうまくいったのですが、トップページは相変わらず真っ白のまま。おかしいなと思って、もう一度テーマの選択画面を表示させてみると、先ほど選んだテーマとは別のテーマが勝手に選択されています。どうやら何かのバグのようです。

念のためもう一度、別のテーマファイルを「使用する」ことにしました。今回も変更はすんなり受け入れられたのですが、相変わらずトップページは真っ白のままです。再々度テーマの選択画面に戻ると、やはり別のテーマが勝手に選択されています。先ほどは気が付きませんでしたが、エラーメッセージも表示されています。

現在のテーマは壊れています。デフォルトのテーマに戻します。

なるほど、確かに WordPress が勝手に選択したテーマは、デフォルトのテーマです。しかし、ブログのトップページに戻ってみても、画面はやはり真っ白のまま。どこかのキャッシュにバグが蓄積しているようです。普段まったく使用していない Safari や Internet Explorer 8 から同様の操作を行ってもバグが解消されないので、原因はサーバーに設置されている WordPress そのものにありそうです。

WordPress.org のフォーラムに書き込まれた過去の記事や、インターネット上でのトラブルの報告事例を一通り読んでみましたが、僕と同様のケースは解決が困難で、結局再インストールするしかなかった、という事例ばかりが見つかりました。しかし、キャッシュのクリアのために再インストールまではしたくないので、いろいろと試してみることにしました。開発者に問い合わせて、キャッシュのありかがわかればそれを削除することもできるかと思いますが、なんとなくひらめきで、「『テーマファイルが故障している事をメモしてある何か』が消えないのではないか」と思いました。

そういうわけで、あえて壊したテーマ(style.css が無いなど)を用意してテーマの選択画面を表示させてみました。すると「壊れているテーマ」という項目が、画面の下部にリスト形式で表示されています。これで、先ほど想像した「テーマファイルが故障している事をメモしてある何か」が正しく書き換えられたと信じて、もう一度、テーマファイルを選択しなおしてみました。するとどうでしょう、無事にトップページの表示が復活したではありませんか。

というわけで、どういうわけでか、WordPress は時たま、「テーマファイルが故障している事をメモしてある何か」を壊してしまうことがあるようです。その場合は、わざと壊したテーマを用意することによって、回復することができるようです。同様の症状にお悩みの方がいらっしゃいましたら、このエントリーが助けになれば幸いです。