Как получить доступ к bootstrap.inc для внешнего файла - PullRequest
1 голос
/ 18 марта 2011

Мне нужно загрузить Drupal. У меня есть php-файл со всеми моими функциями, и в одной из этих функций мне нужно использовать функцию Drupal, которая находится в файле bootstrap.inc.

Структура сервера:
(d) drupal
(sd) включает в себя
(f) bootstrap.inc
(d) скрипты
(sb) функции
(f) functions.php

Так что мне нужно включить в самописанную функцию функцию "variable_set", расположенную в bootstrap.inc.

Небольшой фрагмент функции, которую написал мой колледж (мне очень жаль, но я не знаю, как отформатировать php на форуме. Если кто-то это делает, пожалуйста, дайте мне знать, чтобы я мог отредактировать этот беспорядок):

function readxml()
{
echo "<br/>READING...<br/>";
    $file = './config.xml';
    $xml = simplexml_load_file($file);
    if($xml !== false)
    {
        foreach($xml->config->children() as $item){
            $name = $item->getName(); // GETS CHILDREN UNDER 'CONFIG'           
            switch($name)
            {
                case 'website': 
                        foreach($xml->config->website->children() as $kid){
                        $childname = $kid->getName();                       
                            switch($childname)
                            {
                                case 'theme':
                                    if(inserttheme($kid)or die ('failed to insert theme<br/>')){
                                        echo 'theme is installed.<br/>';}
                                        break;
                                case 'slogan':
                                    if(insertslogan($kid)or die('failed to insert slogan<br/>')){
                                        echo 'slogan is installed.<br/>';}
                                        break;
                                case 'sitename':
                                    if(insertname($kid)or die('failed to insert name<br/>')){
                                        echo 'website name is installed.<br/>';}
                                    break;
                            }
                        }
                        break;      

`

Итак, где-то в разделе theme / slogan / name я должен вызвать функцию variable_set, которая находится в файле bootstrap.inc.

Где-то я нашел это (опять же извините за неформатированный текст):

$drupal_directory = "/home/httpdocs/drupal";  // wherever Drupal is
$current_directory = getcwd();
chdir($drupal_directory);
require_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
chdir($current_dir);
return;

Я включил его как в свой function.php, так и в свой конечный php-файл (где вызываются все функции), но безрезультатно ... Что я делаю не так?

Ответы [ 2 ]

1 голос
/ 18 марта 2011

Тот код, который вы нашли, выглядит правильно, что именно означает "нет результата", вы получаете ошибки или ничего или ...?Кроме того, где вы положили это точно?(Если он отсутствует в функции, вам нужно удалить последнюю строку (возврат))

Кроме того, правильным способом исправить это будет интеграция вашего пользовательского кода в модуль Drupal, тогда выне нужно беспокоиться о таких вещах, как это: http://drupal.org/developing/modules

Или, если это скрипт CLI, выставьте его как команду drush: http://drupal.org/project/drush

0 голосов
/ 07 мая 2011

Ответьте на вопрос, просто включите файл в папку Drupal!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...