Back to top

Autore Topic: [RISOLTO] Aggiungere modulo in pagina "Dettagli Prodotto"  (Letto 4605 volte)

Offline marco.loca

  • Nuovo arrivato
  • *
  • Post: 8
    • Mostra profilo
Ciao a tutti,
riporto qui sotto una richiesta che mia cugina un ha postato sul forum di VirtueMart Italia senza ottenere risposte, finora.
Essendo un po' disperata ho pensato che qualcono di voi potesse aiutarla:

RICHIESTA:
Dovrei aggiungere un modulo all'interno della pagina dei "dettagli prodotto".

Per la precisione io vorrei aggiungere il mio modulo dentro
com_virtuemart/views/product details/tmpl/default.php

Ho provato con il codice che di solito si usa nel template di joomla
<jdoc:include type="modules" name="XXXXX" style="xhtml" />
ma ovviamente non lo accetta perchè la pagina di cui sopra non è il template principale.

Ho provato inserendo {loadposizion XXXXX}
ma ovviamente questo viene accettato SOLO se inseritro all'interno della descrizione estesa.

dove XXXXX è il nome della posizione da assegnare al modulo.

Qualche suggerimento?
Qualciuno ha mai avuto un'esisgenza simile?

Ringrazio tutti anticipatamente per l'attenzione.


P.S.
Ho trovato questa ottima spiegazione
http://www.kaizenmediaworks.com/virtuemart-template-and-module-control
che spiega come abilitare determinate posizioni nel template in base alla pagina dell'ecommerce visualizzata ma non è ciò che mi serve; il modulo deve comparire all'interno della scheda dettaglio prodotto non di fianco o sopra.
« Ultima modifica: 02 Mag 2014, 13:57:34 da marco.loca »

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo

Offline marco.loca

  • Nuovo arrivato
  • *
  • Post: 8
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #2 il: 14 Apr 2014, 15:15:46 »
Risponde mia cugina:

tomtomeight intanto grazie per la pronta risposta, tuttavia usare {loadposition XXXX} all'interno della descrizione estesa degli articoli è proprio la soluzione "di ripiego" che sto usando ora.

Nella mia domanda infatti chedevo se fosse possibile editare la pagina del template dei dettagli prodotto di VirtueMart (cioè la pagina  com_virtuemart/views/product details/tmpl/default.php) al fine di inglobare in essa un modulo o meglio una "posizione aggiuntiva".
il fatto che questa "posizione aggiuntiva" sia richiamabile solo all'interno della descrizione estesa è infatti molto limitante.

In attesa di eventuali altri suggerimenti ringrazio e saluto  :)

Offline Arkimede360

  • Appassionato
  • ***
  • Post: 592
  • Sesso: Maschio
  • www.arkimede360.it
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #3 il: 14 Apr 2014, 16:18:14 »
Il problema che hai è frequente anche con altri componenti che non permettono di assegnare moduli a pagine di dettaglio come in questo caso per VM. Io sono sicuro di aver avuto questo problema e sono sicuro di averlo risolto....  :o ma non ricordo bene come!!!

Cerco di darti qualche indicazione e vediamo cosa succede. Prova a fare così:

  • vai in menu e crea un nuovo menù e lo chiami "prodotto"
  • crea una voce di menù associata ad un singolo prodotto
  • pubblica il menù e clicca sul link
  • copia la url da senza le variabili dopo la prima & esclusa
  • rivai in menù e crea una voce di menù come link esterno e incolli il link che hai appena copiato
  • vai in moduli, ne crei uno e lo assegni solo alla voce di menù che hai appena creato
Se puoi mettere un link al sito è meglio e ricordati di dissattivare le impostazioni SEO per fare queste prove.
Mi ricordo che un modo l'avevo trovato...magari lavorandoci un po' ci riesci anche tu.
ciao ciao
fabio@arkimede360.it
www.arkimede360.it
p.iva 02532850597

Offline marco.loca

  • Nuovo arrivato
  • *
  • Post: 8
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #4 il: 14 Apr 2014, 16:45:01 »
Risposta di mia cugina:

ho capito perfettamente cosa intendi, però non è quello che mi serve.
La guida che avevo riportato a questo link
http://www.kaizenmediaworks.com/virtuemart-template-and-module-control
infatti risolve questo problema per virtuemart facendo in modo che un certo modulo appaia solo in pressenza della pagina "dettaglio prodotti"  (o altre specifiche pagine) ma in una posizione di joomla esistente cioè "intorno" alla scheda "dettaglio prodotto" non al suo interno.

A me servirebbe far apparire un modulo all'interno della scheda, per essere precisa sotto al prezzo e prima della descrizione.
potrei mettere dell'html dentro la pagina  com_virtuemart/views/product details/tmpl/default.php  ma così facendo poi il cliente non potrebbe più aggiornare quell'elemento.

(il sito non lo posso mostrare: il mio cliente non me lo permette prima che sia pronto; comunqe mi sembra di essere stata chiara nella mia spiegazione).

Per il momento grazie 1000 lo stesso.

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #5 il: 14 Apr 2014, 17:04:33 »
allora fai un override del default.php

Offline marco.loca

  • Nuovo arrivato
  • *
  • Post: 8
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #6 il: 14 Apr 2014, 17:32:18 »
Risposta di mia cugina:

Si ho provato anche quello:
ho inserito il file modificato in:   
/templates/NOME_TEMPLATE/html/com_virtuemart/productdetails/default.php
come suggerito dalla procedura di override ma non interpreta correttamente questi 2 codici:
  • <jdoc:include type="modules" name="XXXXX" style="xhtml" />      viene ignorato
  • {loadposition XXXXX}      viene invece mostrato sulla pagina tale e quale in quanto il plugin è "attivo" solo all'interno della "descrizione estesa"
