• HOME
  • WordPress
  • 記事に投稿日と現在の日時を利用したNEW表示ファンクション版

記事に投稿日と現在の日時を利用したNEW表示ファンクション版

//新着のNEW表示
function new_point() {
$html = "";
$day = (date('U') - get_the_time('U'))/(24*60*60);
$hyouji_day = 2; //日付設定
if($day <= $hyouji_day ){ 
$html .='<span class="new">NEW</span>';
}
return $html;
}

//店舗別ブログ新着のNEW表示


function shop_entry() {
wp_reset_query();

$page_list= get_pages('sort_column=menu_order&child_of=75');
foreach($page_list as $list){

$title = $list->post_title;
$url = $list->guid;

echo '<li><a href="' .$url. '">' .$title. '</a>';

if($list->ID == 71){
$string = "伊賀上野店";
}elseif($list->ID ==69 ){
$string = "商店街店";
}elseif($list->ID ==57 ){
$string = "まるやま店";
}elseif($list->ID ==59 ){
$string = "小倉店";
}elseif($list->ID ==61 ){
$string = "東大阪店";
}elseif($list->ID ==65 ){
$string = "桜井店";
}elseif($list->ID ==67 ){
$string = "祝園店";
}elseif($list->ID ==63 ){
$string = "西大和店";
}elseif($list->ID ==73 ){
$string = "京都八幡店";
}
$args = array(
            'post_status' => 'publish',
            'post_type' => 'post',
			'showposts' =>1,
            'meta_query' => array(
array('key'=>'shop_g','value'=> $string )
            )
        );
$posts = query_posts( $args );
foreach($posts as $post){
$entry_day = get_the_modified_date();
//echo $post->post_date;
$date = explode(" ", $post->post_date);
$date_a =$date[0];
if (strtotime(date('Y-m-d', strtotime("-2day"))) <= strtotime($date_a)) {
echo '<span class="new">NEW</span>';
}
}
echo '</li>';
wp_reset_query();
}// end foreach

}

これはがんばった。まじがんばった。
下のほうは特定のページの子ページのリストを取得しそこに投稿に付属しているメタデータと関連付けをし
クエリを投げそこから記事の更新日を抽出しexplodeを利用し日付のデータを整形しdateと照らし合わせ条件に該当する場合にechoさせる。

という感じ。
テンプレートには

<?php shop_entry();?>

でliタグとあわせて書き出しをされる。