当我在单独的php文件中创建一个新脚本以运行Drupal时,我需要在顶部添加以下行以访问所有Drupal API:
require_once'./includes/bootstrap.inc'; drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
这是对的吗?
答案 0 :(得分:13)
/** bootstrap drupal **/
chdir("/path/to/drupal/site/htdocs");
require_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
然后在下面添加您需要的任何Drupal特定代码。
答案 1 :(得分:5)
这个方法仍适用于drupal 7,但是你可能需要在require和bootstrap调用之前添加以下行代替chdir位:
define('DRUPAL_ROOT','/path/to/drupal');
答案 2 :(得分:2)
这适用于Drupal 6和Drupal 7:
define('DRUPAL_ROOT', 'path/to/drupal');
chdir(DRUPAL_ROOT);
require './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
放置包含此代码的脚本的位置并不重要。只需确保将path/to/drupal
替换为Drupal系统的实际安装路径。
答案 3 :(得分:0)
是的,这是进入drupal api的一种方式。
如果你从其他目录调用php脚本,则需要chdir("dir to drupal dir");
。