【问题标题】:Get Drupal uid in external php在外部 php 中获取 Drupal uid
【发布时间】:2014-03-21 18:47:58
【问题描述】:

对 php 和 Drupal 来说都是新手。我已经搜索了这个答案,并找到了每个人都在重复的答案,但我无法让它发挥作用。


我所做的是创建一个访问位于根文件夹中的“外部”php 文件的表单。 (我在处理模块时遇到了很多麻烦,所以对我来说,这是一条更简单的路径)。在这个 php 文件中,我试图获取当前用户的 uid 以存储在表中。

我找到的解决方案是加载 bootstrap.inc,但我每次都失败得很惨。我认为可能是问题的一件事是,我已将 Drupal 7 加载到子域中。


我显然没有改变正确的元素,例如假设我的域名是http://apples.fruitrocks.com。我要在下面进行哪些更改才能使其正常工作?

define('DRUPAL_ROOT', '/var/www/vhosts/mysite.com/httpdocs/');
$_SERVER['HTTP_HOST'] = 'mysite.com';
$_SERVER['REMOTE_ADDR'] = '127.0.0.1';
require_once DRUPAL_ROOT . '/includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);

【问题讨论】:

    标签: php drupal drupal-7 uid


    【解决方案1】:

    我强烈建议不要尝试从外部脚本引导 drupal。

    一个更简单的解决方案是创建一个页面,并将所有处理放在该页面的主题文件中。如果您创建的页面有 nid X,请创建页面--X.tpl.php 并将您想要的任何内容放在那里。

    请记住,这种方法是“肮脏的”,从长远来看,当您更习惯于编写模块时,您不应该将这种逻辑放在主题文件中。但就目前而言,我认为这是你最好的选择。

    【讨论】:

    • 我应该把 tpl.php 文件放在哪里?
    • 在你的主题目录中
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多