页面内的页面(带有缩略图)

时间:2014-07-11 作者:Renato Augusto

我正在建立一个演员/电影网站,但有一件事我被卡住了。我有好几页关于演员的传记(特写图片、姓名、关于、出生日期等),还有一个菜单,上面有“演员”选项。我想创建一个名为“actors”的页面,可以使用分页循环所有actors页面,将它们组织在一列、两列或三列以及五到十行中。我已经搜索了一个插件/小部件来实现这一点,但我并不幸运。这里有人能帮我吗?

2 个回复
最合适的回答,由SO网友:Romain 整理而成

如果我理解,您需要创建一个模板,在一个模板上列出所有页面(参与者)。

如果是这种情况,则需要创建actor归档模板,以便:

添加一个可以列出所有参与者的页面,页面模板保持不变,因此,需要创建的模板是归档参与者。php

然后,在此模板上,您需要自定义查询以在整个页面中循环并显示页面内容(链接、缩略图等)

您可以使用以下代码:

$pages = get_pages(); 
foreach ($pages as $page_data) {
    $content = apply_filters(\'the_content\', $page_data->post_content); 
    $title = $page_data->post_title; 
    echo $content; 
}
否则,有关更多高级选项,请使用Wp\\u query with post\\u type=page。

希望这有帮助。

注意:我永远不会为演员创建页面。最好的解决方案是使用自定义的post类型actors。这将允许您创建自定义分类法,并能够搜索参与者和添加许多漂亮的功能(CMS漂亮且干净,能够使用分类法+CPT wp模板)

SO网友:Tom J Nowell

是否要查询当前网站上的页面?WP_Query 是你的朋友!

先告诉它我们想要什么

$args = array(
    \'post_type\' => \'page\'
);
然后创建查询

$query = new WP_Query( $args );
现在检查是否找到任何页面

if ( $query->have_posts() ) {
如果有,请执行标准posts循环:

    while( $query->have_posts() ) {
        $query->the_post();
        // display the page as you see fit
        the_title();
        the_content();
    }
然后自己打扫干净:

    wp_reset_postdata();
如果找不到任何页面,请在else位输入消息:

} else {
    // there are no pages?!
}
它应该看起来非常类似于标准的主回路。这是什么get_postsget_pages 内部使用。

结束

相关推荐

is_active-sidebar loop

因此,我有4个小部件,它们位于大3列中,当它们不活动时,我会放置一个占位符作为用户指南,以便用户知道在哪里放置什么。我确实成功地计算出了is\\u active,但它原来是一个很长的代码,我想知道是否有办法缩短它。从available-course-list-1到-4的小部件<?php if ( is_active_sidebar( \'available-course-list-1\' ) ) : ?> <div class=\"large-3 medium-3 col