このエントリーをはてなブックマークに追加

グループは見出し+表示順+内容で、表示順の数字順にソートし、同じ数字ごとに括って
見出し1
 内容
 内容
見出し2
 内容
 内容
 内容
のように表示。

<?php
$groups = get_group('group'); 
$new_order = array();
if (is_array($groups)) {
foreach($groups as $group){
  $new_order[$group['group_id'][1]][] = $group;
}
ksort($new_order);
$no = false;
foreach($new_order as $order){
  foreach($order as $order_group){ ?>
<?php if( $no != $order_group['group_id'][1]) : ?>
            <div>
<?php if ( $no !== false ) : ?>
	    </ul></div><div>
<?php endif; ?>
            <h2><?php echo $order_group['group_title'][1]; ?></h2><ul>
<?php endif; ?>
            <li><?php echo $order_group['group_text'][1]; ?></li>
<?php $no = $order_group['group_id'][1]; ?>
<?php }} ?>
	    </ul></div>
<?php }else{ ?>
<?php } ?> 

グループを取得してgroup_id のフィールド値(数字)で並べ替えてksort(昇順)、group_id のフィールド値を$no として比較し、見出しと閉じタグを出す。
ソートするだけなら

<?php
$groups = get_group('group'); 
$new_order = array();
if (is_array($groups)) {
foreach($groups as $group){
  $new_order[$group['group_id'][1]][] = $group;
}
ksort($new_order);
foreach($new_order as $order){
  foreach($order as $order_group){ ?>
            ~
<?php }} ?>
<?php }else{ ?>
<?php } ?>

2012.11.04 投稿 2015.04.05 更新

新しい情報を追記している場合はありますが、古い情報の修正はしていません。投稿日・文中の日付を参照してください。

Recent Articles