컨텐츠 관리 및 Jelly 코드 예제
코드 예제
- 헤더 예제 코드
이 동적 콘텐츠 블록은 활성 상태여야 하며 "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를 사용할 수 있는 사람이라면 누구나 기본 목록을 부동 그리드로 바꾸거나 인라인으로 만들 수 있다는 것을 알고 있습니다. 조합은 디자이너가 구상하고 코딩할 수 있는 것에 의해서만 제한됩니다.
코드 예제에서는 u_logo(사용자 지정 로고 필드)가 Knowledge 폼에 추가되었습니다. 사용자 지정 필드에는 고객 로고, 파트너 로고 및 어워드 이미지가 어워드 페이지에 표시됩니다. 효율적인 재사용이 이루어지도록 이 목록 정의를 사용하는 다양한 섹션이 있습니다.- 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} 젤리 호출이 있고 지식 문서의 작성자를 이름과 성으로 끌어온다는 점에서 여전히 흥미롭습니다.
<?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>