2010-06-22 9 views
5

Ho fatto una componente per Joomla e che sta funzionando bene con l'url diretta: http://www.something.com/index.php?option=com_pbformspettacolo componente joomla nella voce di menu Tipo di

Il problema è che quando provo ad aggiungerlo nel menu. Quando cambio il tipo di voce di menu, il componente è elencato, ma quando lo scatto sopra non ottengo una vista da applicare alla voce di menu.

Devo configurare nient'altro nella componente?

Grazie!

+0

Ho trovato questa riga in una delle esercitazioni. "Puoi anche nascondere una vista usando un trattino basso '_' nel nome". Perdo molte ore prima di trovarlo. – Simon

risposta

2

Se si imposta il componente nel modo MVC allora si avrebbe una struttura di cartelle viste/disposizione nella cartella dei componenti. Ogni diversa vista che hai qui sarà elencata nei tipi di menu sotto il nome del tuo componente. È qui che è possibile scegliere le viste.

Ad es. nella struttura delle cartelle componente avere

views/view_a 
views/view_b 
views/view_c 

poi nel selettore di menù Joomla avreste quelle scelte per selezionare come vista.

Se non si dispone di configurazione il componente come MVC poi dare un'occhiata a questo tutorial su come fare proprio questo http://www.joomladevuser.com/tutorials/components

Mi auguro che aiuta! Acclamazioni

+0

sì, l'ho fatto nel modo MVC, il problema è che non ho usato la jview, ho fatto un approccio mvc da zero e ho una cartella con tutte le viste di cui ho bisogno. C'è qualche soluzione che mi permette di utilizzare questo approccio nei tipi di menu? – dbeja

+0

Non ne sono sicuro, ma suppongo che avresti bisogno di inizializzare la tua vista con Joomla nel tuo controller in modo che sappia che sono lì. Controlla questa discussione (http://forum.joomla.org/viewtopic.php?f=47&t=511442), potrebbe aiutarti. – Martin

+1

ok, l'ho fatto diversamente. Nel tipo di menu scelgo External Link e scrivo l'url del componente (index.php? Option = com_mycomponent & template = temp1). Ma grazie comunque per i suggerimenti! Il tuo primo link sarà molto utile in futuro. – dbeja

1

Potrebbe essere necessario un file metadata.xml per ognuno dei vostri punti di vista. Vedere http://docs.joomla.org/Adding_view_layout_configuration_parameters per maggiori dettagli

+0

Ci provo, ma il problema è che ho le mie lezioni di visualizzazione. Non uso le classi di vista joomla. Ho anche un modo leggermente diverso di organizzare le cartelle dei componenti. Forse dovrei anche includere qualcosa all'interno delle classi. – dbeja

3

Aggiungere il componente al tavolo jos_components:

INSERT INTO jos_components (name, link, admin_menu_link, `option`) 
VALUES (
    'Greetings', 'option=com_greetings', 'option=com_greetings', 'com_greetings') 

Se avete tutte le vostre opinioni impostato correttamente è necessario aggiungere il componente nel database di Joomla.

funzioni e visualizzare le cartelle devono avere No trattini o underscore.

Buono

  • /view/viewone
  • /view/viewtwo
  • /view/viewthree

Bad

  • /view/view_one
  • /view/view_two
  • /view/view_three
0

Utilizzare questa semplice soluzione. Ci si aspettava di trovare il nuovo componente nell'elenco a discesa del tipo di voce del menu, ma non è lì!Invece di cercare di far fronte a tale scarto MVC brutto fare questo:

  • selezionare "singolo articolo" dalla lista e salvare la nuova voce di menu
  • ora aprire il db joomla
  • selezionare _menu tavolo
  • modificare la riga di menu
  • cambiamento collegamento da un articolo a index.php? option = com_yourcomponent
  • salvare e dare un'occhiata al menu manager amministratore

Ho migrato la mia collezione Joomla 1.5 di script Ajax/PHP a Joomla 1.7.3 utilizzando questa soluzione in un solo giorno.

Pezzo di torta.