うさぎのイラスト

ネットアンサー55備忘録

web技術を書いていきます

ニュース記事の作成

-2015年12月13日-
まずこの記述があるか確認
<?php if(have_posts()): while(have_posts()): the_post();?>

<?php endwhile; endif; 
wp_reset_query();?>

dl,dt,ddの場合の記述です。
							<?php $rows = get_field('ニュース'); //repeaterの読み込み 
							 if($rows):
							//$rows = array_reverse($rows);//リバース配列関数にて表示順番を反転させる
							foreach($rows as $row){//各情報を1セットずつ表示
							$date = DateTime::createFromFormat('Ymd', $row["日付"]);
							$naiyou=$row['ニューステキスト'];
							$linkurl=$row['ニュースリンクurl'];
							$gaibu=$row['外部リンク'];
							//次のrepeatのために各変数はリセットする
										if($linkurl){ 
											if($gaibu){ 
											?><dl>
												<dt><a href="<?php echo $linkurl; ?>"><?php echo $date->format('Y年m月d日'); ?></a></dt>
												<dd><?php add_new($date->format('U'),'7') ?><a href="<?php echo $linkurl; ?>" target="_blank"><?php echo $naiyou; ?></a></dd>
											</dl>
											<?php }else{ ?>
											<dl>
												<dt><a href="<?php echo $linkurl; ?>"><?php echo $date->format('Y年m月d日'); ?></a></dt>
												<dd><?php add_new($date->format('U'),'7') ?><a href="<?php echo $linkurl; ?>"><?php echo $naiyou; ?></a></dd>
											</dl>
											<?php } ?>																										
										<?php }else{ ?>
										<dl>
											<dt><?php echo $date->format('Y年m月d日'); ?></dt>
											<dd><?php add_new($date->format('U'),'7') ?><?php echo $naiyou; ?></dd>
										</dl>
										<?php } 												
							$date="";
							$naiyou="";
							$linkurl="";
							$gaibu="";
							}  //foreach終了 ?>
						<?php endif; ?>
newを表現したいときは下記を書きこもう。いらない場合は
<?php add_new($date->format('U'),'7') ?>
の部分を削除。
//NEWマーク
function add_new($date,$days){
    $today = date_i18n('U');
    $elapsed = date('U',($today - $date)) / 86400;
    if( $days > $elapsed ){
        echo '<span>NEW</span>';
    }
}