function.phpなどに下記のように曜日によって違うorderbyを投げるというテク。色々と考えたけど意外とこれがいいのではないかと。ASCとDESCを入れ替えるだけでも結構違いますし。randを投げるとさすがに毎回違いすぎますし。
function get_orderby(){ $orderbys = array( array('order' => '', 'orderby' => 'date'), array('order' => '', 'orderby' => 'menu_order'), array('order' => 'DESC', 'orderby' => 'modified'), array('order' => '', 'orderby' => 'title'), array('order' => '', 'orderby' => 'none'), array('order' => '', 'orderby' => 'ID'), array('order' => 'ASC', 'orderby' => 'modified'), ); return $orderbys[date('w')]; }
使い方は簡単。
$orderby = get_orderby(); $args = array( 'post_type' => 'page', 'numberposts' => -1, 'order' => $orderby['order'], 'orderby' => $orderby['orderby'], 'posts_per_page' => 12 ); $child_posts = get_posts( $args );
みたいな感じで。