PluginProbe
SureForms – Contact Form Builder, AI Forms, Payment Form, Survey & Quiz / 2.12.8
SureForms – Contact Form Builder, AI Forms, Payment Form, Survey & Quiz v2.12.8
2.12.8 2.12.7 2.12.6 2.12.5 2.12.4 2.12.3 2.12.2 2.12.1 2.12.0 2.11.1 2.11.0 2.10.1 2.10.0 2.9.1 2.9.0 2.8.2 2.8.1 2.7.0 2.7.1 2.8.0 trunk 0.0.10 0.0.11 0.0.12 0.0.13 All 98 releases
← All changes | inc/fields/address-markup.php +53 -6 2.7.0 → 2.12.8 View file →
@@ -38,24 +38,71 @@
38 38 * @since 0.0.2
39 39 * @return string|bool
40 40 */
41 41 public function markup( $content = '' ) {
42 - $this->class_name = $this->get_field_classes();
42 + /**
43 + * Filter extra CSS classes for the address field wrapper.
44 + *
45 + * @param array<string> $extra_classes Extra CSS classes.
46 + * @param array<mixed> $attributes Block attributes.
47 + * @since 2.8.0
48 + */
49 + $extra_classes = apply_filters( 'srfm_address_field_classes', [], $this->attributes );
43 50
51 + $this->class_name = $this->get_field_classes( $extra_classes );
52 +
53 + /**
54 + * Filter additional HTML attributes for the address block wrapper div.
55 + *
56 + * IMPORTANT: Callbacks MUST escape all values with esc_attr() before
57 + * returning. The output is echoed directly into a <div> tag.
58 + *
59 + * @param string $extra_attrs Additional HTML attributes string (pre-escaped).
60 + * @param array<mixed> $attributes Block attributes.
61 + * @since 2.8.0
62 + */
63 + $extra_attrs = apply_filters( 'srfm_address_block_attributes', '', $this->attributes );
64 +
44 65 ob_start(); ?>
45 - <div data-block-id="<?php echo esc_attr( $this->block_id ); ?>" class="<?php echo esc_attr( $this->class_name ); ?>" data-slug="<?php echo esc_attr( $this->block_slug ); ?>">
66 + <div data-block-id="<?php echo esc_attr( $this->block_id ); ?>" class="<?php echo esc_attr( $this->class_name ); ?>" data-slug="<?php echo esc_attr( $this->block_slug ); ?>"
67 + <?php
68 + echo $extra_attrs; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped by the filter callback.
69 + ?>
70 + >
46 71 <fieldset>
47 72 <legend class="srfm-block-legend">
48 73 <?php echo wp_kses_post( $this->label_markup ); ?>
49 - <?php echo wp_kses_post( $this->help_markup ); ?>
50 74 </legend>
75 + <?php echo wp_kses_post( $this->help_markup ); ?>
76 + <?php
77 + /**
78 + * Fires after the address field legend, before the inner block content.
79 + * Used by pro to render the autocomplete search input.
80 + *
81 + * @param array<mixed> $attributes Block attributes.
82 + * @param string $block_id Block ID.
83 + * @since 2.8.0
84 + */
85 + do_action( 'srfm_address_before_fields', $this->attributes, $this->block_id );
86 + ?>
51 87 <div class="srfm-block-wrap">
52 88 <?php
53 - // phpcs:ignore
54 - echo $content;
55 - // phpcs:ignoreEnd
89 + // phpcs:ignore
90 + echo $content;
91 + // phpcs:ignoreEnd
56 92 ?>
57 93 </div>
94 + <?php
95 + /**
96 + * Fires after the inner block content, before the closing fieldset.
97 + * Used by pro to render hidden fields and map container.
98 + *
99 + * @param array<mixed> $attributes Block attributes.
100 + * @param string $block_id Block ID.
101 + * @since 2.8.0
102 + */
103 + do_action( 'srfm_address_after_fields', $this->attributes, $this->block_id );
104 + ?>
58 105 </fieldset>
59 106 </div>
60 107 <?php
61 108 return ob_get_clean();