gpt4 book ai didi

asp.net - 面包屑 SiteMapPath 和 SEO 友好的路由

转载 作者:行者123 更新时间:2023-12-02 16:04:22 25 4
gpt4 key购买 nike

我的路由设置如下:

void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute("", "Home", "~/Default.aspx");
......
}

我正在使用 SiteMapPath 控件实现面包屑:

<asp:SiteMapPath ID="SiteMapPath1" CssClass="breadCrumbs" runat="server">
</asp:SiteMapPath>

Web.sitemap 设置如下:

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="Home" title="Home" description="Home">
<siteMapNode url="~/About" title="About" description="About">
<siteMapNode url="~/History" title="History"
description="History" />
</siteMapNode>
</siteMapNode>
</siteMap>

我的问题是,当我导航到 mysite.com 而不是 mysite.com/default.aspx 时,主页面包屑节点不会出现。我错过了什么?

更新

我设法通过更新 Web.sitemap 来显示“Home”节点,如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="Home" title="Home" description="Home">
<siteMapNode url="~/Default.aspx" title="" description="" />
<siteMapNode url="~/About" title="About" description="About">
<siteMapNode url="~/History" title="History"
description="History" />
</siteMapNode>
</siteMapNode>
</siteMap>

唯一剩下的问题是路径分隔符仍然显示在 mysite.com 的主页上

有没有办法以编程方式使分隔符对于主页不可见? SiteMapPath 控件本身位于母版页中。

enter image description here

最佳答案

也许您应该按如下方式更改站点地图文件:

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="~/" title="Global Site Name or Welcome Message" description="Home">
<siteMapNode url="~/Home" title="Home" description="" />
<siteMapNode url="~/About" title="About" description="About">
<siteMapNode url="~/History" title="History"
description="History" />
</siteMapNode>
</siteMapNode>
</siteMap>

并且从站点地图数据源中,您应该设置ShowStartingNode="false",我认为这可以同时解决您的两个问题......

注意:当然,这需要您在 global.asax 文件 (VB) 中进行此更改:

RouteTable.Routes.MapPageRoute("Home0", "", "~/Default.aspx", True)
RouteTable.Routes.MapPageRoute("Home1", "Home", "~/Default.aspx", True)

希望这有帮助...

关于asp.net - 面包屑 SiteMapPath 和 SEO 友好的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5099567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com