Salve,
Ho un problema che non risolvere con drupal per il semplice fatto che non capisco che approccio seguire. Se usare il modulo webform, se serve php...
Devo fare una cosa che sia semplice e pulita al massimo. Ovvero:
Ho creato un tipo di contenuto "nuovo_cellulare" con il quale inserisco dei nodi con qualche campo cck per pubblicare delle schede di prodotti (cellulari appunto).
Ora in tutti i nodi di tipo "nuovo_cellulare" avrei necessità di inserire un form nella barra destra per chiedere maggiori info sul prodotto (del tipo: "Sei interessato? Contattaci") contenente semplicemente i capi: Nome, cognome, email, telefono, messaggio ed una spunta "accetto la privacy".
Il form deve essere sempre lo stesso ed inviare sempre allo stesso indirizzo email. L'unica cosa che deve fare (e che non riesco) è trascinarsi da qualche parte il nid del nodo o magari il suo titolo. Perchè se io per esempio metto un blocco creato con webform ed un utente mi invia un messaggio per esempio da un nokia X io come posso sapere da che pagina ha inviato il messaggio... E pertanto a quale prodotto è interessato...
Chi mi aiuta!?
Mi sembra che faccia al caso tuo http://drupal.org/project/contact_form_on_node o comunque fai una visitina su http://drupal.org/project/ sicuramente trovi quello con le caratteristiche più appropriate per il tuo caso.
Una cosa è in inglese, ma c'è google traslate :)
Ciao Danziweb
Quello che mi hai inviato non è proprio quello che fa per me. A questo punto ho pensato di creare un form col modulo webform, renderlo utilizzabile come blocco ed inserire quel blocco in ogni nodo di tipo "nuovo_cellulare".
Se un utente va in un nodo di quel tipo e compila il form quando mi arriva la mail non so da che nodo è arrivato e perciò a che prodotto fa riferimento.
Ho trovato questo ma da quello che ho capito crea un link al nodo form, io invece voglio inserirlo in un blocco direttamente nel nodo del prodotto.
Ciao,
potresti fare una cosa molto semplice per sapere il nid del nodo da cui viene inviato. Premessa; non so se possa funzionare, io questa cosa l'ho fatta per un progetto ma avevo delle cose più complesse da gestire per cui l'implementazione è stata molto particolare e non andrebbe bene nel tuo caso.
Crea un campo nascosto e nel valore di default prova dargli:
%get[nid]
Ripeto, non so se possa funzionare... in teoria dovrebbe, dato che sei su un blocco e quindi il nid e node ID della pagina che stai vedendo.
;)
Grazie Gioppy
domani prova con un server remoto per controllare se funziona!
Mi accodo alla discussione ma con un problemino leggermente differente.
Se al form (webform) ci arrivo tramite un link "chiedi informazioni sul prodotto" come faccio a fare riferimento al nodo da cui ho linkato?
cREDO CHE DOVRESTI GUARDARE IL LINK POSTATO POCO SOPRA...
Caspita che stupido, non avevo proprio fatto caso a quel link.
Effettivamente fa quel che servirebbe a me ma ho poi risolto in maniera diversa anche se concettualmente simile.
Posto qui come ho risolto così che possa servire d'aiuto ad altri.
--- START ---
Per esigenze di layout\contenuto sto utilizzando contemplate per personalizzare l'output del nodo ed ho creato al mio nuovo tipo di contenuto un field noderefernce (field_info) che linka al mio webform "Informazioni e prenotazioni".
Per passare le informazioni del nodo al webform ho agito in questa maniera:
tramite contemplate ho editato il corpo del nodo ed ho trasformato il link al webform in modo tale che passasse una variabile tramite $_GET.
Ecco come:
<a href="/node/<?php print $node->field_info[0]['safe']['nid'] ?>?info=<?php print drupal_get_title() ?>"><?php print $node->field_info[0]['safe']['title'] ?></a>
Cosa significa:
Con
<?php print $node->field_info[0]['safe']['nid'] ?>
ottengo il nid del webform e combinandolo con /node/ costruisco il link al nodo del webform.Con
?info=<?php print drupal_get_title() ?>
assegno alla varibile ?info il titolo (<?php print drupal_get_title() ?>
) del nodo in cui mi trovo.Invece
<?php print $node->field_info[0]['safe']['title'] ?>
è il titolo del link al webform.Per chi non ha necessità particolari può creare un qualcosa di più "statico" semplicemente con:
<a href="/node/miowebform?info=<?php print drupal_get_title() ?>">Informazioni e prenotazioni.</a>
A questo punto, nel webform, ho creato un campo nascosto assegnandogli come valore di default:
%get[info]
Così facendo, cliccando su "Informazioni e prenotazioni" passerò tramite %get[info] il titolo del mio nodo al webform e di conseguenza al destinatario della mail.
--- END ---
Mi scuso per la "verbosità" ma stasera sono veramente stanco. Spero di essere stato ugualmente chiaro, eventualmente vedrò di essere più "umano" a mente riposata. :-)
Non so se è la soluzione più elegante ma è sicuramente efficace ed il concetto è applicabile ad implementazioni di diverso tipo. Ad esempio, invece di contemplate, si può applicare lo stesso concetto andando a modificare un tpl ad hoc per un dato nodo o tipo di contenuto ed aggiungendo direttamente nel template il link con la variabile.
Ovviamente sono accetti consigli e "rimproveri" da chi è più bravo. :-)
@fra_ore_90: tu poi hai risolto?
Ciao GP
Più o meno diciamo che ho risolto. Ti spiego. Ho trovato questo post poi grazie al consiglio di gioppy ho creato un campo nascosto nel forum ed ho impostato come valore predefinito %get[q]... In questo modo mi prende il percorso (tipo: nodo/121) del nodo dal quale invio la richiesta.
Diciamo che riesco ad ottenere un dato un po' striminzito. Sarebbe stato più bello ottenere qualcosa tip:o Il prodotto interessato è: Nokia 1010 in cui il nome del prodotto (Nokia 1010 in questo caso) sia un bel link al nodo del prodotto stesso... piuttosto che solo il nid del prodotto... ma alla fine amen, mi accontento non conoscendo php...
se stai usando pathauto potresti usare %request[q] e dovresti ottenere un qualcosa di più umano in base a come hai configurato pathauto...ad esempio node/121 diventerebbe cellulari/titolo-del-nodo
Questo è interessante... appena ho 2 minuti liberi provo se può funzionare... avere l'url del nodo piuttosto che il nid è molto meglio...
;)
potreste provare con Feedback http://drupal.org/project/feedback con piccola modifica