Create an alias
Current version: 9.3
You can create an alias definition item using the System/Alias data template. For example, to create the alias definition item /Sitecore/System/Aliases/MyAlias to cause the URL /MyAlias.aspx to activate the /Sitecore/Content/Home/Sample item:
RequestResponseshell
Sitecore.Data.Database master = Sitecore.Configuration.Factory.GetDatabase("master");
Sitecore.Data.Items.TemplateItem alias = master.Templates[Sitecore.TemplateIDs.Alias];
Sitecore.Data.Items.Item aliases = master.GetItem("/sitecore/system/aliases");
Sitecore.Data.Items.Item myAlias = aliases.Add("MyAlias", alias);
Sitecore.Data.Items.Item sample = master.GetItem("/sitecore/content/home/sample");
myAlias.Editing.BeginEdit();
Sitecore.Data.Fields.LinkField linkField = myAlias.Fields["linked item"];
linkField.LinkType = "internal";
Sitecore.Links.UrlOptions urlOptions = Sitecore.Links.LinkManager.GetDefaultUrlOptions();
urlOptions.AlwaysIncludeServerUrl = false;
linkField.Url = Sitecore.Links.LinkManager.GetItemUrl(sample,urlOptions);
linkField.TargetID = sample.ID;
myAlias.Appearance.Icon = sample.Appearance.Icon;
myAlias.Editing.EndEdit();