Essayes de mettre la fonction mesdates_contact_infos_supplementaires() dans mes_options.php
(j'avais un doute tout à l'heure)
Si tu modifies un fichier du plugin ( comme contact_fr.php ) tu prends le risque de perdre tes modifs lors d'une mise à jour du plugin.
Le dossier squelettes te permet de faire toutes les modifs ou surcharges que tu souhaites sans risque.
Merci beaucoup Eric d'avoir pris le temps de me répondre. Malheureusement, il ne se passe rien.
Je résume mes actions pour m'assurer d'avoir bien compris.
Création d'un fichier config/mes_options.php
<?php
$GLOBALS['spip_pipeline']['contact_infos_supplementaires'] .= '|mesdates_contact_infos_supplementaires';
?>
Création d'un fichier squelettes/mes_fonctions.php
<?php
function mesdates_contact_infos_supplementaires($champs){
// Le paramètre contient tous les champs par défaut avec :
// clé = le "name" du champ
// valeur = le titre du champ
$champs['datearrivee'] = _T('date_arrivee');
$champs['datedepart'] = _T('date_depart');
return $champs;
}
?>
Création d'un fichier squelettes/lang/local_fr.php (_peut-être dois-je les intégrer directement au fichier langue du plugin contact/lang/contact_fr.php ?_)
<?php
$GLOBALS[$GLOBALS['idx_lang']] = array(
'date_arrivee' => 'Date d\'arrivée',
'date_depart' => 'Date de départ',
);
?>
J'ai désactivé et réactivé le cache bien que j'ai fait ses changement sur une sauvegarde en local sur laquelle je n'avais pas modifié le plugin auparavant... et vidé le cache mais rien ne se passe...
Merci encore pour votre aide.
Le 23 mars 2010 14:55, Eric L <elurand@free.fr <mailto:elurand@free.fr>> a écrit :
Le 23/03/2010 13:39, Happy Mama a écrit :
(...)
J'ai installé le plugin "Formulaire de contact avançé" ces
jours-ci afin de proposer un formulaire plus complet. J'aurais
toutefois besoin d'y ajouter deux champs : date d'arrivée et
date de départ.
J'ai lu la documentation complète
(Formulaire de contact avancé - SPIP-Contrib) et
ai cherché des explications sur ce qu'est un pipeline
(http://programmer.spip.org/Qu-est-ce-qu-un-pipeline)
(http://doc.spip.org/@Les-points-d-entree-pipelines#liste-points-entree),
mais je dois avouer que je ne suis pas très à l'aise avec
cette notion de pipeline. Aussi, je ne parviens pas à ajouter
les 2 champs...
Voici la procédure que j'ai suivi...
_
*ajout dans le fichier plugin.xml* du dossier contact
contenant les fichiers du plugin "formulaire de contact avançé" :_
<pipeline>
<nom>contact_infos_supplementaires</nom>
<inclure>contact_datearri.php</inclure>
</pipeline>
Cette procédure est indiquée si tu désires écrire un plugin
utilisant le plugin contact avancé, pas pour modifier le plugin
lui même.
Dans ton cas, il vaudrait mieux écrire dans ton fichier
config/mes_options.php (à créer s'il n'existe pas ) :
$GLOBALS['spip_pipeline']['contact_infos_supplementaires'] .=
'|mesdates_contact_infos_supplementaires';
_*création d'un fichier contact_datearri.php* dans le dossier
contact (donc au même niveau que le fichier plugin.xml_
<?php
function datearri_contact_infos_supplementaires($champs){
// Le paramètre contient tous les champs par défaut avec :
// clé = le "name" du champ
// valeur = le titre du champ
$champs['contact_datearri'] = 'Date arrivee';
// Si votre site est multilingue, il faut utiliser une
chaine de langue
$champs['civilite'] = _T('une_chaine_de_langue_pour_civilite');
return $champs;
}
?>
Or, il ne se passe rien de nouveau... malgré le fait que j'ai
vidé le cache...
Après avoir modifié un plugin vider le cache ne suffit pas, il
faudrait a minima le désactiver puis le réactiver pour que soit
pris en compte tes modifications.
Mais pour ton cas toujours, ajoutes dans ton fichier
squelettes/mes_fonctions.php (à créer s'il n'existe pas ) :
function mesdates_contact_infos_supplementaires($champs){
// Le paramètre contient tous les champs par défaut avec :
// clé = le "name" du champ
// valeur = le titre du champ
$champs['datearrivee'] = _T('date_arrivee');
$champs['datedepart'] = _T('date_depart');
return $champs;
}
puis, dans ton fichier squelettes/lang/local_fr.php (à créer s'il
n'existe pas ) :
<?php
// This is a SPIP language file -- Ceci est un fichier langue de
SPIP
$GLOBALS[$GLOBALS['idx_lang']] = array(
'date_arrivee' => 'Date d\'arrivée',
'date_depart' => 'Date de départ',
);
?>
puis vide le cache et... ça devrait le faire !
Éric
_______________________________________________
liste spip
spip@rezo.net <mailto:spip@rezo.net> - désabonnement : envoyer un
mail à spip-off@rezo.net <mailto:spip-off@rezo.net>
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net
Documentation de SPIP : http://www.spip.net/
Irc : de l'aide à toute heure : http://spip.net/irc