2
我有一個包含約200個構成詞典的子頁面的父頁面。在父頁面的模板中,我希望查詢允許以下列表。我想顯示以該字母開頭的每一組單詞的第一個字母。如果一個字母不在列表中,它不應該顯示。按字母順序排列子頁面
甲
阿爾伯特
艾倫
阿曼達
乙
比爾
鮑勃
布魯諾
Ç
查爾斯
恭
等等....
我有一個包含約200個構成詞典的子頁面的父頁面。在父頁面的模板中,我希望查詢允許以下列表。我想顯示以該字母開頭的每一組單詞的第一個字母。如果一個字母不在列表中,它不應該顯示。按字母順序排列子頁面
甲
阿爾伯特
艾倫
阿曼達
乙
比爾
鮑勃
布魯諾
Ç
查爾斯
恭
等等....
我的回答來得晚了你,但也許有人會發現它很有用。我需要相同的東西,所以我不得不寫這個模板:
<?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(); ?>