Sul "loadposition" do ragione a Joomla  ;)
ma sulla mancata interpretazione del  <jdoc:include type="modules" name="XXXXX" style="xhtml" />  non riesco a capire proprio perché.
Dopo tutto con l'override questo codice si trova ore di fatto DENTRO al template principale  :o
Comunque grazie per i suggerimenti arrivati finora

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #7 il: 14 Apr 2014, 17:51:15 »
Ma tu nel file di override devi solo inserire il codice di visualizzazione e non una posizione. Inizia con un div.

Offline marco.loca

  • Nuovo arrivato
  • *
  • Post: 8
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #8 il: 14 Apr 2014, 18:02:28 »
OK se inserisco nel file /templates/NOME_TEMPLATE/html/com_virtuemart/productdetails/default.php del semplice codice statico lo vede (ovviamente):

Ad esempio: ho inserito sotto il prezzo <div>CIAO</div>

e infatti compare un CIAO sotto al prezzo.

Come dicevo prima, se però inserisco solo del codice statico poi il cliente-amministratore non potrà più modificarlo autonomamente dall'area administrator.

Per questo mi chiedevo se c'era la possibilità di ingolbare nel "dettaglio prodotto" un modulo o qualcosa di editabile.
Tutto qui.

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #9 il: 14 Apr 2014, 18:23:12 »
Ma scusa, allora non ti capisco, vuoi mettere un loadposition xxx ci sei pure riuscita, ma dici che è una soluzione di ripiego. Ma le soluzioni non sono quelle che ti fanno fare quello che volevi?

Offline marco.loca

  • Nuovo arrivato
  • *
  • Post: 8
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #10 il: 14 Apr 2014, 18:54:12 »
Direi di no.
il {loadposition xxx} funziona solo se scritto dentro la descrizione estesa. E li non mi va bene sia per la posizione che occupa nel layout della pagina sia perchè dovrei digitarlo per ogni prodotto.

Il codice della posizione <jdoc:include type="modules" name="XXXXX" style="xhtml" /> inserito nella pagina .../productdetails/default.php non funziona e viene ignorato da Joomla.
Se quello funzionasse il problema l'avrei risolto da sola e non avrei mai disturbato gli utenti del forum.

Scusate se ho un'esigenza così particolare ma a noi ragazze piace errere precise.
A questo punto penso che semplicemente non sia possibile richiamare un modulo dentro la pagina con la modalità da me cercata. Mi sembra soltanto strano che nessun'altro ci abbia mai provato e abbia avuto conferma che non si può.

Ad ogni modo grazie per i suggerimenti.

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #11 il: 14 Apr 2014, 19:04:45 »
Ma quel codice del tutorial credo vada inserito nell'index del template in uso e non nell'override.

Offline marco.loca

  • Nuovo arrivato
  • *
  • Post: 8
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #12 il: 14 Apr 2014, 19:51:55 »
Confermo!
Quella esposta nel tutorial inglese, che ho linkato fin dall'inizio, infatti è una soluzione elegante per far comparire un modulo solo in presenza di determinate pagine (ad esempio proprio in presenza della pagina del "dettaglio prodotto") ma NON dentro la scheda del dettaglio prodotto.
Ad esempio potrebbe apparire sulla colonna, nel footer, nell'header, ecc. ma non, ad esempio, tra il prezzo e la descrizione. insomma è un po' diverso da ciò che cercavo; spero di essermi spiegata.

Offline mmleoni

  • Global Moderator
  • Instancabile
  • ********
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #13 il: 21 Apr 2014, 20:47:23 »
quanto la avete fatta complicata  ;D ;D   crea un modulo html personalizzato con titolo 'vmPriceDesc' ed inserisci il seguente codice nel template di VM2:



Codice: [Seleziona]
<?php
$mod 
JModuleHelper::getModule('custom''vmPriceDesc');
echo 
JModuleHelper::renderModule($mod);
?>


nota che il tipo di modulo non deve avere il prefisso mod_ . per gli altri dettagli vedi la documentazione sull'helper.


ciao,
marco

mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline marco.loca

  • Nuovo arrivato
  • *
  • Post: 8
    • Mostra profilo
Re:Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #14 il: 02 Mag 2014, 13:55:59 »
Scusate il ritardo con cui rispondo all'ultimo suggerimento ma tra feste e ponti vari erano diversi giorni che non controllavo.

Risponde mia cugina:

Carissimo mmleoni la tua soluzione è proprio quello che serviva!!! SEI UN GRANDE!
infatti il codice da te postato è l'unica soluzione per inserire codice dinamico nella pagina di "Detaglo prodotto"

Faccio solo una precisazione:
siccome nella mia richiesta indicavo che a me serviva far apparire un menu, ho modificato leggermente il tuo codice come riporto qui sotto:

Codice: [Seleziona]
<?php
       $mod 
JModuleHelper::getModule('menu''vmPriceDesc');
       echo 
JModuleHelper::renderModule($mod);
 
?>

La tua soluzione funziona perfettamente.

Un milione di grazie a quanti hanno partecipato e dato suggerimenti.

Il thread è risolto.


Offline mmleoni

  • Global Moderator
  • Instancabile
  • ********
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:[RISOLTO] Aggiungere modulo in pagina "Dettagli Prodotto"
« Risposta #15 il: 02 Mag 2014, 15:14:30 »
menù? forse il cugino si era dimenticato di dirlo ::)


@all
il codice funziona con quasi tutti i moduli, basta solo indicare, come detto, il tipo di modulo senza il prefisso 'mod_' ed il titolo assegnato: provare per credere.


ciao,
marco



mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

 



Web Design Bolzano Kreatif