Как сделать страницу администрирования в Drupal? Это вообще возможно? - PullRequest
2 голосов
/ 04 января 2012

Допустим, я делаю блог в Drupal 7, и я хочу, чтобы мой конечный пользователь увидел ссылку: «Добавить сообщение», и когда он нажимает на эту ссылку, он может добавить новый контент.Но вместо страницы администрирования по умолчанию можно создать новую, которая будет содержать только заголовок, теги, сообщение и т. Д.?

Я искал 2 дня, ничего не зная оначать / как запустить определенную страницу администрирования вместо страницы по умолчанию.

Ответы [ 4 ]

4 голосов
/ 04 января 2012

Вам нужно будет создать специальный модуль для того, что:

  • определит форму редактирования записи блога, которую вы хотите иметь
  • определите страницу с помощью функции hook_menu, которая включаетформа
  • определяет пункт меню для него в административном меню
  • и т. д.

Вы действительно должны немного углубиться в расширение drupal, прочитав некоторые про drupal7 кн.По крайней мере, начните читать http://drupal.org/node/1074360

Еще одна очень хорошая отправная точка - это модуль drupal "examples", который предоставляет пример кода для большинства вещей, которые нужны вашим модулям: http://drupal.org/project/examples

1 голос
/ 04 января 2012

Вы, вероятно, могли бы сделать все, что вам нужно, добавив шаблон для страницы публикации блога в вашу тему. Это позволяет вам настраивать отображение формы без необходимости слишком углубляться в программирование на Drupal.

В качестве альтернативы, вы можете создать модуль, который заменит бланк отправки блога по умолчанию на один, если ваш собственный дизайн.

Руководства по тематике и разработке модулей на веб-сайте Drupal дают подробное описание обоих этих подходов.

Джеймс

0 голосов
/ 04 января 2012

Каждый add / content_type является формой. Формы могут быть изменены с помощью hook_form_alter или hook_form_id_alter .
Если вы хотите иметь разные поля, которые отображаются для разных ролей, сначала посмотрите, можно ли это сделать на странице admin / people / permissions, если не пишите дополнительно, если условия внутри form_alter.

например. проверить роль пользователя:

global $user;</p> <p>// Check to see if $user doesn't have the administrator role. if (!in_array('administrator', array_values($user->roles))) { // Alter the form }

Вы можете проверять переменные формы с помощью dpm ($ form), когда включены модули Devel .

0 голосов
/ 04 января 2012

вы можете иметь другую тему для раздела управления, вы можете иметь несколько разрешений в зависимости от роли, вы можете настроить любую страницу, используя *** node.tpl

...