Pull to refresh

Comments 6

Это что называется туториалом по созданию виджета?
Чего точно не хватает, так это расставленных ударений.
Если конструктивно:
  • 'access callback' => TRUE, замените на
    'access arguments' => array('access content'),
    
  • После drupal_json_output($data); желательно делать drupal_exit();
  • Вместо $.ajax() проще использовать $.getJSON()
  • echo $_GET['callback'] . "($json);"; какой-то нехороший вариант. Уж лучше объявите в hook_menu() меню вида output/%
  • Ну и вместо exit; используйте drupal_exit(); (хотя это утверждение не всегда имеет место быть)
А еще я не понял, какой код должны у себя размещать владельцы сторонних сайтов, которые хотят показывать ваш виджет.
$.ajax() заменять на $.getJSON() нельзя, т.к. $.getJSON() эквивалентно:
$.ajax({ url: url, dataType: 'json', data: data, success: callback });
А для корректной работы необходим dataType: 'jsonp'
  • Подключить js файл...
  • По желанию подключить css файл с некоторыми готовыми стилями...
  • В месте где необходимо отображать виджет создать div с определенным id...


Хотя можно было обойтись одним:
В месте где необходимо отображать виджет вставить приведенный код (...)
Код может содержать iframe (хотя мне не нравятся фреймы), или script, который подтянет стили, вставит нужный блок и сделает всё что нужно.
Sign up to leave a comment.

Articles