WordPressの記事中に静的なHTMLパーツを読み込ませる

WordPressの記事中で、静的なHTMLパーツを読み込ませたいケースがあったとする。色々な方法があるのだろうけど、僕がやった方法は、

  • functions.phpに、HTMLを読み込むショートコードを定義する
  • 記事中でショートコードを使う

というやり方。自分でもやり方を忘れてしまうので、ここに記しておく。

HTMLを読み込むショートコードを定義する

functions.phpを編集する。具体的には、ダッシュボード→外観→テーマエディターと進めば、functions.phpを編集できるようになる。

その末尾に、例えば xyz.html というHTMLパーツを読み込む show_xyz という名前のショートコードを定義するには、以下のように追記すればよい。

なおここはPHPのコードであり、WordPressそのものをいじることになるので、いくらかの覚悟が要る。バックアップはきちんととってから、あとは文法間違いなどないように、慎重に行った方がよい。

/* show_xyz shortcode */
function show_xyz_func() {
return @file_get_contents( "/home/username/public_html/xyz.html" );
}
add_shortcode( 'show_xyz' , 'show_xyz_func');

記事中でショートコードを使う

ショートコードを使うのは簡単で、本文中で、

[show_xyz]

と書いておけばよい。これはContactFormプラグインを使うときと同じようなノリなのかな。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です