Domanda

Ho il mio modulo e ho implementato un generacodictagcode, voglio che un menu-elemento reindirizzamento (il menu deve rimanere attivo) a una pagina Webform esistente, questa pagina è:? q= nodo / aggiungi / webform. .

$items['adminQuestion/create'] = array(
      'title' => t('Crear Cuestionarios'),
      'page callback' => "What i put here?",
      'page arguments' => array('form_questionnaires'),
      'access arguments' => array('access questionnaires'),
      'type' => MENU_NORMAL_ITEM,
  );
.

È stato utile?

Soluzione 3

Ecco la risposta:

$items['adminquestion/create'] = array(
  'title' => 'Crear Cuestionarios',
  'page callback' => 'questionnaires_page',
  'access callback' => TRUE,
  'type' => MENU_NORMAL_ITEM,
);


function questionnaires_page() {
    module_load_include('inc', 'node', 'node.pages');
    $output = node_add('webform');
    return $output;
}
.

Dove Webform è un alias di nodo / aggiungi / webform. Grazie

Altri suggerimenti

Utilizzare drupal_goto con ilPercorso per reindirizzare come parametro:

$items['adminQuestion/create'] = array(
  'title' => t('Crear Cuestionarios'),
  'page callback' => 'drupal_goto',
  'page arguments' => array('node/add/webform'),
  'access arguments' => array('access questionnaires'),
  'type' => MENU_NORMAL_ITEM,
);
.

Nota inoltre che $ elementi ['amministrazioni'] è cattiva pratica: gli URL e i percorsi non dovrebbero mai essere case-sensitive: infatti: in Drupal Camelcase è molto scoraggiato in qualsiasi codice.

Se si intende Reindirizzamento HTTP per reindirizzamento, è possibile utilizzare semplicemente drupal_goto('path/to/webform') ma non ha senso dal momento che è possibile utilizzare direttamente il percorso webform.IMO Quello di cui hai bisogno è un API di drupal_get_form()-simile per Webform che è node_load(), quindi Webform verrà caricato nel tuo percorso del menu:

// Assuming webform node with nid: 237
$items['adminQuestion/create'] = array(
  'title' => t('Create Cuestionarios'),
  'page callback' => 'node_load'
  'page arguments' => array(237),
  'access arguments' => array('access questionnaires'),
  'type' => MENU_NORMAL_ITEM,
);
.

L'implementazione Webform di hook_theme() si prende cura di temare il nodo da formare.In alternativa puoi semplicemente cambiare il percorso Webform, se possibile nel tuo caso.

Leggere i commenti, mi sembra che tu voglia creare un percorso alias / nodo / aggiungi / webform.Non è necessario implementare Hook_Menu.

Si crea alias at / admin / build / percorso / aggiungi (Accertarsi di avere il modulo del percorso abilitato).

Ecco cosa ho fatto per fare una parte "Aggiungi pagina nodo" parte di un gruppo di schede

$items['mynode/new'] = array(
    'title' => 'New Node',
    'page callback' => 'node_add',
    'page arguments' => array('my_node_type'),
    'access arguments' => array('create my_node_type content'),
    'file' => 'node.pages.inc',
    'file path' => drupal_get_path('module', 'node'),
    'type' => MENU_LOCAL_TASK,
    'weight' => 0,
);
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top