2010-10-14 50 views
4

我正在尝试在Drupal和一个webmail客户端之间进行一些整合,我想从一个PHP文件中调用一个Drupal函数,该文件是webmail客户端的一部分。在这种情况下,我想调用的函数是由一个contrib模块提供的,但我认为这并不重要。因此,如果我有一个名为mail_login.php的非Drupal页面并且想要调用Drupal的foo_bar()方法,我该怎么做?如何从PHP文件中调用Drupal函数?

回答

4

根据什么名字的复杂性可能需要引导的Drupal:

 require_once '/full/path/to/drupal/includes/bootstrap.inc'; 
     drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL); 

     $return = menu_execute_active_handler(); 

     if (is_int($return)) { 
      switch ($return) { 
      case MENU_NOT_FOUND: 
       drupal_not_found(); 
       break; 
      case MENU_ACCESS_DENIED: 
       drupal_access_denied(); 
       break; 
      case MENU_SITE_OFFLINE: 
       drupal_site_offline(); 
       break; 
      } 
     } 

在此之后,如果你是在Drupal的环境,因为,你可以代码!

+0

嗯,require_once由于某种原因正在崩溃页面,但谢谢! – Stewart 2010-10-14 13:17:22

+0

它可能会需要一些时间来解决所有包含/ require/path问题...已经在那里:) – Hannes 2010-10-14 13:19:58