2014-03-06 42 views
0

全部。将模板应用于从Wordpress循环加载的页面

将以下问题有没有办法在一个单页的主题加载时加载页面编辑器指定的自定义模板WordPress的“页面属性”的页面?

我建立自定义的WordPress的主题,其中客户端可以链接到将包含所有关于某个艺术家的信息(在这种情况下,不同的波段)与一个后端管理多个艺术家的页面。因此,如果客户想要发送他的联系人以查找有关乐队“酒吧”的信息,并附上生物,音乐,视频等,则他会发送链接到“www.foo.com/bar”,其中好然后加载在所有的“酒吧”页面的子页面的(生物,音乐,视频等)

我使用的是每个艺术家页面自定义模板,并建立了一个循环让孩子页面在网站上显示,就像是一个类别页面。 (使用新的WP_Query和'post_type':'page')。难度在于获取加载到单页网站上的每个子页面的自定义模板。我需要这个的原因是因为“音乐”需要一个音乐播放器的小部件空间,例如,“Bios”是WISIWYG。

模板已被锁定在,我只需要通过循环时会加载每个岗位的模板的方法。直接查看页面时,页面模板可以正常工作,但是当页面在循环中加载时,该模板将被忽略。

让我知道你是否需要任何代码。这更像是一个概念性问题,代码会变得复杂。

回答

0

不太肯定你是问什么,但wp_query是一个数据库查询。它将内容加载到单个模板中,例如,如果您将子页面加载到模板中,则需要一种方法来处理此问题,例如自定义发布模板(single-custom_post)。使用页面可以在保存时分配一个模板,并且该循环将拉取数据库字段。

你可以存储在后(或页面)元的模板,如果你想变的内容拉进它这一点,并加载内容。例如

$videohtml= "<div class="video"> echo "<iframe width="420" height="315" src="<php echo $video; ?>" frameborder="0" allowfullscreen></iframe>" 
    update_post_meta($postid, "videohtml", $videohtml); 

    if ($video) { 
    $template=get_post_meta($postid, "videohtml", true); 
    echo $template; 
    } 

或更先进,使用get_template_part()(请参阅本抄本)