Regola per impostare un campo link

3 contenuti / 0 new
Ultimo contenuto
Regola per impostare un campo link

Ho un tipo di contenuto gruppo con tre campi per regione, provincia e comune ed un campo mappa nel quale vorrei memorizzare (con Rules) un link alla mappa sulla base dei dati inseriti nei tre campi precedenti.

Ho impostato questa regola:

{ "rules_crea_link_mappa" : {
    "LABEL" : "Crea link alla mappa quando salva",
    "PLUGIN" : "reaction rule",
    "TAGS" : [ "gruppi" ],
    "REQUIRES" : [ "rules" ],
    "ON" : [ "node_insert", "node_update" ],
    "IF" : [
      { "node_is_of_type" : { "node" : [ "node" ], "type" : { "value" : { "gruppo" : "gruppo" } } } },
      { "data_is_empty" : { "data" : [ "node:field-mappa:url" ] } }
    ],
    "DO" : [
      { "data_set" : { "data" : [ "node:field-mappa:title" ], "value" : "Link alla mappa" } },
      { "data_set" : {
          "data" : [ "node:field-mappa:url" ],
          "value" : "https:\/\/maps.google.it\/maps?q=\u0022[node:field-indirizzo], [node:field-comune], [node:field-provincia]\u0022"
        }
      },
      { "drupal_message" : { "message" : "E\u0027 stato aggiunto un \u003Ca target=\u0022_blank\u0022 href=\u0022https:\/\/maps.google.it\/maps?q=[node:field-indirizzo],+[node:field-comune],+[node:field-provincia]\u0022\u003Elink alla mappa google\u003C\/a\u003E. " } }
    ]
  }
}

La regola funziona (nel senso che viene attivata correttamente) ma l'azione "data_set" non viene eseguita, mentre invece viene eseguita correttamente l'azione "drupal_message".

Come posso risolvere? Qualche dritta?

Grazie 1000

Drupal Version:

Credo ci sia un bug in Rules (vedi qui): se nel parametro url ci sono dei token l'azione non viene eseguita.

Strade alternative?

Se il campo è di tipo link oppure url non è possibile inserire dei valori contenenti token tramite Rules.

Ho risolto utilizzando un campo di tipo testo: con Rules assegno un valore con tutti i token che mi servono e poi, faccio l'override della funzione per temizzare l'output del campo come un link.