shahinshams 0 ارسال شده در تیر 94 گزارش بازنشر ارسال شده در تیر 94 دوستان چجوری میشه آدرس ایمیل دریافت کننده رو تغییر داد، اینجور که تو کد اومده انگار از ایمیل مدیر سایت استفاده میشه اما میخوام از ایمیلی به جز ایمیل مدیر سایت استفاده کنم، یعنی یه ایمیل دیگه براش تعریف بشه و محتویات برای اون ایمیل ارسال بشن private function send_mail() { $email_to = get_option('admin_email'); $email_subject = __('Contact Form Message from', 'dv').' '.get_bloginfo('name'); $email_message = __('Name:', 'dv').' '.$this->userinput['name']."\n\n". __('Email:', 'dv').' '.$this->userinput['email']."\n\n". __('Message:', 'dv').' '.$this->userinput['message']; return wp_mail($email_to, $email_subject, $email_message); } نقل قول لینک به ارسال
shahinshams 0 ارسال شده در تیر 94 مالک گزارش بازنشر ارسال شده در تیر 94 دوستان ویرایش این کد خیلی سخته؟ که هیچکسی ج نمیده نقل قول لینک به ارسال
shahinshams 0 ارسال شده در تیر 94 مالک گزارش بازنشر ارسال شده در تیر 94 راستش به من گفته بودن این انجمن خیلی فعاله اما از صبح دارم سرمیزنم کسی پست منو ج نمیده نقل قول لینک به ارسال
فرحان 997 ارسال شده در تیر 94 گزارش بازنشر ارسال شده در تیر 94 سلام.سوالتونو همین امروز پرسیدین کمی صبر داشته باشید.جوابتون خیلی واضحه که ! توی خط دومget_option('admin_email')رو با :'example@mail.com'تعویض کنید.exampl@mail.com هم همون ایمیل هدفتونه 1 نقل قول لینک به ارسال
shahinshams 0 ارسال شده در تیر 94 مالک گزارش بازنشر ارسال شده در تیر 94 ممنونراستش دیگه اینو خودم امتحان کرده بودم دیدین یه سری خطا برای فرم ها تعریف میشه؟ مثلا با موفقیت ارسال شد یا.... وقتی ایمیل رو جایگزین admin_email میکنم میگه مشکلی پیش آمده، از طریق دیگری در تماس باشیداینم کل کدای مربوط به فرم<?php/*-----------------------------------------------------------------------------------*//* AJAX Contact Form - mts_contact_form()/*-----------------------------------------------------------------------------------*/class mtscontact { public $errors = array(); public $userinput = array('name' => '', 'email' => '', 'message' => ''); public $success = false; public function __construct() { add_action('wp_ajax_mtscontact', array($this, 'ajax_mtscontact')); add_action('wp_ajax_nopriv_mtscontact', array($this, 'ajax_mtscontact')); add_action('init', array($this, 'init')); add_action('wp_enqueue_scripts', array($this, 'register_scripts')); } public function ajax_mtscontact() { if ($this->validate()) { if ($this->send_mail()) { echo json_encode('success'); wp_create_nonce( "mtscontact" ); // purge used nonce } else { // wp_mail() unable to send $this->errors['sendmail'] = __('An error occurred. Please contact site administrator.', 'dv'); echo json_encode($this->errors); } } else { echo json_encode($this->errors); } die(); } public function init() { // No-js fallback if ( !defined( 'DOING_AJAX' ) || !DOING_AJAX ) { if (!empty($_POST['action']) && $_POST['action'] == 'mtscontact') { if ($this->validate()) { if (!$this->send_mail()) { $this->errors['sendmail'] = __('An error occurred. Please contact site administrator.', 'dv'); } else { $this->success = true; } } } } } public function register_scripts() { wp_register_script('mtscontact', get_template_directory_uri() . '/js/contact.js', true); wp_localize_script('mtscontact', 'mtscontact', array('ajaxurl' => admin_url('admin-ajax.php'))); } private function validate() { // check nonce if (!check_ajax_referer( 'mtscontact', 'mtscontact_nonce', false )) { $this->errors['nonce'] = __('Please try again.', 'dv'); } // check honeypot // must be empty if (!empty($_POST['mtscontact_captcha'])) { $this->errors['captcha'] = __('Please try again.', 'dv'); } // name field $name = trim(str_replace(array("\n", "\r", "<", ">"), '', strip_tags($_POST['mtscontact_name']))); if (empty($name)) { $this->errors['name'] = __('Please enter your name.', 'dv'); } // email field $useremail = trim($_POST['mtscontact_email']); if (!is_email($useremail)) { $this->errors['email'] = __('Please enter a valid email address.', 'dv'); } // message field $message = strip_tags($_POST['mtscontact_message']); if (empty($message)) { $this->errors['message'] = __('Please enter a message.', 'dv'); } // store fields for no-js $this->userinput = array('name' => $name, 'email' => $useremail, 'message' => $message); return empty($this->errors); } private function send_mail() { $email_to = get_option('admin_email'); $email_subject = __('Contact Form Message from', 'dv').' '.get_bloginfo('name'); $email_message = __('Name:', 'dv').' '.$this->userinput['name']."\n\n". __('Email:', 'dv').' '.$this->userinput['email']."\n\n". __('Message:', 'dv').' '.$this->userinput['message']; return wp_mail($email_to, $email_subject, $email_message); } public function get_form() { wp_enqueue_script('mtscontact'); $return = ''; if (!$this->success) { $return .= '<form method="post" action="" id="mtscontact_form" class="contact-form"> <input type="text" name="mtscontact_captcha" value="" style="display: none;" /> <input type="hidden" name="mtscontact_nonce" value="'.wp_create_nonce( "mtscontact" ).'" /> <input type="hidden" name="action" value="mtscontact" /> <label for="mtscontact_name">'.__('Name', 'dv').'</label> <input type="text" name="mtscontact_name" value="'.esc_attr($this->userinput['name']).'" id="mtscontact_name" /> <label for="mtscontact_email">'.__('Email', 'dv').'</label> <input type="text" name="mtscontact_email" value="'.esc_attr($this->userinput['email']).'" id="mtscontact_email" /> <label for="mtscontact_message">'.__('Message', 'dv').'</label> <textarea name="mtscontact_message" id="mtscontact_message">'.esc_textarea($this->userinput['message']).'</textarea> <input type="submit" value="'.__('Send', 'dv').'" id="mtscontact_submit" /> </form>'; } $return .= '<div id="mtscontact_success"'.($this->success ? '' : ' style="display: none;"').'>'.__('Your message has been sent.', 'dv').'</div>'; return $return; } public function get_errors() { $html = ''; foreach ($this->errors as $error) { $html .= '<div class="mtscontact_error">'.$error.'</div>'; } return $html; }}$mtscontact = new mtscontact;// Simple wrappers, to be used in template filesfunction mts_contact_form() { global $mtscontact; echo $mtscontact->get_errors(); // if there are any echo $mtscontact->get_form();}function mts_get_contact_form() { // this could be used for shortcode support global $mtscontact; return $mtscontact->get_errors() . $mtscontact->get_form();}?> نقل قول لینک به ارسال
فرحان 997 ارسال شده در تیر 94 گزارش بازنشر ارسال شده در تیر 94 کل get_option عوض کردین یا فقط استرینگ admin_email ؟طبق راهنمای وردپرس کدی که دادم باید درست کار کنه:https://codex.wordpr...ference/wp_mailاگر باز هم موفق نشدید میتونید از توی php.net راهنمای تابع mail رو بخونید و ایمیل رو مستقیم ارسال کنید.موفق باشید. نقل قول لینک به ارسال
shahinshams 0 ارسال شده در تیر 94 مالک گزارش بازنشر ارسال شده در تیر 94 اینجوری دیگه$email_to = get_option('email@man');درست شد آقا ممنوناینجوری درست بود$email_to = 'email@man'; نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .