Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Warning: foreach() argument must be of type array|object, string given in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 813
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Warning: foreach() argument must be of type array|object, string given in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 813
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
PUM_Shortcode_Subscribe::handler( array $atts, string $content = null )
Shortcode handler
Description Description
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Warning: foreach() argument must be of type array|object, string given in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 813
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Warning: foreach() argument must be of type array|object, string given in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 813
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Parameters Parameters
- $atts
-
(Required) shortcode attributes
- $content
-
(Optional) shortcode content
Default value: null
Return Return
(string)
Source Source
File: classes/Shortcode/Subscribe.php
public function handler( $atts, $content = null ) { $atts = $this->shortcode_atts( $atts ); static $instance = 0; $instance ++; $atts['instance'] = $instance; ob_start(); $data_attr = $this->data_attr( $atts ); $classes = implode( ' ', array( 'pum_sub_form', $atts['provider'], $atts['form_layout'], $atts['form_style'], 'pum-sub-form', 'pum-form', 'pum-sub-form--provider-' . $atts['provider'], 'pum-form--layout-' . $atts['form_layout'], 'pum-form--style-' . $atts['form_style'], 'pum-form--alignment-' . $atts['form_alignment'], ) ); ?> <form class="<?php echo esc_attr( $classes ); ?>" data-settings="<?php echo esc_attr( PUM_Utils_Array::safe_json_encode( $data_attr ) ); ?>"> <?php do_action( 'pum_sub_form_before', $atts ); ?> <?php if ( ! $atts['name_field_type'] != 'disabled' ) : $required = ! $atts['name_optional'] ? 'required' : ''; switch ( $atts['name_field_type'] ) { case 'fullname': ?> <div class="pum-form__field pum-form__field--name pum-sub-form-field pum-sub-form-field--name"> <?php if ( ! $atts['disable_labels'] ) : ?> <label class="pum-form__label pum-sub-form-label"><?php echo $atts['label_name']; ?></label> <?php endif; ?> <input type="text" name="name" <?php echo $required; ?> placeholder="<?php echo esc_attr( $atts['placeholder_name'] ); ?>" /> </div> <?php break; case 'first_only': ?> <div class="pum-form__field pum-form__field--fname pum-sub-form-field pum-sub-form-field--fname"> <?php if ( ! $atts['disable_labels'] ) : ?> <label class="pum-form__label pum-sub-form-label"><?php echo $atts['label_fname']; ?></label> <?php endif; ?> <input type="text" name="fname" <?php echo $required; ?> placeholder="<?php echo esc_attr( $atts['placeholder_fname'] ); ?>" /> </div> <?php break; case 'first_last': ?> <div class="pum-form__field pum-form__field--fname pum-sub-form-field pum-sub-form-field--fname"> <?php if ( ! $atts['disable_labels'] ) : ?> <label class="pum-form__label pum-sub-form-label"><?php echo $atts['label_fname']; ?></label> <?php endif; ?> <input type="text" name="fname" <?php echo $required; ?> placeholder="<?php echo esc_attr( $atts['placeholder_fname'] ); ?>" /> </div> <div class="pum-form__field pum-form__field--lname pum-sub-form-field pum-sub-form-field--lname"> <?php if ( ! $atts['disable_labels'] ) : ?> <label class="pum-form__label pum-sub-form-label"><?php echo $atts['label_lname']; ?></label> <?php endif; ?> <input type="text" name="lname" <?php echo $required; ?> placeholder="<?php echo esc_attr( $atts['placeholder_lname'] ); ?>" /> </div> <?php break; } ?> <?php endif; ?> <div class="pum-form__field pum-form__field--email pum-sub-form-field pum-sub-form-field--email"> <?php if ( ! $atts['disable_labels'] ) : ?> <label class="pum-form__label pum-sub-form-label"><?php echo $atts['label_email']; ?></label> <?php endif; ?> <input type="email" name="email" required placeholder="<?php echo esc_attr( $atts['placeholder_email'] ); ?>" /> </div> <?php do_action( 'pum_sub_form_fields', $atts ); ?> <?php do_action( 'pum_newsletter_fields', $atts ); ?> <input type="hidden" name="provider" value="<?php echo $atts['provider']; ?>" /> <?php if ( $atts['privacy_consent_enabled'] == 'yes' ) : $consent_text = trim( $atts['privacy_consent_label'] ); $consent_args = array( 'enabled' => 'yes', 'required' => isset( $atts['privacy_consent_required'] ) && $atts['privacy_consent_required'], 'text' => ! empty( $consent_text ) ? $consent_text : ( ! empty( $atts['privacy_consent_yes_label'] ) ? $atts['privacy_consent_yes_label'] : '' ), ); ?> <input type="hidden" name="consent_args" value="<?php echo esc_attr( PUM_Utils_Array::safe_json_encode( $consent_args ) ); ?>" /> <div class="pum-form__field pum-form__field--<?php echo esc_attr( $atts['privacy_consent_type'] ); ?> pum-form__field--consent pum-sub-form-field"> <?php switch ( $atts['privacy_consent_type'] ) { case 'checkbox': ?> <label class="pum-form__label pum-sub-form-label"> <input type="checkbox" value="yes" name="consent" <?php echo $consent_args['required'] ? 'required="required"' : ''; ?> /> <?php echo wp_kses( $consent_text, array() ); ?> </label> <?php break; case 'radio': ?> <?php if ( ! empty( $consent_text ) ) : ?> <label class="pum-form__label pum-sub-form-label"><?php echo wp_kses( $consent_text, array() ); ?></label> <?php endif; ?> <div class="pum-form__consent-radios pum-form__consent-radios--<?php echo esc_attr( $atts['privacy_consent_radio_layout'] ); ?>"> <label class="pum-form__label pum-sub-form-label"> <input type="radio" value="yes" name="consent" <?php echo $consent_args['required'] ? 'required="required"' : ''; ?> /> <?php echo wp_kses( $atts['privacy_consent_yes_label'], array() ); ?> </label> <label class="pum-form__label pum-sub-form-label"> <input type="radio" value="no" name="consent" /> <?php echo wp_kses( $atts['privacy_consent_no_label'], array() ); ?> </label> </div> <?php break; } if ( ! empty( $atts['privacy_usage_text'] ) ) : $usage_text = trim( $atts['privacy_usage_text'] ); if ( strpos( $usage_text, '{{privacy_link' ) !== false && function_exists( 'get_privacy_policy_url' ) && get_privacy_policy_url() !== '' ) { preg_match_all( "/{{privacy_link:?(.*)}}/", $usage_text, $matches ); $link = '<a href="' . get_privacy_policy_url() . '" target="_blank">%s</a>'; foreach ( $matches[0] as $key => $value ) { $usage_text = str_replace( $matches[0][ $key ], sprintf( $link, $matches[1][ $key ] ), $usage_text ); } } ?> <p> <small><?php echo wp_kses( $usage_text, array( 'a' => array( 'target' => true, 'href' => true ) ) ); ?></small> </p> <?php endif; ?> </div> <?php endif; ?> <div class="pum-form__field pum-form__field--submit pum-sub-form-field pum-sub-form-field--submit"> <button class="pum-form__submit pum-sub-form-submit"><?php echo $atts['label_submit']; ?></button> </div> <?php do_action( 'pum_sub_form_after', $atts ); ?> </form> <?php //return content return ob_get_clean(); }
Expand full source code Collapse full source code View on Trac