PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 4.2.0
GiveWP – Donation Plugin and Fundraising Platform v4.2.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 / src / Campaigns / Blocks / CampaignGrid / CampaignGridShortcode.php
give / src / Campaigns / Blocks / CampaignGrid Last commit date
app 1 year ago CampaignGridShortcode.php 1 year ago app.tsx 1 year ago block.json 1 year ago edit.tsx 1 year ago index.tsx 1 year ago render.php 1 year ago types.ts 1 year ago
CampaignGridShortcode.php
82 lines
1 <?php
2
3 namespace Give\Campaigns\Blocks\CampaignGrid;
4
5 /**
6 * @since 4.2.0
7 */
8 class CampaignGridShortcode
9 {
10 /**
11 * @since 4.2.0
12 *
13 * @param array $atts
14 *
15 * @return string
16 */
17 public function renderShortcode($atts): string
18 {
19 $this->loadAssets();
20 $attributes = $this->parseAttributes($atts);
21
22 $renderFile = GIVE_PLUGIN_DIR . 'src/Campaigns/Blocks/CampaignGrid/render.php';
23
24 ob_start();
25 include $renderFile;
26 return ob_get_clean();
27 }
28
29 /**
30 * @since 4.2.0
31 */
32 public function loadAssets()
33 {
34 wp_enqueue_script(
35 'givewp-campaign-grid-app',
36 GIVE_PLUGIN_URL . 'build/campaignGridApp.js',
37 [],
38 null,
39 true
40 );
41
42 wp_enqueue_style(
43 'givewp-campaign-grid-style',
44 GIVE_PLUGIN_URL . 'build/campaignGridApp.css',
45 [],
46 null
47 );
48
49 wp_enqueue_style('givewp-design-system-foundation');
50 }
51
52 /**
53 * @since 4.2.0
54 */
55 private function parseAttributes($atts): array
56 {
57 $atts = shortcode_atts([
58 'layout' => 'full',
59 'show_image' => true,
60 'show_description' => true,
61 'show_goal' => true,
62 'sort_by' => 'date',
63 'order_by' => 'desc',
64 'per_page' => 6,
65 'show_pagination' => true,
66 'filter_by' => null,
67 ], $atts, 'givewp_campaign_grid');
68
69 return [
70 'layout' => $atts['layout'],
71 'showImage' => filter_var($atts['show_image'], FILTER_VALIDATE_BOOLEAN),
72 'showDescription' => filter_var($atts['show_description'], FILTER_VALIDATE_BOOLEAN),
73 'showGoal' => filter_var($atts['show_goal'], FILTER_VALIDATE_BOOLEAN),
74 'sortBy' => $atts['sort_by'],
75 'orderBy' => $atts['order_by'],
76 'filterBy' => $atts['filter_by'],
77 'perPage' => (int)$atts['per_page'],
78 'showPagination' => filter_var($atts['show_pagination'], FILTER_VALIDATE_BOOLEAN),
79 ];
80 }
81 }
82