PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.1.0
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.1.0
5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / classes / WpMatomo / Admin / views / marketplace.php
matomo / classes / WpMatomo / Admin / views Last commit date
access.php 2 years ago advanced_settings.php 2 years ago exclusion_settings.php 4 years ago geolocation_settings.php 2 years ago get_started.php 4 years ago import_wp_statistics.php 4 years ago info.php 4 years ago info_bug_report.php 2 years ago info_help.php 4 years ago info_high_traffic.php 2 years ago info_multisite.php 2 years ago info_newsletter.php 4 years ago info_shared.php 4 years ago marketplace.php 2 years ago marketplace_setup_wizard.php 2 years ago measurable_settings.php 2 years ago privacy_gdpr.php 4 years ago scheduled_tasks_failures.php 2 years ago settings.php 4 years ago settings_errors.php 4 years ago summary.php 4 years ago systemreport.php 2 years ago tracking.php 3 years ago update_notice_clear_cache.php 5 years ago
marketplace.php
352 lines
1 <?php
2 /**
3 * Matomo - free/libre analytics platform
4 *
5 * @link https://matomo.org
6 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
7 * @package matomo
8 */
9
10 if ( ! defined( 'ABSPATH' ) ) {
11 exit;
12 }
13
14 /** @var \WpMatomo\Settings $settings */
15 $matomo_extra_url_params = '&' . http_build_query(
16 [
17 'php' => PHP_MAJOR_VERSION . '.' . PHP_MINOR_VERSION . '.' . PHP_RELEASE_VERSION,
18 'matomo' => $settings->get_global_option( 'core_version' ),
19 'wp_version' => ! empty( $GLOBALS['wp_version'] ) ? $GLOBALS['wp_version'] : '',
20 ]
21 );
22 ?>
23 <div class="wrap">
24
25 <div id="icon-plugins" class="icon32"></div>
26 <?php if ( ! empty( $valid_tabs ) ) { ?>
27 <h2 class="nav-tab-wrapper">
28 <?php if ( in_array( 'marketplace', $valid_tabs, true ) ) { ?>
29 <a href="?page=matomo-marketplace&tab=marketplace"
30 class="nav-tab <?php echo ( 'marketplace' === $active_tab ) ? 'nav-tab-active' : ''; ?>"
31 ><?php esc_html_e( 'Overview', 'matomo' ); ?></a>
32 <?php } ?>
33 <?php if ( in_array( 'install', $valid_tabs, true ) ) { ?>
34 <a href="?page=matomo-marketplace&tab=install"
35 class="nav-tab <?php echo ( 'install' === $active_tab ) ? 'nav-tab-active' : ''; ?>"
36 ><?php esc_html_e( 'Install Plugins', 'matomo' ); ?></a>
37 <?php } ?>
38 <?php if ( in_array( 'subscriptions', $valid_tabs, true ) ) { ?>
39 <a href="?page=matomo-marketplace&tab=subscriptions"
40 class="nav-tab <?php echo 'subscriptions' === $active_tab ? 'nav-tab-active' : ''; ?>"><?php esc_html_e( 'Subscriptions', 'matomo' ); ?></a>
41 <?php } ?>
42 </h2>
43 <?php } ?>
44
45 <?php if ( $settings->is_network_enabled() && ! is_network_admin() && is_super_admin() ) { ?>
46 <div class="updated notice">
47 <p><?php esc_html_e( 'Only WordPress network admins can see this page', 'matomo' ); ?></p>
48 </div>
49 <?php } ?>
50
51 <?php
52 if ( isset( $marketplace_setup_wizard ) ) {
53 $marketplace_setup_wizard->show();
54 return;
55 }
56 ?>
57
58 <h1><?php matomo_header_icon(); ?><?php esc_html_e( 'Discover new functionality for your Matomo', 'matomo' ); ?></h1>
59
60 <?php
61 function matomo_show_tables( $matomo_feature_sections, $matomo_version ) {
62 foreach ( $matomo_feature_sections as $matomo_feature_section ) {
63 $matomo_feature_section['features'] = array_filter( $matomo_feature_section['features'] );
64 $matomo_num_features_in_block = count( $matomo_feature_section['features'] );
65
66 echo '<h2>' . esc_html( $matomo_feature_section['title'] ) . '</h2>';
67 echo '<div class="wp-list-table widefat plugin-install matomo-plugin-list matomo-plugin-row-' . esc_html( $matomo_num_features_in_block ) . '"><div id="the-list">';
68
69 foreach ( $matomo_feature_section['features'] as $matomo_index => $matomo_feature ) {
70 $matomo_style = '';
71 $matomo_is_3_columns = 3 === $matomo_num_features_in_block;
72 if ( $matomo_is_3_columns ) {
73 $matomo_style = 'width: calc(33% - 8px);min-width:282px;max-width:350px;';
74 if ( 2 === $matomo_index % 3 ) {
75 $matomo_style .= 'clear: inherit;margin-right: 0;margin-left: 16px;';
76 }
77 }
78 $plugin_url = empty( $matomo_feature['url'] ) ? null : $matomo_feature['url'] . '&matomoversion=' . $matomo_version;
79 ?>
80 <div class="plugin-card" style="<?php echo esc_attr( $matomo_style ); ?>">
81 <?php
82 if ( $matomo_is_3_columns && ! empty( $matomo_feature['image'] ) ) {
83 ?>
84 <a
85 href="<?php echo esc_url( $plugin_url ); ?>"
86 rel="noreferrer noopener" target="_blank"
87 class="thickbox open-plugin-details-modal"><img
88 src="<?php echo esc_url( $matomo_feature['image'] ); ?>"
89 style="height: 80px;width:100%;object-fit: cover;" alt=""></a>
90 <?php
91 }
92 ?>
93
94 <div class="plugin-card-top">
95 <div class="
96 <?php
97 if ( ! $matomo_is_3_columns ) {
98 ?>
99 name column-name
100 <?php
101 }
102 ?>
103 " style="margin-right: 0;
104 <?php
105 if ( empty( $matomo_feature['image'] ) ) {
106 echo 'margin-left: 0;';
107 }
108 ?>
109 ">
110 <h3>
111 <a href="<?php echo esc_url( ! empty( $matomo_feature['video'] ) ? $matomo_feature['video'] : $plugin_url ); ?>"
112 rel="noreferrer noopener" target="_blank"
113 class="thickbox open-plugin-details-modal">
114 <?php echo esc_html( $matomo_feature['name'] ); ?>
115 </a>
116 <?php
117 if ( ! $matomo_is_3_columns && ! empty( $matomo_feature['image'] ) ) {
118 ?>
119 <a
120 href="<?php echo esc_url( $plugin_url ); ?>"
121 rel="noreferrer noopener" target="_blank"
122 class="thickbox open-plugin-details-modal"><img
123 src="<?php echo esc_url( $matomo_feature['image'] ); ?>" class="plugin-icon"
124 style="object-fit: cover;"
125 alt=""></a>
126 <?php
127 }
128 ?>
129 </h3>
130 </div>
131 <div class="
132 <?php
133 if ( ! $matomo_is_3_columns ) {
134 ?>
135 desc column-description
136 <?php
137 }
138 ?>
139 "
140 style="margin-right: 0;
141 <?php
142 if ( empty( $matomo_feature['image'] ) ) {
143 echo 'margin-left: 0;';
144 }
145 ?>
146 ">
147 <p class="matomo-description"><?php echo esc_html( $matomo_feature['description'] ); ?>
148 <?php
149 if ( ! empty( $matomo_feature['video'] ) ) {
150 echo ' <a target="_blank" rel="noreferrer noopener" style="white-space: nowrap;" href="' . esc_url( $matomo_feature['video'] ) . '"><span class="dashicons dashicons-video-alt3"></span> ' . esc_html__( 'Learn more', 'matomo' ) . '</a>';
151 } elseif ( ! empty( $matomo_feature['url'] ) ) {
152 echo ' <a target="_blank" rel="noreferrer noopener" style="white-space: nowrap;" href="' . esc_url( $plugin_url ) . '">' . esc_html__( 'Learn more', 'matomo' ) . '</a>';
153 }
154 ?>
155 </p>
156 <?php
157 if ( ! empty( $matomo_feature['price'] ) ) {
158 ?>
159 <p class="authors"><a class="button-primary"
160 rel="noreferrer noopener" target="_blank"
161 href="<?php echo esc_url( ! empty( $matomo_feature['download_url'] ) ? $matomo_feature['download_url'] : $plugin_url ); ?>">
162 <?php
163 if ( 'free' === $matomo_feature['price'] ) {
164 esc_html_e( 'Download', 'matomo' );
165 } else {
166 echo esc_html( $matomo_feature['price'] );
167 }
168 ?>
169 </a>
170 </p>
171 <?php
172 }
173 ?>
174 </div>
175 </div>
176 </div>
177 <?php
178 }
179 echo '';
180 echo '</div><div style="clear: both"></div>';
181 if ( ! empty( $matomo_feature_section['more_url'] ) ) {
182 echo '<a target="_blank" rel="noreferrer noopener" href="' . esc_attr( $matomo_feature_section['more_url'] ) . '"><span class="dashicons dashicons-arrow-right-alt2"></span>' . esc_html( $matomo_feature_section['more_text'] ) . '</a>';
183 }
184 echo '</div>';
185 }
186 }
187
188 $matomo_feature_sections = [
189 [
190 'title' => 'Top free plugins',
191 'more_url' => 'https://plugins.matomo.org/free?wp=1&pk_campaign=WP&pk_source=Plugin',
192 'more_text' => 'Browse all free plugins',
193 'features' =>
194 [
195 [
196 'name' => 'Marketing Campaigns Reporting',
197 'description' => 'Measure the effectiveness of your marketing campaigns. Track up to five channels instead of two: campaign, source, medium, keyword, content.',
198 'price' => 'free',
199 'download_url' => 'https://plugins.matomo.org/api/2.0/plugins/MarketingCampaignsReporting/download/latest?wp=1' . $matomo_extra_url_params,
200 'url' => 'https://plugins.matomo.org/MarketingCampaignsReporting?wp=1&pk_campaign=WP&pk_source=Plugin',
201 'image' => '',
202 ],
203 [
204 'name' => 'Custom Alerts',
205 'description' => 'Create custom Alerts to be notified of important changes on your website or app!',
206 'price' => 'free',
207 'download_url' => 'https://plugins.matomo.org/api/2.0/plugins/CustomAlerts/download/latest?wp=1' . $matomo_extra_url_params,
208 'url' => 'https://plugins.matomo.org/CustomAlerts?wp=1&pk_campaign=WP&pk_source=Plugin',
209 'image' => '',
210 ],
211 ],
212 ],
213 ];
214
215 /** @var \WpMatomo\Settings $settings */
216 $matomo_version = (int) explode( '.', $settings->get_global_option( 'core_version' ) )[0];
217
218 matomo_show_tables( $matomo_feature_sections, $matomo_version );
219
220 echo '<br>';
221
222 $matomo_feature_sections = [
223 [
224 'title' => 'Most popular premium features',
225 'features' =>
226 [
227 [
228 'name' => 'Heatmap & Session Recording',
229 'description' => 'Truly understand your visitors by seeing where they click, hover, type and scroll. Replay their actions in a video and ultimately increase conversions.',
230 'price' => '99EUR / 119USD',
231 'url' => 'https://plugins.matomo.org/HeatmapSessionRecording?wp=1&pk_campaign=WP&pk_source=Plugin',
232 'image' => '',
233 ],
234 [
235 'name' => 'Custom Reports',
236 'description' => 'Pull out the information you need in order to be successful. Develop your custom strategy to meet your individualized goals while saving money & time.',
237 'price' => '99EUR / 119USD',
238 'url' => 'https://plugins.matomo.org/CustomReports?wp=1&pk_campaign=WP&pk_source=Plugin',
239 'image' => '',
240 ],
241
242 [
243 'name' => 'Premium Bundle',
244 'description' => 'All premium features in one bundle, make the most out of your Matomo for WordPress and enjoy discounts of over 25%!',
245 'price' => '499EUR / 579USD',
246 'url' => 'https://plugins.matomo.org/WpPremiumBundle?wp=1&pk_campaign=WP&pk_source=Plugin',
247 'image' => '',
248 ],
249 ],
250 ],
251 [
252 'title' => 'Most popular content engagement',
253 'features' =>
254 [
255 [
256 'name' => 'Form Analytics',
257 'description' => 'Increase conversions on your online forms and lose less visitors by learning everything about your users behavior and their pain points on your forms.',
258 'price' => '79EUR / 89USD',
259 'url' => 'https://plugins.matomo.org/FormAnalytics?wp=1&pk_campaign=WP&pk_source=Plugin',
260 'image' => '',
261 ],
262 [
263 'name' => 'Video & Audio Analytics',
264 'description' => 'Grow your business with advanced video & audio analytics. Get powerful insights into how your audience watches your videos and listens to your audio.',
265 'price' => '79EUR / 89USD',
266 'url' => 'https://plugins.matomo.org/MediaAnalytics?wp=1&pk_campaign=WP&pk_source=Plugin',
267 'image' => '',
268 ],
269 [
270 'name' => 'Users Flow',
271 'description' => 'Users Flow is a visual representation of the most popular paths your users take through your website & app which lets you understand your users needs.',
272 'price' => '39EUR / 39USD',
273 'url' => 'https://plugins.matomo.org/UsersFlow?wp=1&pk_campaign=WP&pk_source=Plugin',
274 'image' => '',
275 ],
276 ],
277 ],
278 [
279 'title' => 'Most popular acquisition & SEO features',
280 'features' =>
281 [
282 [
283 'name' => 'Search Engine Keywords Performance',
284 'description' => 'All keywords searched by your users on search engines are now visible into your Referrers reports! The ultimate solution to \'Keyword not defined\'.',
285 'price' => '69EUR / 79USD',
286 'url' => 'https://plugins.matomo.org/SearchEngineKeywordsPerformance?wp=1&pk_campaign=WP&pk_source=Plugin',
287 'image' => '',
288 ],
289 [
290 'name' => 'SEO Web Vitals',
291 'description' => 'Improve your website performance, rank higher in search results and optimise your visitor experience with SEO Web Vitals.',
292 'price' => '39EUR / 39USD',
293 'url' => 'https://plugins.matomo.org/SEOWebVitals?wp=1&pk_campaign=WP&pk_source=Plugin',
294 'image' => '',
295 ],
296 ],
297 ],
298 [
299 'title' => '',
300 'features' =>
301 [
302 [
303 'name' => 'Advertising Conversion Export',
304 'description' => 'Provides an export of attributed goal conversions for usage in ad networks like Google Ads so you no longer need a conversion pixel.',
305 'price' => '79EUR / 89USD',
306 'url' => 'https://plugins.matomo.org/AdvertisingConversionExport?wp=1&pk_campaign=WP&pk_source=Plugin',
307 'image' => '',
308 ],
309 [
310 'name' => 'Multi Attribution',
311 'description' => 'Get a clear understanding of how much credit each of your marketing channel is actually responsible for to shift your marketing efforts wisely.',
312 'price' => '39EUR / 39USD',
313 'url' => 'https://plugins.matomo.org/MultiChannelConversionAttribution?wp=1&pk_campaign=WP&pk_source=Plugin',
314 'image' => '',
315 ],
316 ],
317 ],
318 [
319 'title' => 'Other premium features',
320 'features' =>
321 [
322 [
323 'name' => 'Funnels',
324 'description' => 'Identify and understand where your visitors drop off to increase your conversions, sales and revenue with your existing traffic.',
325 'price' => '89EUR / 99USD',
326 'url' => 'https://plugins.matomo.org/Funnels?wp=1&pk_campaign=WP&pk_source=Plugin',
327 'image' => '',
328 ],
329 [
330 'name' => 'Cohorts',
331 'description' => 'Track your retention efforts over time and keep your visitors engaged and coming back for more.',
332 'price' => '49EUR / 59USD',
333 'url' => 'https://plugins.matomo.org/Cohorts?wp=1&pk_campaign=WP&pk_source=Plugin',
334 'image' => '',
335 ],
336 [
337 'name' => 'Crash Analytics',
338 'description' => 'Detect crashes to improve the user experience, increase conversions and recover revenue. Resolve them with insights to minimise developer hours.',
339 'price' => '69EUR / 79USD',
340 'url' => 'https://plugins.matomo.org/CrashAnalytics?wp=1&pk_campaign=WP&pk_source=Plugin',
341 'image' => '',
342 ],
343 ],
344 ],
345 ];
346
347 matomo_show_tables( $matomo_feature_sections, $matomo_version );
348
349 ?>
350
351 </div>
352