헬프 센터에서 문서를 삭제한 경우 사용자가 해당 문서와 연결된 URL에 액세스하려고 시도하는 경우가 있을 수 있습니다. 이러한 트래픽의 출처와 상관없이 해당 URL을 방문하는 사용자들을 더 유용한 페이지로 자동 리디렉션할 수 있습니다.
헬프 센터의 사용자 지정 JavaScript 파일 액세스하기
솔루션을 구현하려면 먼저 헬프 센터의 JavaScript 파일에 액세스해야 합니다.
- 관리자로 Zendesk Support에 로그인합니다. 그런 다음Zendesk 제품아이콘(
)를 탭한 다음Guide를 선택합니다.
- Zendesk Guide 오른쪽 위에 있는 Guide 관리를 선택합니다.
- 디자인 사용자 지정아이콘(
)를 클릭합니다.
- 테마에서 사용자 지정을 클릭합니다.
- 코드 편집을 클릭합니다.
- script.js 파일을 클릭합니다.
JavaScrpit 파일에 액세스하는 시각적 예는 아래 gif를 참조하세요.
이 문서에는 대부분의 경우 트래픽을 리디렉션할 수 있는 몇 가지 솔루션이 포함되어 있습니다.
- 예 1: 일련의 삭제된 문서를 새 문서로 리디렉션하기
- 예 2: 번역되지 않은 문서를 기존 언어로 리디렉션하기
- 예 3: 삭제된 모든 문서를 하나의 특정 페이지로 리디렉션하기
- 예 4: 일반화하거나 어느 문서 또는 커뮤니티 게시물을 특정 페이지로 리디렉션할지를 지정하기
예 1
예 2
예 3
예 4
예 1: 일련의 삭제된 문서를 새 문서로 리디렉션하기
이 예는 헬프 센터에 오래되고 삭제된 페이지 집합이 있고 각 페이지는 리디렉션되는 새 페이지에 대응되는 예입니다.
JS 파일의 처음 몇 줄 내에 다음과 같은 줄이 표시됩니다.
$(document).ready(function() {
해당 줄 바로 위에 다음 코드를 삽입합니다.
var oldIds = ["217352077", "216552968"]; var newIds = ["216553098", "216552958"]; for (var i = 0; i < oldIds.length; i++){ if (window.location.href.indexOf( oldIds[i]) > -1) { window.location.href = 'https://YOURSUBDOMAIN. zendesk.com/hc/en-us/articles/ ' + newIds[i]; } }
저장하기 전에 이 스크립트에 대한 몇 가지 사항을 사용자 지정해야 합니다. 편집할 코드의 첫 부분은 다음과 같습니다.
var oldIds = ["217352077", "216552968"]; var newIds = ["216553098", "216552958"];
이전 문서 ID 및 새 문서 ID 목록입니다. 여기에 문서 ID를 추가하세요. 문서 ID를 찾으려면 브라우저에서 문서를 보거나 애널리틱스 플랫폼의 URL을 보세요. URL은 다음과 유사합니다.
https://[YOURSUBDOMIAN].zendesk.com/hc/en-us/articles/203664386-Help-Center-guide-for-agents-and-end-users
이 경우 문서 ID는 ‘203664386’입니다.
이 솔루션을 사용하여 제대로 리디렉션하려면 반드시 배열 내에서 같은 위치에 있어야 합니다. 이 경우 URL에 ‘217352077’이 포함된 문서는 이제 ‘216553098’로 리디렉션됩니다. 그리고 ‘216552968’을 포함하는 문서는 이제 ‘216552958’로 리디렉션됩니다.
위와 같이 이러한 ID를 따옴표로 묶고, 경우마다 쉼표로 분리해야 합니다. 새 리디렉션 집합을 추가한 경우 다음과 같이 표시됩니다.
var oldIds = ["217352077", "216552968", "216552902"]; var newIds = ["216553098", "216552958", "216552944"];
두 번째로 다음 줄의 URL을 편집해야 합니다.
window.location.href = 'https://YOURSUBDOMAIN. zendesk.com/hc/en-us/articles/ ' + newIds[i];
하위 도메인을 사용하거나 자신의 URL에 화이트 레이블이 있는 경우에는 헬프 센터에 정상적으로 나타나는 전체 헬프 센터 URL을 사용합니다. ‘+ newIds[i];’가 나오는 줄의 끝을 제거하지 마세요. 루프가 새 문서 ID를 URL에 첨부하는 방식입니다. 이것이 없으면 코드가 실패합니다.
예 2: 번역되지 않은 문서를 기존 언어로 리디렉션하기
이 예에서는 헬프 센터 헬프 센터가 여러 언어로 되어 있습니다. 모든 콘텐츠가 영어로 존재하지만 그중 일부만 프랑스어와 독일어로 존재한다고 가정해보겠습니다. 사용자가 프랑스어나 독일어로 된 문서에 액세스하려고 하면 오류 페이지가 표시됩니다. 이 코드를 사용하면 오류 페이지에서 기존 영어 문서로 다시 리디렉션할 수 있습니다.
var notDefaultLanguage = window.location.href.indexOf('/en-us/') == -1; var isArticle = window.location.href.indexOf('/articles/') > -1; var isErrorPage = $(".error-page").length > 0; if ( isArticle && notDefaultLanguage && isErrorPage ) { var newURL = window.location.href.replace(/(.*\/hc\/)([\w-]+)(\/.*)/, "$1en-us$3"); window.location.href = newURL; }
이 예에서는 한 가지의 사용자 지정 과정만 수행하면 됩니다. 기본 헬프 센터 언어가 영어가 아닌 경우 해당 언어를 바꿀 수 있습니다. 코드에서 ‘en-us’가 두 곳에 나타납니다.
var notDefaultLanguage = window.location.href.indexOf('/en-us/') == -1;
및
var newURL = window.location.href.replace(/(.*\/hc\/)([\w-]+)(\/.*)/, "$1en-us$3");
이 두 줄의 ‘en-us’를 기본 언어 코드로 바꿉니다. 기본 언어 코드는 기본 문서의 URL에서 확인할 수 있습니다. 예를 들어 다음과 같은 프랑스어 헬프 센터 페이지의 URL에는
https://[YOURSUBDOMAIN].zendesk.com/hc/fr/articles/214943538
국가 코드를 나타내는 ‘fr’이 포함됩니다.
예 3: 삭제된 모든 문서를 하나의 특정 페이지로 리디렉션하기
이 예에서 헬프 센터는 모든 삭제된 문서(참고: 커뮤니티 게시물 미포함)를 특정 문서로 리디렉션합니다.
JS 파일의 처음 몇 줄 내에 다음과 같은 줄이 표시됩니다.
$(document).ready(function() {
이 경우 해당 줄 바로 아래에 다음 코드를 삽입하세요. 참고로 위의 예와 같이 줄 위에 삽입하면 다음 예에서는 작동하지 않습니다.
if ( window.location.href.indexOf('articles') > -1 && $(".not-found").length > 0 ) {
window.location.href = 'https://[YOURSUBDOMAIN].zendesk.com/hc/en-us/articles/216553068-error-redirect';
}
저장하기 전에 이 스크립트에서 URL을 사용자 지정해야 합니다. 헬프 센터에서 리디렉션할 문서 URL로 바꿉니다.
이 해결 방법은 오류 페이지에 ‘.not-found’ 클래스가 있는 경우에만 작동합니다. 그럼 하나 추가해 보겠습니다.
‘JS’ 링크가 나타나는 회색 막대에서 ‘홈 페이지’ 링크를 클릭합니다. 해당 드롭다운에서 ‘페이지 오류’를 찾아 선택합니다. 오류 페이지에 {{#is error 'not_found'}}
코드로 시작하는 영역이 있습니다. 다음과 같이 보일 것입니다.
{{#is error 'not_found'}}
<h2>{{t 'nonexistent_page'}}</h2>
<p>{{t 'mistyped_address_or_moved_page'}}</p>
{{/is}}
다음과 같이 h2 요소 또는 'not_found'#is 태그 내의 모든 요소에 새 클래스를 추가해야 합니다.
<h2 class="not-found">{{t 'nonexistent_page'}}</h2>
이제 일반 삭제된 문서 리디렉션에 필요한 모든 요소를 갖추었습니다.
예 4: 일반화하거나 어느 문서 또는 커뮤니티 게시물을 하나의 특정 페이지로 리디렉션할지를 지정하기
if 문을 사용자 지정하여 이 해결 방법에 대해 보다 구체적이거나 일반적으로 만들 수 있습니다. 예를 들어 삭제된 문서나 커뮤니티 게시물에서 리디렉션하려면 if 문을 다음과 같이 변경합니다.
if ( $(".not-found").length > 0 )
또는 제목에 ‘buttermilk’라는 단어가 있는 삭제된 문서만 리디렉션하려면 if 문을 다음과 같이 변경합니다.
if ( window.location.href.indexOf('buttermilk') > -1 && $(".not-found").length > 0 )
제시된 첫 번째 해결 방법과 달리 이러한 해결 방법은 오류 페이지를 간단하게 표시한 다음 새 페이지로 리디렉션합니다. JS를 사용하여 페이지 내 요소를 검색하므로 이를 위해서 먼저 페이지가 로드될 때까지 기다려야 하기 때문입니다.
0 댓글
댓글을 남기려면 로그인하세요.