この記事は最後に更新してから1年以上経過しています。

投稿記事でrubyタグを使えるようにする(前編)

説明

rubyなどのルビ関連タグはIEの独自サポートから始まり、少し前のChrome/Safariが追随して利用できるようになっている。Firefoxはいまだにサポートしていないのだが、それなりに代替表示されるので、投稿記事で使えるようにしてみた。

標準のWordPress投稿ページでは、投稿記事内にルビ関連タグを指定して保存すると、ルビ関連タグは除去される(WordPress 3.3.1で確認)。調べた結果、ルビ関連タグを使用できるようにするには、グローバル変数の $allowedposttagsに使用したいruby、rp、rtタグを登録することで対応できることがわかった。

対応例として今回は、自テーマのfunctions.phpにてafter_setup_themeアクションを登録し、そのアクション処理で実行するようにしている。


add_action( 'after_setup_theme', 'mytheme_setup' );

function mytheme_setup() {
	global $allowedposttags;
	foreach ( array( 'ruby', 'rp', 'rt' ) as $tag )
		if ( !isset( $allowedposttags[$tag] ) ) $allowedposttags[$tag] = array();
}

やりたいことは$allowedposttagsに関連タグの情報を追加することなので、ここでは$allowedposttagsに未登録の場合のみ、追加するようにしている。

これにより、投稿記事の保存でルビ関連タグが除去されることはなくなり、投稿記事を表示する the_content関数でも問題なく、出力(表示)されるようになる。
なお、投稿ページは「ビジュアル」モードと「HTML」モードがあるが、この対応だけでは「ビジュアル」モードに切り替えたタイミングでルビ関連タグは除去されてしまう。そんなこともあって、今回タイトルを前編としている。「ビジュアル」モードの対応はかなりハードそうなので、後編については気長に待ってほしい(対応できないかもしれない)。


最終更新 : 2012年01月25日 12:01


お勧め

add_shortcode(2018年5月27日 更新)

void add_shortcode( string $tag, mixed $func )
ショートコード(独自タグ)を追加する。ショートコードは、投稿記事内でテキスト内容がない[tag]や、テキストを内包する[tag]テキスト[/tag]の書式で使用できる独自タグのこと。標準の状態では、 the_content関数によって表示する直前のフィルター処理内でパラメータ$funcで指定した関数・メソッドが実行される。

get_user_setting(2022年1月31日 更新)

mixed get_user_setting( string $name [ , string $default = false ] )
ユーザーインターフェイス設定を取得する。

have_posts(2018年5月27日 更新)

bool have_posts( )
次の投稿データが存在するかを調べる。

in_category(2018年5月27日 更新)

bool in_category( mixed $category [ , mixed $post = null ] )
投稿情報が指定したカテゴリーに属しているか調べる。

add_feed(2024年6月24日 更新)

string add_feed( string $feedname, callable $callback )
フィードを追加する。