KH-WEBLOG TOP > WEBメモ > WordPress > 記事IDやカテゴリを指定してショートコードで投稿を表示:WordPress

記事IDやカテゴリを指定してショートコードで投稿を表示:WordPress

最終更新日:

記事IDやカテゴリを指定して

[kiji postid="11"]
等のようにショートコードで投稿情報を呼び出す方法をメモ

実装

functions.phpに

function kijiFunc($atts) {
	extract(shortcode_atts(array(
		'mode' => null,
		'type' => null,
		'catid' => null,
		'id' => null,
		'y' => null,'m' => null,'d' => null,
		'numberposts' => 5,
		'offset' => null,
		'order' => 'DESC',
		'orderby' => 'post_date',
		'meta_key' => null,
		'postid' => null,
		'exclude' => null,
	),$atts));

	if($mode != null) $mode = '&'.$mode.'='.$id;
	$post = get_posts('post_status=publish&numberposts='.$numberposts.'&offset='.$offset.'&order='.$order.'&orderby='.$orderby.'&include='.$postid.'&year='.$y.'&monthnum='.$m.'&day='.$d.'&exclude='.$postid.','.$exclude.'&meta_key='.$meta_key.$mode.'&cat='.$catid);
 	$echo ="";
	foreach ($post as $item){
		$img = wp_get_attachment_image_src(get_post_thumbnail_id($item->ID),'home-thum',false);
		$date = date('Y.m.d',strtotime(get_post($item->ID)->post_date));
		$update = date('Y.m.d',strtotime(get_post($item->ID)->post_modified));
//出力ソース
		$echo .= '<div class="postbox"><div class="pic"><a href="'.get_permalink($item->ID).'" ><img src="'.$img[0].'" /></div><div class="kijiinfo"><p class="ttl">'.$item->post_title.'</p><div class="date">'.$date.'</div></div></a></div>';
	}
 
	return $echo;
}
add_shortcode('kiji','kijiFunc');

と記載します。

以下実装例と説明です。

記事IDで投稿を指定

単一で記事をIDで指定する場合は
[kiji postid="2"]
のように記載します。


↑このように表示されます。

カテゴリを指定して投稿を出力

次に、カテゴリID(7)を指定して投稿を3記事出したい場合などは

[kiji catid="7" numberposts="3"]

のように記載することで


↑このように表示されます。

TAGS

.htaccess ActionScript All in one seo pack Contact Form 7 CSS CSS3 EC-CUBE Flash HTML HTML5 JavaScript jQuery LightBox PHP SEO WordPress アイキャッチ画像 アクセス解析 カテゴリー カラーミーショップ カート コメント ショートコード ソースコード タグ テンプレートタグ ドロップダウンメニュー パーマリンク ビジュアルエディタ フォーム フルスクリーン プラグイン ページテンプレート ページナビ ページ分割 マウスイベント リダイレクト リンク レンタルサーバー ロールオーバー 携帯サイト 条件分岐 正規表現 角丸 関連記事