ISML 수준에서 PGID없이 링크를 만드는 방법은 무엇입니까?PGID없이 링크를 만드는 방법
다음 코드는 URL에서 세션 ID를 피하는 데 적합하지만 여전히 URL 끝에 PGID를 추가합니다.
#sessionlessurl(Action(TargetPipeline))#
ISML 수준에서 PGID없이 링크를 만드는 방법은 무엇입니까?PGID없이 링크를 만드는 방법
다음 코드는 URL에서 세션 ID를 피하는 데 적합하지만 여전히 URL 끝에 PGID를 추가합니다.
#sessionlessurl(Action(TargetPipeline))#
저는 sessionlessurl
으로는이 작업을 수행 할 수 없다고 생각하며,이를 수행 할 수있는 ISML 기능이 없다고 생각합니다. 그러나 정식 링크를 생성하는 데 사용되는 사용자 정의 태그가 있으며이를 사용할 수도 있습니다. 이 태그의 이름은 issetcanonicallink
입니다. 다음 코드 예이다
<issetcanonicallink
scope="request"
name="CanonicalLink"
action="ViewStandardCatalog-Browse"
parameters="#ParameterList(Parameter('CatalogID', CategoryBO:CatalogBO:Name), Parameter('CategoryName', CategoryBO:Name))#">
<link rel="canonical" href="<isprint encoding="off" value="#CanonicalLink#">" />
구현 SetCanonicalLinkTag
가 core
카트리지에 있으며, 따라서 파라미터가 기록된다.
나의 현재 솔루션은 SID와 pgid가없는 URL을 만들 수는 이것이다 :
<%
String targetPipeline = getPipelineDictionary().get("targetPipeline");
URLPipelineAction action = new URLPipelineAction(targetPipeline);
action.setAppendPGID(false);
// Default Link
String myDefaultLink = TemplateURLComposition.getTemplateExecutionConfig().getURLComposer().createURL(false, null, null, null, action, null);
getPipelineDictionary().put("myDefaultLink", myDefaultLink);
%>
<isprint value="#myDefaultLink#">
적은 JSP를 사용하는 더 나은 일 : URLParameters 누락을 추가 부담하지만 당신은 쉽게 추가 할 수 있습니다 그것들은 JSP 부분에서도 마찬가지입니다.
사실이 프로젝트에서이 태그를 수정 한 이후 실제로 재미 있습니다 ;-) 알림을 보내 주셔서 감사합니다! –