A extensão Disqus permite que os visitantes do site comentem pacotes individuais usando um sistema de comentários baseado em AJAX. As desvantagens deste plugin são que os comentários não são armazenados localmente e as informações do usuário não são compartilhadas entre o CKAN e o sistema de comentários.
Nota: Esta extensão requer ckan 1.7 ou superior
Para configurar o plugin Disqus, primeiro você precisa acessar disqus.com e configurar um fórum com seu nome de domínio. Você poderá escolher um nome de fórum.
Para instalar o plugin, insira seu virtualenv e carregue o código-fonte:
(pyenv)$ pip install -e git+https://github.com/okfn/ckanext-disqus#egg=ckanext-disqus
Para versões ckan anteriores a 2.0, use o branch release-v1.8.
Isso também registrará um ponto de entrada do plugin, então agora você poderá adicionar o seguinte ao seu arquivo .ini CKAN:
ckan.plugins = disqus <outros plugins> disqus.name = SEU_DISQUS_NAME
Neste ponto, cada página de visualização do conjunto de dados terá comentários do Disqus. Para adicionar comentários em outras páginas, consulte a próxima seção.
O Disqus usará window.location.href como disqus_url. Às vezes é útil, especialmente durante o desenvolvimento, especificar a URL base a ser usada pelo disqus. Isso pode ser adicionado ao arquivo CKAN .ini:
disqus.disqus_url = meu_staging.server.com
Não inclua 'http://' ou uma barra final.
Para que os tópicos de comentários apareçam nas páginas, insira nos modelos onde deseja que os comentários apareçam:
{{h.disqus_comments()}}
Nota para desenvolvedores de temas: as extensões tentam gerar um disqus_identifier no formato:
{controlador/nome do objeto de domínio}::{id}
Onde controller = 'group' na seção do grupo, 'dataset' na seção do conjunto de dados (observe que isso difere do nome do controlador internamente, que ainda é um pacote), 'resource' para recursos etc. faça referência a este comentário (por exemplo, para contagem de comentários) em outro lugar do site.
Insira nas páginas onde deseja que os comentários recentes apareçam:
{{h.disqus_recent()}}
O widget de comentários recentes mostrará 5 comentários recentes por padrão. Para mostrar 10 comentários recentes, use o seguinte:
{{h.disqus_recent(num_comments=10)}}
Disqus oferece muitos outros widgets. Em vez de fornecê-los automaticamente como parte desta extensão, sugerimos que os desenvolvedores do tema incorporem o código diretamente (observe que você acessa as variáveis de configuração relevantes a partir do objeto de configuração passado para todos os modelos).
O Disqus oferece uma opção de "Logon único" que permite aos usuários enviar comentários usando o nome de usuário/senha local em vez de exigir uma conta disqus separada. Para obter instruções sobre como configurar as coisas no final do Disqus (ou seja, criar chaves de API), consulte: https://help.disqus.com/customer/portal/articles/236206-integrating-single-sign-on
Para integrar com este plugin CKAN, você deve armazenar suas chaves Pública e Secreta no arquivo ini CKAN:
ckan.plugins = disqus <outros plugins> disqus.name = SEU_DISQUS_NAME disqus.secret_key = YOUR_DISQUS_SECRET_KEY disqus.public_key = YOUR_DISQUS_PUBLIC_KEY