- Statut : non résolu
- Ce sujet contient 8 réponses, 6 participants et a été mis à jour pour la dernière fois par
DirectMixs, le il y a 16 années et 8 mois.
-
AuteurMessages
-
31 mai 2006 à 16 h 19 min #447782
Bonjour,
Petite traduction en français de wp-contactform épinglé dans la section des plugins.
Après installation du plugin wp-contactform 1.4.3. pour wordpress 2.0 et configuration suivant les recommandations de l’auteur http://ryanduff.net/projects/wp-contactform
il faut juste remplacer wp-contactform.php qui se trouve dans wp-content/plugings/wp-contact-form/wp-contactform.php par ce code :<?php
/*
Plugin Name: WP-ContactForm
Plugin URI: http://ryanduff.net/projects/wp-contactform/
Description: WP Contact Form is a drop in form for users to contact you. It can be implemented on a page or a post. It currently works with WordPress 2.0+
Author: Ryan Duff
Author URI: http://ryanduff.net
Version: 1.4.3
*/
load_plugin_textdomain('wpcf',$path = 'wp-content/plugins/wp-contact-form');
/* Declare strings that change depending on input. This also resets them so errors clear on resubmission. */
$wpcf_strings = array(
'name' => ‘<div class="contactright"><input type="text" name="wpcf_your_name" id="wpcf_your_name" size="30" maxlength="50" value="' . $_POST['wpcf_your_name'] . '" /> (‘ . __(‘requis’, ‘wpcf’) . ‘)</div>‘,
’email’ => ‘<div class="contactright"><input type="text" name="wpcf_email" id="wpcf_email" size="30" maxlength="50" value="' . $_POST['wpcf_email'] . '" /> (‘ . __(‘requis’, ‘wpcf’) . ‘)</div>‘,
‘msg’ => ‘<div class="contactright"><textarea name="wpcf_msg" id="wpcf_msg" cols="35" rows="8" >‘ . $_POST[‘wpcf_msg’] . ‘</textarea></div>‘,
‘error’ => »);
/*
This shows the quicktag on the write pages
Based off Buttonsnap Template
http://redalt.com/downloads
*/
if(get_option(‘wpcf_show_quicktag’) == true) {
include(‘buttonsnap.php’);
add_action(‘init’, ‘wpcf_button_init’);
add_action(‘marker_css’, ‘wpcf_marker_css’);
function wpcf_button_init() {
$wpcf_button_url = buttonsnap_dirname(__FILE__) . ‘/wpcf_button.png’;
buttonsnap_textbutton($wpcf_button_url, __(‘Insert Contact Form’, ‘wpcf’), ‘<!--contact form-->‘);
buttonsnap_register_marker(‘contact form’, ‘wpcf_marker’);
}
function wpcf_marker_css() {
$wpcf_marker_url = buttonsnap_dirname(__FILE__) . ‘/wpcf_marker.gif’;
echo »
.wpcf_marker {
display: block;
height: 15px;
width: 155px
margin-top: 5px;
background-image: url({$wpcf_marker_url});
background-repeat: no-repeat;
background-position: center;
}
« ;
}
}
function wpcf_is_malicious($input) {
$is_malicious = false;
$bad_inputs = array(« r », « n », « mime-version », « content-type », « cc: », « to: »);
foreach($bad_inputs as $bad_input) {
if(strpos(strtolower($input), strtolower($bad_input)) !== false) {
$is_malicious = true; break;
}
}
return $is_malicious;
}
/* This function checks for errors on input and changes $wpcf_strings if there are any errors. Shortcircuits if there has not been a submission */
function wpcf_check_input()
{
if(!(isset($_POST[‘wpcf_stage’]))) {return false;} // Shortcircuit.
$_POST[‘wpcf_your_name’] = stripslashes(trim($_POST[‘wpcf_your_name’]));
$_POST[‘wpcf_email’] = stripslashes(trim($_POST[‘wpcf_email’]));
$_POST[‘wpcf_website’] = stripslashes(trim($_POST[‘wpcf_website’]));
$_POST[‘wpcf_msg’] = stripslashes(trim($_POST[‘wpcf_msg’]));
global $wpcf_strings;
$ok = true;
if(empty($_POST[‘wpcf_your_name’]))
{
$ok = false; $reason = ’empty’;
$wpcf_strings[‘name’] = ‘<div class="contactright"><input type="text" name="wpcf_your_name" id="wpcf_your_name" size="30" maxlength="50" value="' . $_POST['wpcf_your_name'] . '" class="contacterror" /> (‘ . __(‘required’, ‘wpcf’) . ‘)</div>‘;
}
if(!is_email($_POST[‘wpcf_email’]))
{
$ok = false; $reason = ’empty’;
$wpcf_strings[’email’] = ‘<div class="contactright"><input type="text" name="wpcf_email" id="wpcf_email" size="30" maxlength="50" value="' . $_POST['wpcf_email'] . '" class="contacterror" /> (‘ . __(‘required’, ‘wpcf’) . ‘)</div>‘;
}
if(empty($_POST[‘wpcf_msg’]))
{
$ok = false; $reason = ’empty’;
$wpcf_strings[‘msg’] = ‘<div class="contactright"><textarea name="wpcf_msg" id="wpcf_message" cols="35" rows="8" class="contacterror">‘ . $_POST[‘wpcf_msg’] . ‘</textarea></div>‘;
}
if(wpcf_is_malicious($_POST[‘wpcf_your_name’]) || wpcf_is_malicious($_POST[‘wpcf_email’])) {
$ok = false; $reason = ‘malicious’;
}
if($ok == true)
{
return true;
}
else {
if($reason == ‘malicious’) {
$wpcf_strings[‘error’] = « <div style='font-weight: bold;'>You can not use any of the following in the Name or Email fields: a linebreak, or the phrases ‘mime-version’, ‘content-type’, ‘cc:’ or ‘to:’.</div>« ;
} elseif($reason == ’empty’) {
$wpcf_strings[‘error’] = ‘<div style="font-weight: bold;">‘ . stripslashes(get_option(‘wpcf_error_msg’)) . ‘</div>‘;
}
return false;
}
}
/*Wrapper function which calls the form.*/
function wpcf_callback( $content )
{
global $wpcf_strings;
/* Run the input check. */
if(! preg_match(‘|<!--contact form-->|’, $content)) {
return $content;
}
if(wpcf_check_input()) // If the input check returns true (ie. there has been a submission & input is ok)
{
$recipient = get_option(‘wpcf_email’);
$subject = get_option(‘wpcf_subject’);
$success_msg = get_option(‘wpcf_success_msg’);
$success_msg = stripslashes($success_msg);
$name = $_POST[‘wpcf_your_name’];
$email = $_POST[‘wpcf_email’];
$website = $_POST[‘wpcf_website’];
$msg = $_POST[‘wpcf_msg’];
$headers = « MIME-Version: 1.0n »;
$headers .= « From: $name <$email>n »;
$headers .= « Content-Type: text/plain; charset= » » . get_settings(‘blog_charset’) . « »n »;
$fullmsg = « $name wrote:n »;
$fullmsg .= wordwrap($msg, 80, « n ») . « nn »;
$fullmsg .= « Website: » . $website . « n »;
$fullmsg .= « IP: » . getip();
mail($recipient, $subject, $fullmsg, $headers);
$results = ‘<div style="font-weight: bold;">‘ . $success_msg . ‘</div>‘;
echo $results;
}
else // Else show the form. If there are errors the strings will have updated during running the inputcheck.
{
$form = ‘<div class="contactform">
‘ . $wpcf_strings[‘error’] . ‘
<form action="' . get_permalink() . '" method="post">
<div class="contactleft"><label for="wpcf_your_name">‘ . __(‘Votre nom : ‘, ‘wpcf’) . ‘</label></div>‘ . $wpcf_strings[‘name’] . ‘
<div class="contactleft"><label for="wpcf_email">‘ . __(‘Votre courriel :’, ‘wpcf’) . ‘</label></div>‘ . $wpcf_strings[’email’] . ‘
<div class="contactleft"><label for="wpcf_website">‘ . __(‘Votre site :’, ‘wpcf’) . ‘</label></div><div class="contactright"><input type="text" name="wpcf_website" id="wpcf_website" size="30" maxlength="100" value="' . $_POST['wpcf_website'] . '" /></div>
<div class="contactleft"><label for="wpcf_msg">‘ . __(‘Votre Message : ‘, ‘wpcf’) . ‘</label></div>‘ . $wpcf_strings[‘msg’] . ‘
<div class="contactright"><input type="submit" name="Submit" value="' . __('Ok', 'wpcf') . '" id="contactsubmit" /><input type="hidden" name="wpcf_stage" value="process" /></div>
</form>
</div>
<div style="clear:both; height:1px;"> </div>‘;
return str_replace(‘<!--contact form-->‘, $form, $content);
}
}
/*Can’t use WP’s function here, so lets use our own*/
function getip()
{
if (isset($_SERVER))
{
if (isset($_SERVER[« HTTP_X_FORWARDED_FOR »]))
{
$ip_addr = $_SERVER[« HTTP_X_FORWARDED_FOR »];
}
elseif (isset($_SERVER[« HTTP_CLIENT_IP »]))
{
$ip_addr = $_SERVER[« HTTP_CLIENT_IP »];
}
else
{
$ip_addr = $_SERVER[« REMOTE_ADDR »];
}
}
else
{
if ( getenv( ‘HTTP_X_FORWARDED_FOR’ ) )
{
$ip_addr = getenv( ‘HTTP_X_FORWARDED_FOR’ );
}
elseif ( getenv( ‘HTTP_CLIENT_IP’ ) )
{
$ip_addr = getenv( ‘HTTP_CLIENT_IP’ );
}
else
{
$ip_addr = getenv( ‘REMOTE_ADDR’ );
}
}
return $ip_addr;
}
/*CSS Styling*/
function wpcf_css()
{
?>
<style type="text/css" media="screen">
/* Begin Contact Form CSS */
.contactform {
position: static;
overflow: hidden;
}
.contactleft {
width: 25%;
text-align: right;
clear: both;
float: left;
display: inline;
padding: 4px;
margin: 5px 0;
}
.contactright {
width: 70%;
text-align: left;
float: right;
display: inline;
padding: 4px;
margin: 5px 0;
}
.contacterror {
border: 1px solid #ff0000;
}
.contactsubmit {
}
/* End Contact Form CSS */
</style>
<?php
}
function wpcf_add_options_page()
{
add_options_page('Contact Form Options', 'Contact Form', 'manage_options', 'wp-contact-form/options-contactform.php');
}
/* Action calls for all functions */
//if(get_option('wpcf_show_quicktag') == true) {add_action('admin_footer', 'wpcf_add_quicktag');}
add_action('admin_head', 'wpcf_add_options_page');
add_filter('wp_head', 'wpcf_css');
add_filter('the_content', 'wpcf_callback', 7);
?>1 juin 2006 à 9 h 34 min #574665Salut,
J’avais déjà fait la traduction de ce plugin ! Dommage que la section Plugin de WP Fr ne soit pas encore d’actu !
Voici le lien : http://www.wordpress-fr.net/support/viewtopic.php?pid=6083#p6083
1 juin 2006 à 11 h 35 min #574666Qui s’occupe de cette section ? Je ne m’en suis jamais soucié, en fait…
1 juin 2006 à 14 h 17 min #574667Euh, Bah, je ne sais pas non plus !
Ca serait vraiment cool d’avoir une section dans laquelle nous pourrions ajouter des plugins ! Ensuite, je sais qu’il faut surement une personne pour vérifier tout cela (doublon, erreur, traduction, version et autres) ! C’est pour cela que je peux me proposer pour vous donner un coup de pied 😆 Euh de main !
🙂
1 juin 2006 à 14 h 34 min #574668Elle existe déjà en fait cette section : http://www.wordpress-fr.net/extensions/plugins/
Le problème est qu’on ne sait pas trop comment la gérer et de la façon dont elle est présentée bien qu’elle est belle allure, elle risque de devenir vite illisible si d’aventure de nombreux plugin y étaient enregistrés. Enfin il faudrait un moteur de recherche spécial pour les plugins afin d’en faciliter la recherche.
Le problème est identique pour la section thème (voir rubrique « extensions » du site).
18 juillet 2006 à 9 h 33 min #574669désolé de déranger, et il s’agit e mon premier post sur le présent forum.
J’aimerai comprendre un truc.
J’ai téléchargé le plugin en anglais et j’y ai vu le fichier wp-contactform.po que j’ai donc édité puis sauvegarder/compilé dans le répertoire wp-contentpluginswp-contact-form
dans le code du plugin en question on voit bien lappel de la fonction
load_plugin_textdomain(‘wpcf’,$path = ‘wp-content/plugins/wp-contact-form’);
mais il ne prend pas en condiséreation le fichier compilé wp-contactform.mo
7 avril 2007 à 10 h 29 min #574670je vois que des liens mort depuis ta leur ! 😕
7 avril 2007 à 10 h 51 min #574671DirectMixs wrote:je vois que des liens mort depuis ta leur ! 😕C’est quoi une « leur » ? et tu parles de la « leur » à qui ? 😉
7 avril 2007 à 11 h 42 min #574672ben j’ai visité des anciens postes, et plein de liens qui m’intéressés sont dead.
voila tout -
AuteurMessages
- Le forum ‘Dépôts pour les extensions, trucs, astuces’ est fermé à de nouveaux sujets et réponses.