Php 为什么我的自定义wordpress循环行为怪异?

Php 为什么我的自定义wordpress循环行为怪异?,php,wordpress,list,loops,themes,Php,Wordpress,List,Loops,Themes,我制作了一个自定义主题和一些自定义页面模板。 其中两个模板具有相同的循环。它们都列出父页面的子页面。 不知何故,在5个子页面之后,循环决定制造混乱,并将最后两个子页面放在彼此内部 它会打断页脚并在不应该插入的地方插入代码。 其结果可参见@ 我知道我还不是最好的程序员。 发生了什么事 <div id="parent_top_content"> <?php if (have_posts()) : while (have_posts()) : the_post(); ?> &l

我制作了一个自定义主题和一些自定义页面模板。 其中两个模板具有相同的循环。它们都列出父页面的子页面。 不知何故,在5个子页面之后,循环决定制造混乱,并将最后两个子页面放在彼此内部

它会打断页脚并在不应该插入的地方插入代码。 其结果可参见@

我知道我还不是最好的程序员。 发生了什么事

<div id="parent_top_content">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php the_content(__('Read more'));?>
<?php endwhile; else: ?>
<?php endif; ?>
<?php wp_reset_query(); ?>
</div>
<div id="parent_content_wrapper">
<?php
$pageChildren = get_pages('sort_column=menu_order&hierarchical=0&child_of='.$post->ID);
if ( $pageChildren ) {
foreach ( $pageChildren as $pageChild ) {
echo '<a class="parent_list_link" href="'. get_permalink($pageChild->ID) .'"><div   class="parent_list_element"><div class="parent_list_thumb">' . get_the_post_thumbnail($pageChild->ID, 'thumbnail') . '</div><div class="parent_list_inner"><h3 class="parent_list_title">' . $pageChild->post_title.'</h3>';
if (!empty($pageChild->post_excerpt)){
echo '<p class="parent_list_excerpt">' . $pageChild->post_excerpt.'</p></div><span id="clear">&nbsp;</span></div></a>';
}
}
}
?>
<?php wp_reset_query(); ?>
</div>

您正在打开所有子页面的链接,但只有在子页面有摘录时才关闭链接,从而导致无效的html。看


尝试修复该错误(以及其他html错误),看看是否有帮助。

好消息;很乐意帮忙。当然,如果你有另一篇没有摘录的文章,这个问题还会再次发生。我认为要解决根本问题,请更改代码,使
if
语句只关闭它打开的标记(仅关闭
),并关闭
if
后面的其余标记(您的
div
a
)。这是本书中提到的“先完成后开始”的原则;如果你想成为一名更好的程序员,绝对值得一读。