PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.20.0
GiveWP – Donation Plugin and Fundraising Platform v2.20.0
4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / templates / shortcode-form-grid.php
give / templates Last commit date
emails 6 years ago global 6 years ago receipt 7 years ago single-give-form 6 years ago email-login-form.php 6 years ago history-donations.php 4 years ago payment-processing.php 6 years ago shortcode-donor-wall.php 4 years ago shortcode-form-grid.php 4 years ago shortcode-goal.php 4 years ago shortcode-login.php 6 years ago shortcode-profile-editor.php 6 years ago shortcode-receipt.php 5 years ago shortcode-register.php 8 years ago shortcode-totals-progress.php 6 years ago single-give-form.php 6 years ago
shortcode-form-grid.php
181 lines
1 <?php
2 /**
3 * This template is used to display the donation grid with [donation_grid]
4 */
5
6 // Exit if accessed directly.
7 use Give\Helpers\Form\Template;
8 use Give\Helpers\Form\Utils as FormUtils;
9
10 if ( ! defined( 'ABSPATH' ) ) {
11 exit;
12 }
13
14 $form_id = get_the_ID(); // Form ID.
15 $give_settings = $args[0]; // Give settings.
16 $atts = $args[1]; // Shortcode attributes.
17 $raw_content = ''; // Raw form content.
18 $stripped_content = ''; // Form content stripped of HTML tags and shortcodes.
19 $excerpt = ''; // Trimmed form excerpt ready for display.
20
21
22 $activeTemplate = FormUtils::isLegacyForm( $form_id ) ? 'legacy' : Template::getActiveID( $form_id );
23
24 /* @var \Give\Form\Template $formTemplate */
25 $formTemplate = Give()->templates->getTemplate( $activeTemplate );
26 ?>
27
28 <div class="give-grid__item">
29 <?php
30 // Print the opening anchor tag based on display style.
31 if ( 'redirect' === $atts['display_style'] ) {
32
33 $form_grid_option = give_get_meta( $form_id, '_give_form_grid_option', true );
34 $form_grid_redirect_url = esc_url(give_get_meta( $form_id, '_give_form_grid_redirect_url', true ));
35
36 $url = ( $form_grid_option === 'custom' && filter_var($form_grid_redirect_url, FILTER_VALIDATE_URL) )
37 ? $form_grid_redirect_url
38 : get_the_permalink();
39
40 printf(
41 '<a id="give-card-%1$s" onclick="return !document.body.classList.contains( \'block-editor-page\' )" class="give-card" href="%2$s">',
42 esc_attr( $form_id ),
43 esc_attr( $url )
44 );
45 } elseif ( 'modal_reveal' === $atts['display_style'] ) {
46 printf(
47 '<a id="give-card-%1$s" class="give-card js-give-grid-modal-launcher" data-effect="mfp-zoom-out" href="#give-modal-form-%1$s">',
48 esc_attr( $form_id )
49 );
50 }
51 ?>
52
53 <div class="give-card__body">
54 <?php
55 // Maybe display the form title.
56 if ( true === $atts['show_title'] ) {
57 printf(
58 '<h3 class="give-card__title">%1$s</h3>',
59 $formTemplate->getFormHeading( $form_id )
60 );
61 }
62
63 // Maybe display the form excerpt.
64 if ( true === $atts['show_excerpt'] ) {
65 if ( $raw_content = $formTemplate->getFormExcerpt( $form_id ) ) {
66 $stripped_content = wp_strip_all_tags(
67 strip_shortcodes( $raw_content )
68 );
69 } else {
70 // Get content from the form post's content field.
71 $raw_content = give_get_meta( $form_id, '_give_form_content', true );
72
73 if ( ! empty( $raw_content ) ) {
74 $stripped_content = wp_strip_all_tags(
75 strip_shortcodes( $raw_content )
76 );
77 }
78 }
79
80 // Maybe truncate excerpt.
81 if ( 0 < $atts['excerpt_length'] ) {
82 $excerpt = wp_trim_words( $stripped_content, $atts['excerpt_length'] );
83 } else {
84 $excerpt = $stripped_content;
85 }
86
87 printf( '<p class="give-card__text">%s</p>', $excerpt );
88 }
89
90 // Maybe display the goal progess bar.
91 if (
92 give_is_setting_enabled( get_post_meta( $form_id, '_give_goal_option', true ) )
93 && true === $atts['show_goal']
94 ) {
95 echo '<div class="give-card__progress">';
96 give_show_goal_progress( $form_id, [
97 'show_bar' => $atts['show_bar']
98 ] );
99 echo '</div>';
100 }
101 ?>
102
103 <?php if ($atts['show_donate_button']):
104 $button_text = ! empty( $atts['donate_button_text'] )
105 ? $atts['donate_button_text']
106 : give_get_meta( $form_id, '_give_form_grid_donate_button_text', true );
107
108 $button_bg_color = ! empty( $atts['donate_button_background_color'] )
109 ? $atts['donate_button_background_color']
110 : '#66bb6a';
111
112 $button_text_color = ! empty( $atts['donate_button_text_color'] )
113 ? $atts['donate_button_text_color']
114 : '#fff';
115 ?>
116 <div>
117 <br />
118 <button class="give-form-grid-btn" style="background-color: <?php echo $button_bg_color; ?>;">
119 <span style="color: <?php echo $button_text_color; ?>">
120 <?php echo $button_text ?: __( 'Donate', 'give' ); ?>
121 </span>
122 </button>
123 </div>
124 <?php endif; ?>
125 </div>
126
127 <?php
128 // Maybe display the featured image.
129 if (
130 give_is_setting_enabled( $give_settings['form_featured_img'] )
131 && ( $imageSrc = $formTemplate->getFormFeaturedImage( $form_id ) )
132 && true === $atts['show_featured_image']
133 ) {
134 /*
135 * Filters the image size used in card layouts.
136 *
137 * @param string The image size.
138 * @param array Form grid attributes.
139 */
140 $image_size = apply_filters( 'give_form_grid_image_size', $atts['image_size'], $atts );
141 $image_attr = '';
142
143 if ( 'auto' !== $atts['image_height'] ) {
144 $image_attr = [
145 'style' => 'height: ' . $atts['image_height'],
146 ];
147 }
148
149 printf(
150 '<div class="give-card__media">%1$s</div>',
151 wp_get_attachment_image( attachment_url_to_postid( $imageSrc ), $image_size, false, $image_attr )
152 );
153 }
154 ?>
155 </a>
156 <?php
157 // If modal, print form in hidden container until it is time to be revealed.
158 if ( 'modal_reveal' === $atts['display_style'] ) {
159 if (
160 ! isset($_GET['context']) // check if we are in block editor
161 && ! FormUtils::isLegacyForm( $form_id )
162 ) {
163 echo give_form_shortcode(
164 [
165 'id' => $form_id,
166 'display_style' => 'button',
167 ]
168 );
169
170 } else {
171 printf(
172 '<div id="give-modal-form-%1$s" class="give-donation-grid-item-form give-modal--slide mfp-hide">',
173 $form_id
174 );
175 give_get_donation_form( $form_id );
176 echo '</div>';
177 }
178 }
179 ?>
180 </div>
181