【问题标题】:Wordpress : Php Break after function?Wordpress:函数后PHP中断?
【发布时间】:2014-02-07 08:33:40
【问题描述】:

所以我有这个只回显父子链接:

<div class="row-fluid">
<ul class="nav nav-list submenu">

<?
    $child_pages = $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE post_parent = ".$post->ID." AND post_type = 'page' ORDER BY menu_order", 'OBJECT');
    if ( $child_pages ) :
    foreach ( $child_pages as $pageChild ) :
    setup_postdata( $pageChild );
?>

<a href="<?= get_permalink($pageChild->ID) ?>" rel="bookmark">
<li class="subnav"><?= $pageChild->post_title?>     </li>
</a>

<?
    endforeach;
    endif;
?> 
</ul></div>

那么这就是问题所在。所以。

我有这个来回显页面内容

<?php the_content(); ?>

并将最后一个子内容回显到内容区域。 我该怎么做才能获得链接,并获得应该去哪里的内容?

【问题讨论】:

    标签: php wordpress navigation parent-child


    【解决方案1】:

    the_content 是一个函数,它假设有一个全局变量 $post 设置为您需要的任何值。默认情况下,wordpress 使用当前页面/帖子的内容对其进行实例化。

    setup_postdata 会覆盖全局 $post 变量,以便您下次调用 get_permalink 时会自动引用 $pageChild。但是现在the_content 做了同样的事情,所以你需要以某种方式将$post 重置为调用setup_postdata 之前的任何值。

    幸运的是,您需要调用一个名为 wp_reset_postdatafunction,它正是这样做的,所以 the_content 的输出是正确的(指的是原始的 $post)。

    【讨论】:

    • 谢谢!正是我需要的!
    猜你喜欢
    • 1970-01-01
    • 2015-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-07
    • 2021-08-04
    • 1970-01-01
    相关资源
    最近更新 更多