我无法正确加载帖子的子帖子

时间:2013-11-10 16:26:44

标签: php wordpress wordpress-plugin custom-post-type

我是PHP和WordPress的新手。

我正在使用Types插件来创建我的自定义类型(here处的更多信息)。

这是我的代码:

    <?php
        $args = array('post_type' => 'project-list');
        $myposts = get_posts( $args );
        foreach ( $myposts as $post ) : 
    ?>
    <span><?php echo $post -> post_title; ?></span>
    <ul class="project-list">
        <?php
            $argsChild = array('orderby' => 'post-order', 'order' => 'ASC');
            $mypostsChild = types_child_posts('project', $argsChild);
            foreach ( $mypostsChild as $postChild ) :
        ?>
        <li>
            <p class="project-cost"><?php echo $postChild -> post_title; ?></p>
            <span class="project-name"><?php echo $postChild -> fields['project-name']; ?></span>
            <hr />
            <p class="project-type"><?php echo $postChild -> fields['project-type']; ?></p>
            <hr />
            <span class="project-location"><?php echo $postChild -> fields['project-location']; ?></span>
        </li>
        <?php endforeach; ?>

    </ul>
    <?php endforeach; ?>

我的期望: 我需要按类型加载项目列表。例如,我需要最终输出看起来像这样。

项目组名称-1

PROJ-1

PROJ-2

PROJ-3

项目组名称-2

PROJ-1

PROJ-2

PROJ-3


我在这里遇到两个问题:

1:我不知道在哪里放置父帖子“ID”,这段代码现在渲染了所有项目列表中的所有项目。我需要为每个项目列表单独加载项目(如上所述)。

问:我怎么能这样做?

2:我无法按照他们的订单(自定义字段类型)对帖子进行排序。因此,我注意到代码的以下部分无法正常工作。

$argsChild = array('orderby' => 'post-order', 'order' => 'ASC');

问:我如何根据自定义字段类型对子帖子进行排序,在我的情况下是“后期订单”?

谢谢你们!

1 个答案:

答案 0 :(得分:1)

帖子没有任何父母或子女。帖子是在类别下创建的。您应该在类别下创建一些类别和子类别。即。

类别:项目组名称-1
- SUBCATEGORY:pro 1
- SUBCATEGORY:pro 2

CAT:项目组名称-2
- SUBCATEGORY:pro 1
- SUBCATEGORY:pro 2

此外,您已创建自定义帖子类型。根据您的规范,有很多方法可以检索自定义帖子类型的条款。但是,请尝试使用以下代码来理解:

<?php
//list terms in a given taxonomy
$taxonomy = 'project-list';
$tax_terms = get_terms($taxonomy);
?>
<ul>
<?php
foreach ($tax_terms as $tax_term) {
 echo '<li>' . '<a href="' . esc_attr(get_term_link($tax_term, $taxonomy)) . '"     title="' . sprintf( __( "View all posts in %s" ), $tax_term->name ) . '" ' . '>' .   $tax_term->name.'</a></li>';
}
?>
</ul>

详细了解custom post typetermstaxonomy。阅读此链接,您将获得更多与您的需求相关的代码。这些都会对你有所帮助。

仅供参考:页面有父页面或子页面