Il mio problema è questo: ho un form su un sito wordpress i cui dati vengono inviati per email, funziona tutto bene, ma vorrei includere the_title() o ancor meglio il titolo di un singolo portfolio nel testo dell'email o come oggetto.. Questo è il form:
Codice:
/**************************************
Contact Form
**************************************/
if ( ! function_exists( 'be_contact_form' ) ) {
function be_contact_form($atts,$content) {
extract( shortcode_atts( array (
'input_bg_color' => '',
'input_color' => '',
'input_border_color' => '',
'button_bg_color' => '',
'button_color' => ''
), $atts ) );
$output = '';
$styles = $button_styles = 'style="';
if( isset( $input_bg_color ) && !empty( $input_bg_color) ) {
$styles .= 'background-color: '.$input_bg_color.';';
}
if( isset( $input_color ) && !empty( $input_color) ) {
$styles .= 'color: '.$input_color.';';
}
if( isset( $input_border_color ) && !empty( $input_border_color) ) {
$styles .= 'border-color: '.$input_border_color.';';
}
if( isset( $button_bg_color ) && !empty( $button_bg_color) ) {
$button_styles .= 'background-color: '.$button_bg_color.' !important;';
}
if( isset( $button_color ) && !empty( $button_color) ) {
$button_styles .= 'color: '.$button_color.' !important;';
}
$styles .= '"';
$button_styles .= '"';
$output .= '<div class="contact_form contact_form_module">
<form method="post" class="contact">
<table>
<tr>
<td>
<fieldset class="contact_fieldset">
<input type="text" name="contact_name" class="txt autoclear" placeholder="'.__('*Nome e Cognome:','be-themes').'" '.$styles.' />
</fieldset></td>
<td>
<fieldset class="contact_fieldset">
<input type="text" name="contact_email" class="txt autoclear" placeholder="'.__('*Email:','be-themes').'" '.$styles.' />
</fieldset></td></tr>
<tr>
<td>
<fieldset class="contact_fieldset">
<input type="text" name="contact_tel" class="txt autoclear" placeholder="'.__('Telefono:','be-themes').'" '.$styles.' />
</fieldset></td>
<td>
<fieldset class="contact_address">
<input type="text" name="contact_subject" class="txt autoclear" placeholder="'.__('Indirizzo:','be-themes').'" '.$styles.' />
</fieldset></td></tr>
<tr>
<td colspan="2">
<fieldset class="contact_fieldset">
<input style="width:99%;" type="text" name="contact_comment" class="txt autoclear" placeholder="'.__('*Richiesta:','be-themes').'" '.$styles.' />
</fieldset></td></tr>
<tr>
<td colspan="2">
<fieldset class="contact_fieldset">
<input style="min-width:30px;" checked="checked" id="checkbox" type="checkbox" name="checkbox" value="yes" />
<label for="checkbox">Si, acconsento al trattamento dei miei dati personali secondo l’<a id="linkprivacy" href="http://www.silviaalessandri.it/informativa-privacy/">informativa sulla Privacy</a></label>
</fieldset></td></tr>
<tr>
<td colspan="2" style="text-align:center;">
<fieldset class="contact_fieldset submit-fieldset">
<input style="min-width: 150px;border: 1px solid #000;float: right;color: #000;font-weight: bold;font-size: 15px;}" type="submit" name="contact_submit" value="'.__('Invio','be-themes').'" class="contact_submit" '.$button_styles.' />
<div class="contact_loader"></div>
</fieldset>
</td></tr>
<div class="contact_status be-notification"></div>
</table>
</form>
</div>';
return $output;
}
add_shortcode('contact_form','be_contact_form');
}
E questo è il controllo:
Codice:
/* --------------------------------------------- */
// Function for processing contact form submission
/* --------------------------------------------- */
add_action( 'wp_ajax_nopriv_contact_authentication', 'be_themes_contact_authentication' );
add_action( 'wp_ajax_contact_authentication', 'be_themes_contact_authentication' );
function be_themes_contact_authentication() {
global $be_themes_data;
extract($_POST);
if(empty($contact_name) || empty($contact_email) || empty($contact_comment) || empty($contact_subject) ) {
$result['status']="error";
$result['data']= __('Attenzione, tutti i campi sono obbligatori','be-themes');
}
else if(!preg_match ('/^[\w.-]+@[\w.-]+\.[A-Za-z]{2,6}$/', $contact_email)) {
$result['status']="error";
$result['data']=__('Inserire un indirizzo email valido','be-themes');
}
else if(!empty($contact_name) && !empty($contact_email) && !empty($contact_comment) && !empty($contact_subject) ) {
if ( !empty( $be_themes_data['mail_id'] ) ) {
$to = $be_themes_data['mail_id'];
} else {
$to = get_option('admin_email');
}
$message= "Questa email ti è stata inviata da " . $_POST['contact_name'] . ", " . $_POST['contact_subject'] . " " . $_POST['contact_tel'] . ". MESSAGGIO: " . $_POST['contact_comment'];
$subject= $contact_name;
$from = $contact_email;
$headers = "From:" . $from;
mail($to, $subject, $message, $headers);
$result['status']="success";
$result['data']=__('Il tuo messaggio è stato inviato con successo!
Ti ricontatteremo al più presto.','be-themes');
}
header('Content-type: application/json');
echo json_encode($result);
die();
}
Qualcuno può aiutarmi? grazie dell'attenzione :)