2015-07-06 2 views
1

Я работаю с API DISQUS, и я хочу искать поток по URL-адресу.DISQUS API - найти поток по URL-адресу

Я использую официальную клиентскую библиотеку: https://github.com/disqus/disqus-php

Поэтому в основном я создал функцию, которая вызывает API в этой манере:

 private function getThread($URL){ 

     $params = array(
      'forum' => $this->shortname, 
      'thread' => ("link:" . $URL) 
     ); 

     $thread = $this->API->threads->list($params); 

     Debug::dump($thread); 
     exit; 
    } 

Однако, кажется, что фильтрация URL не работает с возвращенный результат - это все темы на моем форуме.

Любые идеи?

Благодаря

ответ

0

У меня такая же проблема. Кажется, что URL-адрес не работает. Вместо этого он отображает последние 25 потоков. Я попытался использовать другой URL-адрес disqus по документации disqus. Я пробовал этот https://disqus.com/api/3.0/threads/listPosts.json, который возвращает список сообщений в потоке. Хотя это снова не сработало. Я обнаружил, что это работает, если у вас есть идентификатор потока вместо URL. Для этого мне пришлось догнать ID с моего сайта. Затем поместите идентификатор в параметр и передайте его по URL-адресу. Кажется, это сложно, но для меня это сработало. Кроме того, предел для отображаемых потоков составляет 100, поэтому независимо от того, если ваш поток слишком старый, он не найдет его. Я попытался добавить больше параметров, таких как категория, автор и т. Д., Но все равно не работал. Поэтому, на мой взгляд, догнать идентификатор из потока через ваш сайт (я сделал с xmlDoc и взял код disqus с помощью getElemenetsByTag, который содержит идентификатор потока). Я не знаю, помог ли я, но, как видите, у меня тоже такая же проблема. Unfortunatelly Disqus Api не дает вам возможность добавить больше параметров, которые могли бы помочь. Во всяком случае, все равно это хорошо. Пока я буду делать это так.

2

Я успешно вытягивать нужную информацию, как это:

require('disqusapi/disqusapi.php'); 

$disqus = new DisqusAPI('API_SECRET_KEY'); 

$thread = $disqus->forums->listThreads(array(
    'forum' => 'FORUM_SHORT_NAME', 
    'thread' => 'link:URL_OF_THE_THREAD' 
)); 

В общем, ссылка : элемент должен быть частью фактического значения параметра, а не это ключ, как и другие предложили.

Смежные вопросы