目次
functions.php に追加するコード
以下のコードを functions.php に追加します。
これで PHPファイルをショートコードで呼び出すことができるようになります。
子テーマを用意している方は子テーマの functions.php へ。
PHPファイルの作成方法については後述します。
function PHP_Include($params = array()) { extract(shortcode_atts(array( 'file' => 'default' ), $params)); ob_start(); include(get_stylesheet_directory() . "/$file.php"); return ob_get_clean(); } add_shortcode('hwebphp', 'PHP_Include');
投稿・固定ページ内に記述するショートコード
投稿・固定ページの任意の箇所に PHPファイルを読み込むためのショートコードを記述します。
PHPファイルが「myFile.php」とすると、ショートコードは下のようになります。
[hwebphp file='myFile']
'myFile'
は、PHPファイルの .php を抜いたファイル名です。
更新情報をショートコードで表示してみる<実践編>
実際に、更新情報を一覧表示するための PHPファイルを作成して、それをショートコードでトップページに呼び出してみます。
作業の手順
- PHPファイル「news.php」を作成する
- functions.php にコードを追加する
- トップページ内にショートコードを記述する
PHPファイル「news.php」を作成する
news.php と名前をつけて保存 → アップロード。
※日付と件名(ページタイトル)のみ。アイキャッチは表示されません。
<dl class="news"> <?php global $post; $tmp_post = $post; $myposts = get_posts('numberposts=表示する件数&category=表示するカテゴリー ID'); foreach($myposts as $post) : setup_postdata($post); ?> <dt><?php the_time('Y年m月d日') ?></dt> <dd><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></dd> <?php endforeach; ?> <?php $post = $tmp_post; ?> </dl>
functions.php にコードを追加する
news.php と同じフォルダ内の functions.php に追加 → アップロード。
function PHP_Include($params = array()) { extract(shortcode_atts(array( 'file' => 'default' ), $params)); ob_start(); include(get_stylesheet_directory() . "/$file.php"); return ob_get_clean(); } add_shortcode('hwebphp', 'PHP_Include');
任意の場所にショートコードを記述する
更新情報を表示したい場所にショートコードを記述して完成。
[hwebphp file='news']
※[] は半角に変えて下さい。