内容查询 Web 部件在没有 Web 部件区域的情况下不显示
Posted
技术标签:
【中文标题】内容查询 Web 部件在没有 Web 部件区域的情况下不显示【英文标题】:Content Query Web Part not displaying without web part zone 【发布时间】:2010-12-04 20:16:00 【问题描述】:我正在为客户构建一个 Sharepoint WCM 站点。
作为页面布局的一部分,我直接在页面中插入了一个内容查询 Web 部件,而不是在 Web 部件区域中(因此用户无法对其进行编辑)。在我的开发环境中一切正常,但是当我将其部署到生产环境时,Web 部件会说“没有返回任何项目”。
当我进入功能目录并更改页面布局以包含 webpart 区域包装器时,它解决了问题,但是我真的不希望它有 web 部件区域。我的开发环境是 Windows 2003,但生产站点是 Windows 2008。
谁能解释为什么它可能不起作用?
谢谢【问题讨论】:
【参考方案1】:一个快速的想法是,您可以在 SharePoint Designer 中右键单击 WebPart 区域并取消选中允许用户操作它的选项。
您将在页面中拥有一个 web 部件,就像它在 WP 区域之外一样“锁定”。
编辑
WebPartPages:WebPartZone 标签中的参数:
allowlayoutchange="false"
allowpersonalization="false"
allowcustomization="false"
【讨论】:
【参考方案2】:这可能不是您的问题,但请记住,如果您将 CQWP 直接嵌入到 PageLayout 中,则它无权访问 SPContext.Current(即 Web 部件不知道它在哪里站点层次结构),因此它将默认返回站点集中的所有内容。 (在这种情况下,它似乎会返回所有内容,而不是什么都没有。)如果这确实与您的问题有关,这里有一篇解释解决方法的帖子:
http://suguk.org/blogs/sharepointhack/archive/2008/09/17/13785.aspx
【讨论】:
以上是关于内容查询 Web 部件在没有 Web 部件区域的情况下不显示的主要内容,如果未能解决你的问题,请参考以下文章
如果 Kentico 宏不包含 Web 部件,则隐藏小部件区域/Web 部件区域
Web 部件区域标题在 ASP.NET 中显示 Untitled[0]
如何将Web部件区域添加到SharePoint Wiki页面?
Sharepoint 2010 内容按查询 Web 部件(ddwrt:格式日期)