Get URL to page with "Shortcut to another content item"

Found in

EPiServer.CMS.Core 11.12.0

Fixed in

EPiServer.CMS.Core 11.20.1

Created

Oct 09, 2019

Updated

Nov 11, 2020

Area

CMS Core

State

Closed, Fixed and tested


Description

Steps to reproduce:

1. Add new page property to Article page type (ArticlePage.cs):

public virtual ContentReference RelatedPage { get; set; }

2. Add the following to Article page view file (/Views/ArticlePage/Index.cshtml):

<strong>PropertyFor</strong>
<p>@Html.PropertyFor(m => m.CurrentPage.RelatedPage)</p>

<strong>ContentLink</strong>
<p>@Html.ContentLink(Model.CurrentPage.RelatedPage)</p>

<strong>ContentUrl</strong>
<p>@Url.ContentUrl(Model.CurrentPage.RelatedPage)</p>

3. Create three new page instances of Article page type:

  • Article A
  • Article B
  • Article C

4. On Article A, set the value of new property added in step1 to point to Article B.

5. On Article A, edit property MainBody and add a link to Article B.

6. On Article B, Settings tab, locate property Shortcut, click Manage and select:

  • Shortcut type: shortcut to another content item
  • Open in: - (leave empty)
  • Internal Shortcut/Fetch Data from: Article C

7. Visit Article A, click Options and View on website (not in edit view).

Expected result: All links should point to Article C.
Actual result: Url.ContentUrl links to Article B instead of Article C.