Umbraco定制url slugs

时间:2011-12-08 08:07:29

标签: c# asp.net umbraco

我需要在每次用户创建新节点时生成自定义url slug,或者(如果可能)使用umbraco.library:NiceUrl方法完全停止Umbraco。

1 个答案:

答案 0 :(得分:1)

在我的回答中,我假设你使用的是Umbraco v4.7.x。

首先,我会确保您的节点上有umbracoUrlName文档类型属性和/或umbracoUrlAlias属性(我会让您决定哪个最符合您的要求)。< / p>

然后,您可以订阅Document.New事件处理程序。要订阅Document.New处理程序,您需要从ApplicationBase类继承,请参阅以下示例:

public class ApplicationBase : umbraco.BusinessLogic.ApplicationBase
{
    /// <summary>
    /// Initializes a new instance of the <see cref="ApplicationBase"/> class.
    /// </summary>
    public ApplicationBase()
    {
        Document.New += this.Document_New;
    }

    private void Document_New(Document sender, NewEventArgs e)
    {
        sender.getProperty("umbracoUrlName").Value = "your_urlname_here";
        sender.Save();
    }    
}