WordPress 特定の記事をショートコードで表示する

当サイトはアフィリエイト広告を利用しています

 

投稿ページや固定ページに、特定の記事を表示したいときの方法です。

手順は

[1] function.php に記述

[2] news.php ファイルを作成

[3]固定ページでインクルード

目次

function.php に記述

※必ずバックアップを取ってから記述

function Include_my_php($params = array()) {
    extract(shortcode_atts(array(
        'file' => 'default'
    ), $params));
    ob_start();
    include(get_theme_root() . '/' . get_template() . "/$file.php");
    return ob_get_clean();
}  
add_shortcode('myphp', 'Include_my_php');

news.phpファイルを作成する

メモ帳やTeraPadなどのテキストファイルに記述。

ここでは「news.php」ファイルを作成。

<div>
<?php
  $args = array(
	'category' => 10, // カテゴリーID
	'post_type' => 'post', // 投稿タイプ
	'posts_per_page' => 5, // 表示件数の指定
	'order' => 'DESC'// 降順
  );

  $posts = get_posts($args);
  foreach ( $posts as $post ): // ループの開始
  setup_postdata( $post ); // 記事データの取得
?>
	<div>
	<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">
	<p><?php the_title(); ?></p>
	</a>
	</div>

<?php
  endforeach; // ループの終了
  wp_reset_postdata(); // 直前のクエリを復元する
?>
</div>

表示したいページで news.php ファイルをインクルード

[myphp file=’news’]

この記事を書いた人

目次