はじめまして!
一昨日、こちらのサイトで質問させて頂いてから
プログラムの動作を確認することが出来ました。
Wordpress記事をユーザー登録を行った日から経過した日数に応じて可変させたい
まだ一点問題があるため、改めて質問させてください。
古い記事の順番でユーザー登録日数に応じて表示させたいのですが、
下のソースだと人気記事の順番で表示されてしまいます。
■コードを入れて動作が確認できたワードプレス内のソース
lang
1<div id="popular_post_content" class="front-loop"> 2 3<h2><i class="fa fa-flag"></i> 人気のある記事</h2> 4<div class="wrap"> 5<div class="front-loop-cont"> 6<?php 7$i = 1; 8if ( have_posts() ) : 9// wp_reset_query(); 10 11 12$current_user = wp_get_current_user(); 13 14$time1 = strtotime($current_user->user_registered); 15 16//$time1 = date("Y/m/d H:i:s", strtotime('-1 day')); 17 18$time2 = strtotime(date('Y/m/d H:i:s')); 19 20$seconddiff = abs($time2 - $time1); 21 22$diff = $seconddiff / (60*60*24); 23 24$daydiff = floor($diff) *2; 25 26 27$args=array( 28'meta_query'=> 29array( 30array( 'key'=>'bzb_show_toppage_flag', 31'compare' => 'NOT EXISTS' 32), 33array( 'key'=>'bzb_show_toppage_flag', 34'value'=>'none', 35'compare'=>'!=' 36), 37'relation'=>'OR' 38), 39'showposts'=>$daydiff, 40'meta_key'=>'views', 41'orderby'=>'meta_value_num', 42'order'=>'DESC' 43); 44query_posts($args); 45// query_posts('showposts=5&meta_key=views&orderby=meta_value_num&order=DESC'); 46while ( have_posts() ) : the_post(); 47 48$cf = get_post_meta($post->ID); 49$rank_class = 'popular_post_box rank-'.$i; 50// print_r($cf); 51?>
そこで下のようなソースにしてみると
記事が1ページだけ表示されてしまいました。
■以下ワードプレス内のソース
lang
1<div id="recent_post_content" class="front-loop"> 2 3<h2><i class="fa fa-clock-o"></i> 最近の投稿</h2> 4<div class="wrap"> 5<div class="front-loop-cont"> 6<?php 7$i = 1; 8 9if ( have_posts() ) : 10 11$current_user = wp_get_current_user(); 12 13$time1 = strtotime($current_user->user_registered); 14 15$time2 = strtotime(date('Y/m/d H:i:s')); 16 17$seconddiff = abs($time2 - $time1); 18 19$diff = $seconddiff / (60*60*24); 20 21$daydiff = floor($diff) *2; 22 23query_posts('showposts=$daydiff'); 24while ( have_posts() ) : the_post(); 25 26$cf = get_post_meta($post->ID); 27$recent_class = 'popular_post_box recent-'.$i; 28?>
また、記事を古い順番で表示させたいので、
while ( have_posts() ) : the_post();の上に
query_posts($query_string. '&order=ASC');と
コードを入れたところ、記事の表示は順逆になりましたが
登録日数にかかわらず記事が全て表示されてしまいました。
■今現在の不明点
・更新日時が古い順番で記事を表示させる方法
・完成したコードをどこに入れればいいか
■使っているワードプレステーマ
XEORY EXTENSION
■参考サイト
ワードプレスフォーラム 「質問」古い記事を上にする方法はありますか?
【WordPress】Xeoryのテーマをちょこっとだけカスタマイズする!前編
おかげさまでようやく完成に近づくことができました。
またご教授して頂ければ幸いです。
よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/26 09:16