この記事は最後に更新してから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


お勧め

wp_print_inline_script_tag(2021年4月19日 更新)

void wp_print_inline_script_tag( string $javascript [ , array $attributes = array() ] )
インラインJavaScriptを含むscript要素を出力する。

register_rest_route(2022年8月17日 更新)

bool register_rest_route( string $namespace, string $route [ , array $args = array() [ , bool $override = false ] ] )
REST APIのルートを登録する。

wp_determine_option_autoload_value(2024年7月22日 更新)

string wp_determine_option_autoload_value( string $option, mixed $value, mixed $serialized_value, boo l |string $autoload )
自動ロードのトリガー値を取得する。

single_tag_title(2018年5月27日 更新)

string single_tag_title( [ string $prefix = '' [ , bool $display = true ] ] )
投稿タグアーカイブページの投稿タグ名を取得し、パラメータ$displayがtrueならば表示する。$displayがfalseの場合は、文字列として返す。

home_url(2023年3月31日 更新)

string home_url( [ string $path = '' [ , string $scheme = null ] ] )
現在のブログ(サイト)のホームURLを取得する。ホームURLは、管理者ページの「設定」-「一般」の「サイトのアドレス(URL)」のこと。