【问题标题】:Not able to add Item having '-' in name to Sitecore无法将名称中带有“-”的项目添加到 Sitecore
【发布时间】:2015-11-05 16:30:10
【问题描述】:

我正在尝试在 system=>languages 中添加一种名为 nl-Nl 的语言 但 Sitecore 提示错误

An item name cannot contain any of the following characters:
\/:?"<>|[]- (controlled by the setting InvalidItemNameChars)

我的 web.config 文件有

<!--  INVALID CHARS
            Characters that are invalid in an item name
      -->
      <setting name="InvalidItemNameChars" value="\/:?&quot;&lt;&gt;|[]" />
      <!--  ITEM NAME VALIDATION
            Regular expression for validating item names
      -->
      <setting name="ItemNameValidation" value="^[\w\*\$][\w\s\-\$]*(\(\d{1,}\)){0,1}$" />

我可以在另一个 Sitecore 中执行同样的操作而不会出现任何错误

我的站点核心版本是:Sitecore.NET 7.2(修订版 140526)

【问题讨论】:

  • 您能否从/sitecore/admin/showconfig.aspx 仔细检查您的配置,以确保它没有被其他补丁文件修补。更改 - 并将其包含为无效字符是一种相当常见的设置
  • @jammykam 是的,你是对的,我可以看到 |[]-"/> 那么我该如何删除它

标签: sitecore sitecore7 sitecore7.2


【解决方案1】:

正如您正确识别的那样,该错误是由于InvalidItemNameChars 设置限制项目名称具有-。您必须删除此值,添加项目,然后重新添加设置。

由于 web.config 具有默认的 Sitecore 值,因此将使用 patch include 修补设置,您可以在 /App_Config/Include/ 文件夹或其中的一个子文件夹中找到该设置。检查您的 Visual Studio 项目,这将为您提供最好的线索,准确了解哪个文件修改了此值。

可能会添加限制,并结合encodeNameReplacement 值,以使 URL 看起来对 SEO 友好。从长远来看,您可能需要考虑这样的事情作为更好的解决方案:https://jammykam.wordpress.com/2015/07/13/seo-friendly-urls-in-sitecore-prevention-is-better-than-cure/

【讨论】:

  • @Jojo Sitemap XML 模块 (SitemapXML.config) 可能是候选者。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多