hook_node_info не добавляет тип контента в мой список - PullRequest
1 голос
/ 19 апреля 2011

Я пытаюсь добавить новый тип контента из модуля, и я довольно много позаимствовал из модуля набора продуктов Ubercart, так как я хочу использовать его в качестве основы для этого нового типа:

/**
* Implementation of hook_node_info().
*
* @return Node type information for flexible product bundles.
*/
function amh_shop_bundles_node_info() {
    return array(
        'amh_shop_flexi_bundle' => array(
            'name' => t('Flexible Product Bundle'),
            'module' => 'amh_shop_bundles',
            'description' => t('This node represents a flexible bundle package that allows customers to mix and match products and get discounts.'),
            'title_label' => t('Name'),
            'body_label' => t('Description'),
        ),
    );
}

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

Я что-то пропустил?(Ну, скорее всего, да).В документации Drupal говорится, что все должно быть так просто.

Обновление:

Я нашел комментарий, в котором проверяется, правильно ли сгенерирован тип содержимого -доступ к / admin / content / type-type / amh-shop-flexi-bundle

Это сработало, но тип содержимого по-прежнему не указан в списке других.

Обновление 2:

Так как я мог получить доступ к пустой форме узла в / node / add / amh-shop-flexi-bundle, я решил, что могу перейти к реализации других ловушек - и обнаружил, что вам нужно реализовать hook_form (), чтобы вывести список типов контента.

1 Ответ

3 голосов
/ 20 января 2012

Совет по реализации hook_form () помог мне!

Я добавил только эти строки и baam:

function hook_form(){
  $form = array();
  return $form;
}
...