Domanda

Ho un modulo sto creando e il suo scopo è quello di importare un tipo specifico di dati e aggiungerlo ai nodi a seconda che i dati.

Per fare questo, ho bisogno di creare una pagina lasciando all'utente di immettere in cui i dati sono memorizzati in per il sistema di importazione.

Per fare questo, sto agganciando in hook_menu per creare la pagina come questa:

function lbar_image_importer_menu(){
    $items = array();
    $items[] = array(
        'path' => "admin/content/lbar_image_importer",
        'title' => "Import LBar Images",
        'description' => "Innitiate an importation of LBar images from a ZIP file.",
        'page callback' => 'drupal_get_form',
    );
    return $items;
}

I popolano la forma che utilizzerà agganciando nella funzione hook_form_alter come così:

function lbar_image_importer_form_alter(&$form, &$form_state, $form_id) {   
    $form['admin']['lbar_zip_loc'] = array(
        '#type' => 'textfield',
        '#title' => 'Location of LBar Zip file: ',
        '#description' => 'This is where one or many of the lbar zip files are located. If this is a file, it will access only that zip file. If it is a directory it will open all zip files in that directory.',
    );
    $form['admin']['submit'] = array(
        "#type" => "submit",
        "#value" => "Import",
        '#submit' => array('lbar_image_importer_submit'),
    );

    return $form;
}

Tuttavia, sto avendo senza fortuna. Si aggiunge miei elementi del modulo per il modulo di ricerca, e viene richiamata la / pagina di contenuto di amministrazione. Come posso fare in modo ho la mia pagina, come admin / content / nodo?

È stato utile?

Soluzione

Due cose. In primo luogo, il percorso dovrebbe essere nella chiave dell'array per l'elemento. In secondo luogo, senza né argomenti di accesso o un callback di accesso, avrete sempre accesso negato. Leggendo la documentazione e seguendo gli esempi possono aiutare a qui.

function lbar_image_importer_menu(){
    $items = array();
    $items['admin/content/lbar_image_importer'] = array(
        'title' => "Import LBar Images",
        'description' => "Innitiate an importation of LBar images from a ZIP file.",
        'page callback' => 'drupal_get_form',
        'access callback' => true,
    );
    return $items;
}

drupal_get_form non ha intenzione di fare nulla senza un valore page arguments, sia.

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