在wordpress中动态调用另一页面中的页面内容

时间:2013-10-29 09:26:02

标签: php wordpress loops

我正在尝试做一些非常有特色的事情,我对PHP并不是那么好。

我正在为足球队制作一些网站。我想有一个名为RESULTS的主页。我将在整个赛季举行10轮(每轮都有单独的页面)。我已根据日期制作灯具和一切。

我的问题是如何调用特定页面,例如今天是29.10.2013,我的第3轮刚刚结束,我在“第3轮”页面上填写了我的所有结果,我希望这些内容显示在页面“结果”也。

比下周04.11.2013它即将到来我的第四轮,我也将填写我的“第四轮”页面上的所有内容,但我现在只想要所有这些都在“结果”页面,因为现在这是活跃的第三轮。

我猜我需要为我的“结果”页面制作模板,但我只需要代码,如何根据日期调用特定的ID页面。 (2013年10月29日呼叫页面ID 54; 04.11.2013呼叫页面ID 55)。 我希望我解释得很好,并希望有人在这方面做得很好。 提前谢谢!

3 个答案:

答案 0 :(得分:0)

如果您想获取特定页面的数据,可以使用“get_posts”

http://codex.wordpress.org/Template_Tags/get_posts

在您的页面模板中添加类似这样的内容

<ul>
<?php
$args = array( 'posts_per_page' => -1,
               'post_type' => 'page', 
               'include'=> $THE_PAGE_ID 
        );

$myposts = get_posts( $args );
foreach ( $myposts as $post ) : 
    setup_postdata( $post ); 
?>
    <li>
        <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
    </li>
<?php 
endforeach; 
wp_reset_postdata();
?>

</ul>

或使用“get_post”:

http://codex.wordpress.org/Function_Reference/get_post

<?php 
$thepost = get_post($THE_PAGE_ID, ARRAY_A);
$title = $thepost['post_title'];
echo $title;
?>

希望这就是你所追求的目标。

答案 1 :(得分:0)

非常感谢您的回复,我发现您对此非常满意。我确实喜欢你告诉我,我在“结果”页面上找到了链接页面。

因此可以稍微改变一下将要检查日期的代码。例如:

检查日期,

如果日期是29.10.2013-&gt;页面ID = 2的呼叫内容(不是链接)

如果日期是30.10.2013-&gt;呼叫内容页面ID = 3

如果日期是31.10.2013-&gt;呼叫内容页面ID = 4

我会自己做,但我和你一样对此并不是很好。很抱歉无聊但我真的需要学习这些东西。

答案 2 :(得分:0)

这可能不是最优雅的答案,但应该有效

<?php 
    switch(date('d.m.Y'))
    {
        case '29.10.2013':
            $THE_PAGE_ID = 1;
        break;
        case '29.10.2013':
            $THE_PAGE_ID = 2;
        break;
        case '29.10.2013':
            $THE_PAGE_ID = 3;
        break;
        default:
            $THE_PAGE_ID = 4; // page if the date does not match
    }

    $args = array( 'posts_per_page' => -1,
           'post_type' => 'page', 
           'include'=> $THE_PAGE_ID 
    );

    $myposts = get_posts( $args );
    foreach ( $myposts as $post ) : 
        setup_postdata( $post ); 
?>
    <h1><?php the_title(); ?></h1>
    <div id="page-content">
        <?php the_content(); ?>
    </div>
<?php 
    endforeach; 
    wp_reset_postdata();
?>