2010-02-09 6 views
1

Sitecore 6.1.0에서 서식있는 텍스트로 링크를 삽입하는 데 문제가 있습니다. 오히려 실제 해결 URL과Sitecore가 페이지 렌더링에서 서식있는 텍스트 편집기 URL을 확인하지 않음

http://domain/~/link.aspx?_id=8A035DC067A64E2CBBE2662F6DB53BC5&_z=z

:

This article

http://domain/path/to/page.aspx이가 렌더링에서 해결되어야 함을 확인하는 sitecore 항목에 대한 링크가 삽입되면, 그것은으로 출력된다 파이프 라인 :

Sitecore 6에는 특별히 형식 링크가 삽입됩니다. Guid를 당신이 항목이 특별한 링크를 렌더링 할 때 다음에 을 링크 할 항목의 는 항목

파이프 라인은 웹에서 추가 한 방법 ShortenLinks을 가지고에 실제 링크 로 대체 포함되어 있습니다. config

<convertToRuntimeHtml> 
    <processor type="Sitecore.Pipelines.ConvertToRuntimeHtml.PrepareHtml, Sitecore.Kernel"/> 
    <processor type="Sitecore.Pipelines.ConvertToRuntimeHtml.ShortenLinks, Sitecore.Kernel"/> 
    <processor type="Sitecore.Pipelines.ConvertToRuntimeHtml.SetImageSizes, Sitecore.Kernel"/> 
    <processor type="Sitecore.Pipelines.ConvertToRuntimeHtml.ConvertWebControls, Sitecore.Kernel"/> 
    <processor type="Sitecore.Pipelines.ConvertToRuntimeHtml.FixBullets, Sitecore.Kernel"/> 
    <processor type="Sitecore.Pipelines.ConvertToRuntimeHtml.FinalizeHtml, Sitecore.Kernel"/> 
</convertToRuntimeHtml> 

그래서 링크가 여전히 완전한 SEO-tastic URL이 아닌 ID 형식으로 렌더링되는 이유를 알 수 없습니다. 누구나 단서가 있습니까? 필드 값을 렌더링하는 FLD : 당신이 SC를 사용하는 경우

감사합니다, 아담

답변

3

이 기본 동작됩니다. 이것은 Sitecore 5에서 남겨둔 레거시 동작이며 항목 링크의 지침을 대체하지 않았습니다. 대신

+3

파이프 라인은 언급 된 ID 형식에서 전체 URL로 링크가 "확장 된"곳입니다. sc : 필드 확장 메서드는 XSL을 사용하는 경우 renderField 파이프 라인을 호출합니다. 코드 숨김을 사용하여 링크를 렌더링하는 경우 FieldRenderer 클래스를 사용할 수 있습니다. 레이아웃/하위 레이아웃 (또는 FieldRenderer 컨트롤에서 파생 된 다른 컨트롤)에서 FieldRenderer 컨트롤을 사용할 수도 있습니다. 이 http://sdn.sitecore.net/Reference/Sitecore%206/Presentation%20Component%20Reference.aspx –

+0

감사합니다, 나는 그 –

2

당신이 FieldRenderer을 구현하는 코드 변경의 많은 양을 처리하는 경우, Sitecore.Links를 사용하는 것을 고려 가치가있을 수도 필드 : 당신이 Sitecore 6의 새로운 기능을 사용하려면

, 당신은 사우스 캐롤라이나를 사용해야합니다. LinkManager.ExpandDynamicLinks (문자열 텍스트, UrlOptions 옵션). 서식있는 텍스트 필드에 포함될 수있는 미디어 항목에 대한 링크 및 참조를 구문 분석합니다.

+0

의 읽기를해야합니다 : 이 문서는 당신에게 FieldRenderer 제어에 대한 약간의 배경을 제공 제안 된 기능을 사용하면 원시 필드 값을 사용하고 링크를 교체하려는 코드 생성 아키텍처로 작업하는 경우 여전히 효과적입니다. – VilladsR

0

나는 또한 비슷한 것을 쳤다. 나의 클라이언트는 sitecore 자리 표시자를 사용하고 있었고, 링크도 올바르게 렌더링하지 못했다. 대답을 통해 말한 것처럼 필드 렌더링을 끝냈습니다.

<sc:FieldRenderer runat="server" ID="frBody" FieldName="Body"/> 
관련 문제