首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态边条条件

问动态边条条件
EN

WordPress Development用户
提问于 2013-07-25 21:20:30
回答 1查看 1.5K关注 0票数 0

编辑

答案在这里找到:是_活动的_侧栏()总是返回False

按用户:s_ha_dum

我动态地创建侧边栏,并为每个顶级页面注册它们:

每个顶级页面的动态注册侧边栏

问题是,我想测试该页面是否不存在侧边栏,以便使用默认值:

代码语言:javascript
复制
if(is_dynamic_sidebar(get_the_title()))
                    dynamic_sidebar(get_the_title());
                else
                    dynamic_sidebar('Default');

我试过测试

if(is_dynamic_sidebar(get_the_title()) && dynamic_sidebar(get_the_title()),但由于某种原因,这只会重复侧边栏内容两次。我也试过:

if(is_dynamic_sidebar(get_the_title()) && is_active_sidebar(get_the_title()),但这只是删除了我的所有侧边栏,或者如果我将&&更改为||,它将正常显示,除非使用默认。因此,在我的子页面上,它几乎没有使用侧栏。有人对我能做什么有什么建议吗?

感谢@Ravs更新代码

代码语言:javascript
复制
if(!is_active_sidebar(get_the_title()))
    dynamic_sidebar(get_the_title());
else 
    dynamic_sidebar('Default');
EN

回答 1

WordPress Development用户

发布于 2013-07-27 16:29:31

由于父页上有特定的侧栏,子页上有默认的侧栏,所以您的条件可能是(我假设您在wordpress循环中)。

  1. 检查页、父页或子页。
  2. 如果当前页是父页,请检查边栏小部件区域是否存在页。

如果找到并调用了dynamic_sidebar小部件侧栏,则返回True。如果找不到或没有调用,则为False。

代码语言:javascript
复制
    if($post->post_parent == 0 ){ // if page is a parent page
      if(dynamic_sidebar(get_the_title()) && is_active_sidebar(get_the_title()))
         dynamic_sidebar(get_the_title());
      else 
         dynamic_sidebar('Default');
    }
    else{ // if page is a sub page
      dynamic_sidebar('Default');
    }
票数 1
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/107843

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档