SlideShare una empresa de Scribd logo
Crear formularios
front-end con
Advanced Custom
Fields
esther solà
Campos personalizados o custom fields
nativos de WordPress
Advanced Custom Fields permite añadir
multitud de campos personalizados
avanzados
Tipos de campo:
● De contenido:
texto, número, área de texto, url, web, imagen, archivo….
● De selección:
select, radio, checkbox..
● De relación:
enlace a página, objeto post, relación, taxonomía...
● De layout:
mensaje, pestaña, acordeón...
Asociados a:
● Entrada, tipo de entrada,
plantilla, estado, formato…
● Página, tipo o plantilla de página
● Categorías o etiqueta
● Usuarios, Widgets, Menús,
Adjuntos….
Custom Fields + Custom Post Type
La combinación ideal para crear sitios en
WordPress avanzados, 100% adaptados a
la arquitectura de la información necesaria.
Formularios en ACF
acf_form_head();
Añade la funcionalidad necesaria al formulario: estilos, scripts,
validación…
Se añade antes de get_header();
acf_form();
Crea un formulario en el front-end de la web, para añadir o editar registros.
acf_register_form();
Registra un formulario que puede utilizarse en distintos lugares de la web
Ejemplo: reseñas de libros
● Tipo de entrada personalizada: reseñas
● Taxonomía personalizada: género
● Campos personalizados para datos de la reseña, del autor y del
libro.
#WCES - Crear formularios front-end con Advanced Custom Fields
#WCES - Crear formularios front-end con Advanced Custom Fields
Formulario para nuevos registros
<?php
acf_form_head();
acf_form(array(
'post_id' => 'new_post',
'new_post' => array(
'post_type' => 'review',
'post_status' => 'publish'
),
)); ?>
Formularios en ACF
acf_form( $settings);
'post_id'
'new_post'
'field_groups'
'fields'
'post_title'
'post_content'
'form'
'form_attributes'
'return'
'html_before_fields'
'html_after_fields'
'submit_value'
'updated_message'
'label_placement'
'instruction_placement'
'field_el'
'uploader'
'honeypot'
'html_updated_message'
'html_submit_button'
'html_submit_spinner'
'kses'
Formularios en ACF
acf_form(): Mostrar sólo algunos campos
<?php
acf_form(array(
'post_id' => 'new_post',
'post_title' => true,
'fields' => array( 'field_5ea3b4f2575c3','field_5ea3b500575c4'),
'new_post' => array(
'post_type' => 'review',
),
));
?>
¿Cómo saber el nombre de cada campo?
Formulario para editar registros
<?php
acf_form_head();
acf_form(array(
'post_id' => $postid,
'post_title' => false,
'post_content' => false,
'updated_message' => 'Se ha actualizado
correctamente',
'submit_value' => 'Guardar Cambios'
));
?>
Filtros & Acciones
acf/pre_submit_form
Filtro que se ejecuta justo después que se envíe el formulario, y antes de que se guarden los datos.
acf/pre_save_post
Se ejecuta justo después del filtro pre_submit_form y antes de guardar los datos.
acf/save_post
Esta acción se ejecuta al guardar los datos del formulario.
acf/submit_form
Se ejecuta justo después de guardar los datos.
Enviar un email al crear un nuevo registro
add_action('acf/save_post', 'my_save_post');
function my_save_post( $post_id ) {
if( get_post_type($post_id) !== 'review' ) {
return;
}
if( is_admin() ) {
return;
}
wp_mail( 'destinatario@destino.com', 'asunto', 'mensaje', $cabeceras
);
}
Otros filtros ACF
acf/prepare_field
acf/validate_value
acf/update_field
…. todos los filtros en https://www.advancedcustomfields.com/resources/#filters
acf/update_value
acf/load_field
acf/load_value
Modificar etiqueta del título o contenido
add_filter('acf/prepare_field/name=_post_title', 'my_acf_prepare_field');
add_filter('acf/prepare_field/name=_post_content', 'my_acf_prepare_field');
add_filter('acf/prepare_field/name=_post_title', 'my_acf_prepare_field');
function my_acf_prepare_field( $field ) {
if ( is_page_template('editar-review.php') ) {
$field['label'] = "Título de la reseña";
}
if ( $field ) {
return $field;
} else {
exit;
}
}
<?php
function my_acf_update_value( $value, $post_id, $field ) {
if( is_string($value) ) {
$value = str_replace( 'Old Company Name', 'New Company Name',
$value );
}
return $value;
}
add_filter('acf/update_value', 'my_acf_update_value', 10, 3);
?>
Reemplazar texto o caracter
Resumiendo
Custom Post Types + Custom Fields + ACF forms
= Contenido generado por el usuario
= Facilidad de uso
= Muy potente para integrar filtros y acciones personalizadas.
Soy desarrolladora web
especializada en WordPress,
Genesis Framework y
WooCommerce
Gracias.
www.esthersola.com · www.tranquilidadwp.com · www.zonadpw.com
@esther_sola_

Más contenido relacionado

