我正在建立一个演员/电影网站,但有一件事我被卡住了。我有好几页关于演员的传记(特写图片、姓名、关于、出生日期等),还有一个菜单,上面有“演员”选项。我想创建一个名为“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_posts
和get_pages
内部使用。结束