【问题标题】:Sidebar for specific Page in self-made wordpress theme自制wordpress主题中特定页面的侧边栏
【发布时间】:2013-09-02 14:38:23
【问题描述】:

我正在研究由某人自行设计的主题。主题默认有右侧边栏。

我为视频页面 page-videos.php 制作了一个新模板,并在那里调用了 2 个侧边栏(左侧和右侧)。

视频页面显示视频帖子的摘录。视频帖模板文件为tpl-video.php

视频页面调用视频帖子的模板,如: while ( have_posts() ) : the_post(); { get_template_part('tpl-video');

视频帖子模板不调用侧边栏,只有内容编码, 模板开头:<?php if( is_single() ) { ?> 模板结尾:<?php } ?>

现在我想调用我为视频页面制作的相同布局或侧边栏视频帖子模板。

但结果是默认和视频页面模板的混合意味着那里有 3 个侧边栏,2 个右侧和 1 个左侧。

当我将“tpl-video.php”模板设为默认模板“page.php”时,它会更改视频页面上的设置, 可能是由于page-videos.php 中的这一行: while ( have_posts() ) : the_post(); { get_template_part('tpl-video');

请任何人指导我通过tpl-video.php在视频帖子页面中添加左侧边栏而不打扰其他任何事情的解决方案。

【问题讨论】:

  • 问题是什么?

标签: php wordpress templates if-statement sidebar


【解决方案1】:

不看主题的实际代码就很难回答。 但是按照你所说的“主题默认有右侧边栏”。然后你说“并在那里调用2个侧边栏(左右)。”然后指出它有 3 个侧边栏,这是默认的右侧边栏,您添加的左右两侧看起来默认侧边栏正在妨碍您。

查看默认侧边栏的调用位置,并根据您的模板调用将其设为 if 语句

或者,如果您只想要 1 个右侧边栏,则不应将其添加到视频模板中,而只添加左侧边栏,因为默认情况下右侧边栏在那里

HtH 埃德温

【讨论】:

【解决方案2】:

我不确定我是否正确理解了您的问题,但如果您需要向特定模板添加侧边栏,您可以先检查侧边栏是否处于活动状态,然后将其加载到您想要的任何模板中。如果对于单个帖子,您可能会执行以下操作:

if( is_single() ) {    
    if ( is_active_sidebar( 'SIDEBAR_ID' ) )
         dynamic_sidebar( 'SIDEBAR_ID' );
}

如果我不理解您的问题,请告诉我。

【讨论】:

  • 请访问测试页面并查看上面的帖子。 fruityim.com/testing/videos
  • 我不知道你想让我看什么。你能比“检查这个页面”更具体吗???
【解决方案3】:

请访问测试页面并查看其上的帖子。 fruityim.com/testing/videos

这是主视频页面,其中的链接是具有不同模板的视频帖子。喜欢在帖子上应用页面模板而不影响页面的外观。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-07
    相关资源
    最近更新 更多