- WordPress 6.9.4 (es_ES) with Kadence theme - Homepage: Hero, La Asociación, Pilares, Beneficios, Eventos, Miembros, Hazte Miembro, Contacto - Brand identity: #13294b navy, #a12932 burgundy, #c69c48 gold - Fonts: Raleway (headings) + Source Sans 3 (body) + Lato (UI) - Plugins: Kadence Blocks, Polylang, Contact Form 7 - Custom CSS with full brand styling and responsive layout - HTTPS enforced via wp-config.php proxy detection
47 lines
982 B
PHP
47 lines
982 B
PHP
<?php
|
|
|
|
trait WPCF7_SWV_SchemaHolder {
|
|
|
|
protected $schema;
|
|
|
|
|
|
/**
|
|
* Retrieves SWV schema for this holder object (contact form).
|
|
*
|
|
* @return WPCF7_SWV_Schema The schema object.
|
|
*/
|
|
public function get_schema() {
|
|
if ( isset( $this->schema ) ) {
|
|
return $this->schema;
|
|
}
|
|
|
|
$schema = new WPCF7_SWV_Schema( array(
|
|
'locale' => isset( $this->locale ) ? $this->locale : '',
|
|
) );
|
|
|
|
do_action( 'wpcf7_swv_create_schema', $schema, $this );
|
|
|
|
return $this->schema = $schema;
|
|
}
|
|
|
|
|
|
/**
|
|
* Validates form inputs based on the schema and given context.
|
|
*/
|
|
public function validate_schema( $context, WPCF7_Validation $validity ) {
|
|
$schema = $this->get_schema();
|
|
|
|
foreach ( $schema->validate( $context ) as $result ) {
|
|
if ( is_wp_error( $result ) ) {
|
|
$rule = $result->get_error_data();
|
|
$field = $rule->get_property( 'field' );
|
|
|
|
if ( isset( $field ) and $validity->is_valid( $field ) ) {
|
|
$validity->invalidate( $field, $result );
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|