Eu tenho um mapa que carrega marcadores via ajax em vários / vários eventos de mapa. Atualmente, defino um retorno de chamada de página personalizado para o meu hook_menu()
item que imprime meu json / js.
Como o retorno de chamada da minha página não retorna nenhum conteúdo e apenas o imprime , o Drupal não processa o modelo completo, o menu etc., e, portanto, permite que eu retorne uma página apenas com meu JavaScript.
Embora isso funcione, acredito que o Drupal ainda esteja totalmente inicializando, o que significa que está adicionando muita sobrecarga que eu gostaria de eliminar.
Eu estive analisando o manipulador de retorno de chamada JavaScript de alto desempenho , que se apresenta como um "manipulador de retorno de chamada JavaScript de alto desempenho" e que, em resumo, parece oferecer um js.php
elogio index.php
para direcionar suas solicitações e personalizar / limitar / otimizar a inicialização do Drupal por padrão.
Infelizmente o projeto js ainda não tem uma versão D7 ( solicite uma aqui ), o que nos leva ao começo ...
Qual é a maneira mais rápida de implementar um retorno de chamada do Ajax no Drupal?
fonte
Um pouco tarde, mas especialmente se você estiver usando esse retorno de chamada ajax para a votação (verificação de novas mensagens, por exemplo), não é uma alternativa interessante: integração Drupal node.js .
Em vez de pesquisar, ele permite que você construa um sistema parecido com um evento, em que os usuários (também conhecido como JS na página) mantêm uma conexão aberta com o servidor node.js. Se algo acontecer, você poderá notificar diretamente todos os usuários através do node.js.
fonte
Como você deseja implementar um retorno de chamada do Ajax no Drupal , o uso do módulo JS parece uma boa aposta. Eu apenas dei uma olhada rápida no código, e é basicamente o que eu sugeriria (mas com muito mais atenção aos detalhes). O mantenedor também é um dos principais desenvolvedores do Drupal.
Parece que você terá que usar
module_load_include()
ou talvez umainclude 'sites/all/modules/contrib/...';
abordagem mais manual se precisar usar APIs de outros módulos.O próprio problema que você está falando tem sido um tópico importante ultimamente. A palestra de Dries da DrupalCon Chicago falou sobre como o Drupal 8 precisa de APIs melhores para fazer retornos de chamada e formatos de saída não HTML.
fonte