Sharepoint MOSS 2007导航选项/设置

Sharepoint MOSS 2007导航选项/设置,sharepoint,moss2007enterprisesearch,Sharepoint,Moss2007enterprisesearch,我有一个子网站,我已将“全局导航”设置更改为 "Display the navigation items below the current site" 这是正确的。然后我需要“添加链接”这是一个指向根网站的链接,基本上是“/Pages/Default.asp” 我单击确定,没有错误,但链接不会显示,当我返回导航设置时,链接不再存在 这在根web导航中工作得很好 有什么想法吗?真奇怪。我刚刚测试了你的场景,它对我有效。在检查“显示当前站点设置下的导航项目”后,我在全局导航顶级文件夹下添加了一个

我有一个子网站,我已将“全局导航”设置更改为

"Display the navigation items below the current site"
这是正确的。然后我需要“添加链接”这是一个指向根网站的链接,基本上是“/Pages/Default.asp”

我单击确定,没有错误,但链接不会显示,当我返回导航设置时,链接不再存在

这在根web导航中工作得很好


有什么想法吗?

真奇怪。我刚刚测试了你的场景,它对我有效。在检查“显示当前站点设置下的导航项目”后,我在全局导航顶级文件夹下添加了一个“David Button”链接。该链接出现,一旦我返回到导航设置,它仍然存在


也许你启用了缓存

如果已打开缓存,则可能需要刷新此设置(检查每个链接的安全设置是一项昂贵的操作)

下面的链接告诉您如何: -配置对象缓存 -刷新对象缓存或基于磁盘的缓存


经过进一步的研究,我在自定义的最小发布站点定义onet.xml中发现了一个导致问题的bug。元素中有一个输入错误

<NavBars>
   <narbar Name="SharePointTop Navbar" ID="1002" />
<NavBars>

“narbar”应该是“navbar”。当我修复它时,任何新创建的子站点都没有这个问题。我现在能够为这些新的子站点排序/编辑导航项

为了修复已经创建的子站点,我必须更新content db中的NavNodes表。我发现一个论坛帖子帮助我:

我不得不修改上面论坛帖子中的t-sql语句,为NavNodes表中的每个子站点添加“快速启动”行。下次用户试图修改子站点的导航排序/编辑时,更改将被保存。

对我有效:

INSERT INTO 
NavNodes 

([SiteId] ,
[WebId] ,
[Eid] ,
[EidParent] ,
[NumChildren] ,
[RankChild] ,
[ElementType] ,
[Url] ,
[DocId] ,
[Name] ,
[DateLastModified] ,
[NodeMetainfo] , [NonNavPage] ,[NavSequence] ,[ChildOfSequence])

SELECT DISTINCT
SiteId, WebId ,1002 ,0 ,0 ,1 ,1 ,'' ,NULL ,'SharePoint Top Navbar' ,getdate() ,NULL ,0 ,1 ,0 
FROM NavNodes 
WHERE WebId NOT IN (
  SELECT WebId 
  FROM NavNodes
  WHERE Eid = 1002)