Установить профиль
Я создаю профиль установки Drupal и передаю словари таксономии с помощью функций, например:
My_profile.info :
; Особенности
...
зависимости[] = my_profile_taxonomy_вокабулы
...
Эти словари созданы правильно, но я также должен автоматически создавать термины. Если я помещу свою функцию, которая создает термины, в my_profile_install(), она не будет работать. В данный момент словари являются не доступен. Кроме того, я пытался использовать прямой SQL-запрос, и в данный момент словари не создаются.
Куда я могу поместить свой код для создания терминов, когда словари уже созданы и доступны?
1 answers
Вам необходимо создать задачу установки в .profile, задачи установки выполняются после включения модулей.
Вот пример, который вы можете использовать в качестве отправной точки:
<?php
/**
* Implements hook_install_tasks().
*/
function PROFILE_install_tasks() {
$tasks = array(
'create_taxonomy_terms' => array(
'display_name' => st('Create taxonomy terms'),
'type' => 'normal', // the default
),
);
return $tasks;
}
/**
* Install task: Create taxonomy terms.
*/
function PROFILE_create_taxonomy_terms() {
// your stuff.
}
Задача установки объявлена как обычная, это означает, что соответствующая функция будет выполнена. Если вы собираетесь создать много терминов, лучше напишите пакет. Смотрите документы api для ссылка:
Http://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_install_tasks/7