콘텐츠 관리 및 Jelly 코드 예시

  • 릴리스 버전: Zurich
  • 업데이트 날짜 2025년 07월 31일
  • 소요 시간: 7분
  • 코드 예제

    헤더 예시 코드

    이 동적 컨텐츠 블록은 활성 상태여야 하며 "2단계" 옵션을 클릭해야 합니다. g:requires 태그에는 이름이 "servicenow.website.globals"인 시스템에 정의된 UI 스크립트가 포함됩니다. 호출의 파일 확장자는 .jsdbx이며 시스템의 스크립트 이름이 아닌 UI 스크립트 호출에만 사용됩니다. JSDBX의 경우 호출되는 파일은 캐시(x)해야 하는 데이터베이스(db) 내에 정의된 JavaScript(.js)입니다.

    <?xml version= "1.0" encoding= "utf-8" ?><j:jelly trim = "false" xmlns:j = "jelly:core" xmlns:g = "glide" xmlns:j2 = "null" xmlns:g2 = "null" >
     
        <g:requires name = "servicenow.website.globals.jsdbx" />
     
    </j:jelly>
    페이지 제목 및 설명 예시 코드

    이 동적 컨텐츠 블록은 활성 상태여야 합니다. 이 코드 스니펫 내에는 두 가지 작업이 있습니다. 첫 번째는 사이트 번역을 허용하는 미래 예측 문자열 컨테이너인 ${gs.getMessage('Your Text')} 문자열 호출)입니다. 두 번째 작업은 페이지 제목과 설명, ${current_page.getName()} 및 ${current_page.getDescription()}을 가져옵니다.

    <?xml version= "1.0" encoding= "utf-8" ?><j:jelly trim = "false" xmlns:j = "jelly:core" xmlns:g = "glide" xmlns:j2 = "null" xmlns:g2 = "null" >
     
    	<j:if test = "${current_page.getName()=='Solutions'}" ><h1 class = "page_name" > <b> <a href = "solutions.do?" title="${gs.getMessage('Solutions')}" >${gs.getMessage('Solutions')}</a> </b> </h1><p class = "page_description" >
    	 	    ${current_page.getDescription()}
    		</p> <br /></j:if><j:if test = "${current_page.getName()=='IT 3.0'}" ><h1 class = "page_name" > <b> <a href = "solutions.do?" title="${gs.getMessage('Solutions')}" >${gs.getMessage('Solutions')}</a> </b> | ${current_page.getName()}</h1><p class = "page_description" >
    	 	    ${current_page.getDescription()}
    		</p> <br /></j:if></j:jelly>
    지식 문서에서 끌어오는 목록 블록 예제 코드

    이 코드 예제에는 CMS에서 가장 좋은 트릭 중 하나가 포함되어 있습니다. 와 함께 유형 필드를 사용하면 정의된 여러 목록 정의에서 목록을 약간 또는 매우 크게 변경할 수 있습니다. UI는 구성과 혁신에 개방적이기 때문에 디자인 기술을 사용할 수 있는 좋은 기회입니다. HTML과 CSS를 사용할 수 있는 사람이라면 누구나 기본 목록을 부동 그리드로 바꾸거나 인라인으로 만들 수 있다는 것을 알고 있습니다. 조합은 디자이너가 상상하고 코딩할 수 있는 것에 의해서만 제한됩니다.

    이 코드 예시에는 Knowledge 폼에 추가된 사용자 지정 로고 필드(u_logo)가 있습니다. 사용자 지정 필드에는 어워드 페이지의 고객 로고, 파트너 로고 및 어워드 이미지가 표시됩니다. 이 목록 정의를 사용하는 다양한 섹션이 있으므로 효율적인 재사용이 이루어집니다.
    • div class="cms_knowledge_list customer_success" - CSS 스타일 선택기 및 규칙의 기초로 사용할 수 있는 고유한 클래스 이름으로 외부 컨테이너를 만드는 것부터 시작합니다. 외부 컨테이너에서 테마를 위해 많은 자식 요소에 액세스할 수 있습니다.
    • <g:for_each_record file="${current}" max="${jvar_max_entries}"> - 선택한 테이블 기록과 목록 양식에 설정된 항목을 호출하는 목록 작성 루프입니다.
    • <a href="knowledge.do?sysparm_document_key=kb_knowledge,${current.sys_id}"><img src="${current.u_logo.getDisplayValue()}" alt="${current.text}" width="110px"/> - 지식베이스의 문서 세부 사항에 대한 링크를 정의합니다. 자세한 참조를 위해 사이트 정의 내에서 콘텐츠 형식을 살펴보면 몇 가지 유사점을 확인할 수 있습니다. knowledge.do? URL의 일부는 지식 세부 정보 페이지를 가리키며, 이는 위에서 언급했듯이 CMS 사이트에서 지식베이스를 호출하려는 경우 필수입니다. URL의 나머지 부분은 sys_id로 지식 문서를 호출하기 위한 구문을 나타냅니다. 시스템 내에 보관된 모든 항목에는 고유한 sys_id 있습니다.
    • <ttt>${SP}-${SP}${current.author.first_name}${SP}${current.author.last_name}</tt> - 이 예시는 주석 처리되어 있고 사용되지 않지만, ${SP} Jelly 호출이 있고 성과 이름으로 지식 문서 작성자를 끌어온다는 점에서 여전히 흥미롭습니다.
    <?xml version= "1.0" encoding= "utf-8" ?><j:jelly trim = "false" xmlns:j = "jelly:core" xmlns:g = "glide" xmlns:j2 = "null" xmlns:g2 = "null" >
     
    <div class = "cms_knowledge_list customer_success" ><g:for_each_record file = "${current}" max = "${jvar_max_entries}" ><br /><table cellspacing = "0" cellpadding = "0" border = "0" class = "background_transparent" ><tr><td class = "cms_knowledge_list_image" ><j:if test = "${current.u_logo.getDisplayValue() != ''}" ><div class = "knowledge_article_logo" ><a href = "knowledge.do?sysparm_document_key=kb_knowledge,${current.sys_id}" > <img src = "${current.u_logo.getDisplayValue()}" alt="${current.text}" width = "110px" /> </a></div></j:if>
     
    			</td><td width = "100%" ><a href = "knowledge.do?sysparm_document_key=kb_knowledge,${current.sys_id}" target = "_top" ><span class = "cms_knowledge_list_link" >${current.short_description}</span></a><p class = "kb_description" >
    					"${current.description}"
    				 <!--${SP}-${SP}<span class="cms_knowledge_list_author">${current.author.first_name}${SP}${current.author.last_name}</span>--></p></td></tr><tr><td width = "100%" colspan = "2" class = "kb_learn_more" ><p class = "kb_learn_more" ><a href = "knowledge.do?sysparm_document_key=kb_knowledge,${current.sys_id}" >Learn More</a></p></td></tr></table>
     
    </g:for_each_record></div>
     
    </j:jelly>