-
Notifications
You must be signed in to change notification settings - Fork 0
Home
jprieton edited this page Nov 30, 2015
·
4 revisions
El formulario de suscripción se envía a usando ajax a http://tusitio.com/wp-admin/admin-ajax.php, el formulario de contacto será enviado al correo definido en las opciones del plugin
Los campos que se enviarán por correo se definen en el functions.php así
<?php
// jQuery Forms
add_action('wp_enqueue_scripts', function() {
wp_enqueue_script('jquery-form');
});
?>Formulario de contacto
<form id="subscriber_form" method="post">
<label for="subscriber_name">Nombres</label> <!-- Opcional -->
<input type="text" name="subscriber_name" id="subscriber_name">
<label for="subscriber_email">Email</label> <!-- Requerido -->
<input type="email" name="subscriber_email" id="subscriber_email">
<?php wp_nonce_field('add_subscriber'); ?> <!-- Requerido -->
<input type="hidden" name="action" value="add_subscriber"> <!-- Requerido -->
<button type="submit" id="send_subscriber">Enviar</button>
</form>Si no está definido admin_url
<script>
var admin_url = '<?php admin_url('admin-ajax.php'); ?>';
</script>Script para enviar el formulario usando ajaxForm
<script>
jQuery(function () {
jQuery('#subscriber_form').ajaxForm({
url: admin_url,
data: {
},
dataType: 'json',
beforeSubmit: function (formData, jqForm, options) {
// optionally process data before submitting the form via AJAX
jQuery('#send_subscriber').attr('disabled', '').text('Enviando');
},
success: function (response, statusText, xhr, $form) {
// code that's executed when the request is processed successfully
if (response.success) {
jQuery('#send_subscriber').removeAttr('disabled').text('Éxito');
} else {
jQuery('#send_subscriber').removeAttr('disabled').text('Falló');
}
}
});
});
</script>