ODP
07 restricciones en atributos
PDF
2 3 arrays_php
PPT
Dce2 Introduccion Asp.Net
PDF
CSA - Web Parts en SharePoint 2010
KEY
Introducción a DJango
PDF
Desarrollo de Themes de WordPress desde cero. @DarioBF en @WPBilbao
PDF
Vistiendo a WordPress
07 restricciones en atributos
2 3 arrays_php
Dce2 Introduccion Asp.Net
CSA - Web Parts en SharePoint 2010
Introducción a DJango
Desarrollo de Themes de WordPress desde cero. @DarioBF en @WPBilbao
Vistiendo a WordPress

Similar a #WCES - Crear formularios front-end con Advanced Custom Fields (20)

PPSX
Sacale partido al personalizador
PPT
06 validación
PPTX
Funciones
PDF
2009 05-07-tutorial asp.net
PDF
Instructivo themewordpress
ODP
Presentacion
PDF
Customizer: configurando un sitio en tiempo real
PDF
Clases CSS en WordPress
DOCX
Informe grupal f_arinango_ cuenca
PDF
Doctrine symfony
PDF
Doctrine symfony
PPSX
Sesion n°6
PPTX
APIREST LARAVEL Y PHP.pptx
PDF
Código mantenible, en Wordpress.
PPT
fonciones
PDF
Clase 10 formularios
PDF
J M E R L I N P H P
PDF
Jquery para principianes
PDF
Cómo crear plugins para Wordpress
Sacale partido al personalizador
06 validación
Funciones
2009 05-07-tutorial asp.net
Instructivo themewordpress
Presentacion
Customizer: configurando un sitio en tiempo real
Clases CSS en WordPress
Informe grupal f_arinango_ cuenca
Doctrine symfony
Doctrine symfony
Sesion n°6
APIREST LARAVEL Y PHP.pptx
Código mantenible, en Wordpress.
fonciones
Clase 10 formularios
J M E R L I N P H P
Jquery para principianes
Cómo crear plugins para Wordpress
Publicidad

Último (20)

PDF
MU_Gestion_Internacional_Edificacion_Construccion_MBA.pdf
PDF
como me enamore de ti (1).pdf.pdf_20250813_191720_0000.pdf
DOCX
TRABAJO DE ESTRATEGIA MAXIMILIANO ELIZARRARAS.docx
PPTX
presentacion_energias_renovables_renovable_.pptx
PPTX
PARTE DE UNA PC _ SEIRY.pptx.........................
PPTX
FUNCIONES DE CLASSROOM EN EL FUNCIONAMIENTO ESCOLAR
PDF
[Ebook gratuito] Introducción a la IA Generativa, Instalación y Configuración...
PDF
Libro de Oraciones guia virgen peregrina
PDF
LA INTELIGENCIA ARTIFICAL SU HISTORIA Y EL FUTURO
PDF
.GUIA DE GUIA DE TRABAJO NUEVO TESTAMENTO.pdf
PPTX
PRESENTACION NIA 220 idhsahdjhJKSDHJKSHDJSHDJKHDJHSAJDHJKSAHDJkhjskdhasjdhasj...
PPTX
Plantilla-Hardware-Informático-oficce.pptx
PPT
redes.ppt unidad 2 perteneciente a la ing de software
PPTX
presentación sobre Programación SQL.pptx
PDF
CAPACITACIÓN MIPIG - MODELO INTEGRADO DE PLANEACIÓN Y GESTIÓN
PPTX
Charla 3 - La gestión de servicios de TI.pptx
PPTX
Qué es Google Classroom Insertar SlideShare U 6.pptx
PDF
ACCESORIOS Y ATAJOS WINDOWS empleados en Windows
PDF
Webinar Jscrambler & Integrity360 Update
PDF
aguntenlos femboysssssssssssssssssssssssssssssss
MU_Gestion_Internacional_Edificacion_Construccion_MBA.pdf
como me enamore de ti (1).pdf.pdf_20250813_191720_0000.pdf
TRABAJO DE ESTRATEGIA MAXIMILIANO ELIZARRARAS.docx
presentacion_energias_renovables_renovable_.pptx
PARTE DE UNA PC _ SEIRY.pptx.........................
FUNCIONES DE CLASSROOM EN EL FUNCIONAMIENTO ESCOLAR
[Ebook gratuito] Introducción a la IA Generativa, Instalación y Configuración...
Libro de Oraciones guia virgen peregrina
LA INTELIGENCIA ARTIFICAL SU HISTORIA Y EL FUTURO
.GUIA DE GUIA DE TRABAJO NUEVO TESTAMENTO.pdf
PRESENTACION NIA 220 idhsahdjhJKSDHJKSHDJSHDJKHDJHSAJDHJKSAHDJkhjskdhasjdhasj...
Plantilla-Hardware-Informático-oficce.pptx
redes.ppt unidad 2 perteneciente a la ing de software
presentación sobre Programación SQL.pptx
CAPACITACIÓN MIPIG - MODELO INTEGRADO DE PLANEACIÓN Y GESTIÓN
Charla 3 - La gestión de servicios de TI.pptx
Qué es Google Classroom Insertar SlideShare U 6.pptx
ACCESORIOS Y ATAJOS WINDOWS empleados en Windows
Webinar Jscrambler & Integrity360 Update
aguntenlos femboysssssssssssssssssssssssssssssss
Publicidad

#WCES - Crear formularios front-end con Advanced Custom Fields