Disqus 확장을 사용하면 사이트 방문자가 AJAX 기반 댓글 시스템을 사용하여 개별 패키지에 댓글을 달 수 있습니다. 이 플러그인의 단점은 댓글이 로컬에 저장되지 않고 사용자 정보가 CKAN과 댓글 시스템 간에 공유되지 않는다는 것입니다.
참고: 이 확장에는 ckan 1.7 이상이 필요합니다.
Disqus 플러그인을 설정하려면 먼저 disqus.com으로 이동하여 도메인 이름으로 포럼을 설정해야 합니다. 포럼 이름을 선택할 수 있습니다.
플러그인을 설치하려면 virtualenv를 입력하고 소스를 로드하세요.
(pyenv)$ pip install -e git+https://github.com/okfn/ckanext-disqus#egg=ckanext-disqus
2.0 이전 ckan 버전의 경우 release-v1.8 브랜치를 사용하세요.
그러면 플러그인 진입점도 등록되므로 이제 CKAN .ini 파일에 다음을 추가할 수 있습니다.
ckan.plugins = disqus <기타 플러그인> disqus.name = 귀하의_DISQUS_NAME
이 시점에서 각 데이터세트 보기 페이지에는 Disqus 댓글이 포함됩니다. 다른 페이지에 설명을 추가하려면 다음 섹션을 참조하세요.
Disqus는 disqus_url로 window.location.href를 사용합니다. 특히 개발 중에 disqus가 대신 사용할 기본 URL을 지정하는 것이 도움이 되는 경우가 있습니다. 이는 CKAN .ini 파일에 추가될 수 있습니다:
disqus.disqus_url = my_staging.server.com
'http://' 또는 후행 슬래시를 포함하지 마세요.
페이지에 댓글 스레드를 표시하려면 댓글을 표시할 템플릿에 삽입하세요.
{{h.disqus_comments()}}
테마 개발자를 위한 참고 사항: 확장 기능은 다음 형식의 disqus_identifier를 생성하려고 시도합니다.
{컨트롤러/도메인-객체 이름}::{id}
여기서 컨트롤러 = 그룹 섹션의 'group', 데이터 세트 섹션의 'dataset'(내부적으로 여전히 패키지인 컨트롤러 이름과 다름), 리소스의 경우 'resource' 등. 이 식별자는 다음을 원하는 경우 유용합니다. 사이트의 다른 곳에서 이 댓글을 참조하세요(예: 댓글 수 확인).
최근 댓글을 표시하려는 페이지에 삽입하세요.
{{h.disqus_recent()}}
최근 댓글 위젯에는 기본적으로 5개의 최근 댓글이 표시됩니다. 최근 댓글 10개를 표시하려면 다음을 사용하세요.
{{h.disqus_recent(num_comments=10)}}
Disqus는 다른 많은 위젯을 제공합니다. 이 확장의 일부로 이를 자동으로 제공하는 대신 테마 개발자가 코드를 직접 통합하는 것이 좋습니다(모든 템플릿에 전달된 구성 개체에서 관련 구성 변수에 액세스한다는 점에 유의하세요).
Disqus는 사용자가 별도의 disqus 계정을 요구하지 않고 로컬 사용자 이름/비밀번호를 사용하여 댓글을 제출할 수 있는 "Single Sign On" 옵션을 제공합니다. Disqus 측에서 설정하는 방법(예: API 키 생성)에 대한 지침은 https://help.disqus.com/customer/portal/articles/236206-integrating-single-sign-on을 참조하세요.
이 CKAN 플러그인과 통합하려면 공개 키와 비밀 키를 CKAN ini 파일에 저장해야 합니다.
ckan.plugins = disqus <기타 플러그인> disqus.name = 귀하의_DISQUS_NAME disqus.secret_key = 귀하의_DISQUS_SECRET_KEY disqus.public_key = 귀하의_DISQUS_PUBLIC_KEY