Wordpress按字母顺序列出子页面

| 我有一个包含约200个子页面的父页面。在父页面的模板中,我希望一个查询具有以下列表。我想显示以该字母开头的每组单词的第一个字母。如果列表中未显示字母,则不应显示。 一种 阿尔伯特 艾伦 阿曼达 乙 法案 鲍勃 布鲁诺 C 查尔斯 克里斯汀 等等....     
已邀请:
我的答案对您来说来晚了,但也许有人会觉得有用。我需要同样的东西,所以我不得不写这个模板:
<?php
/*
Template Name: Alphabetic
*/
?>


<?php get_header(); ?>
<div class=\"container\">

    <div id=\"content\" role=\"main\">
    <h2 class=\"entry-title\"><?php the_title(); ?></h2>                              
        <?php

        $my_wp_query = new WP_Query();
        $all_wp_pages = $my_wp_query->query(array(\'post_type\' => \'page\'));

        $children = get_page_children($post->ID, $all_wp_pages);

        $letter=\"\";
        foreach ($children as $child)
        {
            $first_letter=substr($child->post_title,0,1);
            if($letter != $first_letter)
            {
                $alphabetic[]->post_title=$first_letter;
                $letter=$first_letter;
            }
            $alphabetic[]=$child;
        }

        ?>

        <table style=\"border:none;\">
            <tr>

            <?php

            $col = 4; //how many columns

            for($i = 0; $i < $col; $i++) {

                echo \'<td style=\"border:none;\">\';

                    $nr = (int)(sizeof($alphabetic)/4);
                    $i == $col - 1 ? $end = sizeof($alphabetic) : $end = $nr*($i+1);

                    for($j = $nr*$i; $j < $end; $j++) {
                        if(strlen($alphabetic[$j]->post_title)==1)
                            echo \'<b>\', $alphabetic[$j]->post_title, \'</b><br />\';
                        else
                            echo \'<a href=\"\'.get_permalink($alphabetic[$j]->ID).\'\">\'.$alphabetic[$j]->post_title.\'</a><br />\';
                    }

                echo \'</td>\';

            } ?>

            </tr>
        </table>

    </div><!-- #content -->
</div><!-- #container -->

<?php get_sidebar(); ?>
<?php get_footer(); ?>
    

要回复问题请先登录注册