Passed
Push — master ( 04b043...334ee0 )
by Paul
04:11
created
config/settings.php 2 patches
Indentation   +554 added lines, -554 removed lines patch added patch discarded remove patch
@@ -1,558 +1,558 @@
 block discarded – undo
1 1
 <?php
2 2
 
3 3
 return [
4
-    'settings.general.style' => [
5
-        'default' => 'default',
6
-        'description' => __('Site Reviews relies on the CSS of your theme to style the submission form. If your theme does not provide proper CSS rules for form elements and you are using a WordPress plugin/theme or CSS Framework listed here, please try selecting it, otherwise choose "Site Reviews (default)".', 'site-reviews'),
7
-        'label' => __('Plugin Style', 'site-reviews'),
8
-        'options' => [
9
-            'bootstrap_4' => 'CSS Framework: Bootstrap 4',
10
-            'bootstrap_4_custom' => 'CSS Framework: Bootstrap 4 (Custom Forms)',
11
-            'contact_form_7' => 'Plugin: Contact Form 7 (v5)',
12
-            'ninja_forms' => 'Plugin: Ninja Forms (v3)',
13
-            'wpforms' => 'Plugin: WPForms Lite (v1)',
14
-            'default' => __('Site Reviews (default)', 'site-reviews'),
15
-            'minimal' => __('Site Reviews (minimal)', 'site-reviews'),
16
-            'divi' => 'Theme: Divi (v3)',
17
-            'materialize' => 'Theme: Materialize',
18
-            'twentyfifteen' => 'Theme: Twenty Fifteen',
19
-            'twentyseventeen' => 'Theme: Twenty Seventeen',
20
-            'twentynineteen' => 'Theme: Twenty Nineteen',
21
-        ],
22
-        'type' => 'select',
23
-    ],
24
-    'settings.general.require.approval' => [
25
-        'default' => 'no',
26
-        'description' => __('Set the status of new review submissions to "unapproved".', 'site-reviews'),
27
-        'label' => __('Require Approval', 'site-reviews'),
28
-        'type' => 'yes_no',
29
-    ],
30
-    'settings.general.require.login' => [
31
-        'default' => 'no',
32
-        'description' => __('Only allow review submissions from registered users.', 'site-reviews'),
33
-        'label' => __('Require Login', 'site-reviews'),
34
-        'type' => 'yes_no',
35
-    ],
36
-    'settings.general.require.login_register' => [
37
-        'default' => 'no',
38
-        'depends_on' => [
39
-            'settings.general.require.login' => 'yes',
40
-        ],
41
-        'description' => sprintf(__('Show a link for a new user to register. The %s Membership option must be enabled in General Settings for this to work.', 'site-reviews'),
42
-            '<a href="'.admin_url('options-general.php#users_can_register').'">'.__('Anyone can register', 'site-reviews').'</a>'
43
-        ),
44
-        'label' => __('Show Registration Link', 'site-reviews'),
45
-        'type' => 'yes_no',
46
-    ],
47
-    'settings.general.multilingual' => [
48
-        'default' => '',
49
-        'description' => __('Integrate with a multilingual plugin to calculate ratings for all languages of a post.', 'site-reviews'),
50
-        'label' => __('Multilingual', 'site-reviews'),
51
-        'options' => [
52
-            '' => __('No Integration', 'site-reviews'),
53
-            'polylang' => __('Integrate with Polylang', 'site-reviews'),
54
-            'wpml' => __('Integrate with WPML', 'site-reviews'),
55
-        ],
56
-        'type' => 'select',
57
-    ],
58
-    'settings.general.trustalyze' => [
59
-        'default' => 'no',
60
-        'description' => sprintf(__('Integrate with the %s and validate your reviews on the blockchain to increase online reputation, trust, and transparency.', 'site-reviews'),
61
-            '<a href="https://trustalyze.com/plans?ref=105" target="_blank">Trustalyze Confidence System</a>'
62
-        ),
63
-        'label' => __('Blockchain Validation', 'site-reviews'),
64
-        'type' => 'yes_no',
65
-    ],
66
-    'settings.general.trustalyze_email' => [
67
-        'default' => '',
68
-        'depends_on' => [
69
-            'settings.general.trustalyze' => ['yes'],
70
-        ],
71
-        'description' => __('Enter your Trustalyze account email here.', 'site-reviews'),
72
-        'label' => __('Trustalyze Email', 'site-reviews'),
73
-        'type' => 'text',
74
-    ],
75
-    'settings.general.trustalyze_serial' => [
76
-        'default' => '',
77
-        'depends_on' => [
78
-            'settings.general.trustalyze' => ['yes'],
79
-        ],
80
-        'description' => __('Enter your Trustalyze account serial key here.', 'site-reviews'),
81
-        'label' => __('Trustalyze Serial Key', 'site-reviews'),
82
-        'type' => 'password',
83
-    ],
84
-    'settings.general.notifications' => [
85
-        'default' => [],
86
-        'label' => __('Notifications', 'site-reviews'),
87
-        'options' => [
88
-            'admin' => __('Send to administrator', 'site-reviews').' <code>'.(string) get_option('admin_email').'</code>',
89
-            'author' => __('Send to author of the page that the review is assigned to', 'site-reviews'),
90
-            'custom' => __('Send to one or more email addresses', 'site-reviews'),
91
-            'slack' => __('Send to <a href="https://slack.com/">Slack</a>', 'site-reviews'),
92
-        ],
93
-        'type' => 'checkbox',
94
-    ],
95
-    'settings.general.notification_email' => [
96
-        'default' => '',
97
-        'depends_on' => [
98
-            'settings.general.notifications' => ['custom'],
99
-        ],
100
-        'label' => __('Send Notification Emails To', 'site-reviews'),
101
-        'placeholder' => __('Separate multiple emails with a comma', 'site-reviews'),
102
-        'type' => 'text',
103
-    ],
104
-    'settings.general.notification_slack' => [
105
-        'default' => '',
106
-        'depends_on' => [
107
-            'settings.general.notifications' => ['slack'],
108
-        ],
109
-        'description' => sprintf(__('To send notifications to Slack, create a new %s and then paste the provided Webhook URL in the field above.', 'site-reviews'),
110
-            '<a href="https://api.slack.com/incoming-webhooks">'.__('Incoming WebHook', 'site-reviews').'</a>'
111
-        ),
112
-        'label' => __('Slack Webhook URL', 'site-reviews'),
113
-        'type' => 'text',
114
-    ],
115
-    'settings.general.notification_message' => [
116
-        'default' => glsr('Modules\Html\Template')->build('templates/email-notification'),
117
-        'depends_on' => [
118
-            'settings.general.notifications' => ['admin', 'author', 'custom', 'slack'],
119
-        ],
120
-        'description' => __(
121
-            'To restore the default text, save an empty template. '.
122
-            'If you are sending notifications to Slack then this template will only be used as a fallback in the event that <a href="https://api.slack.com/docs/attachments">Message Attachments</a> have been disabled. Available template tags:'.
123
-            '<br><code>{review_rating}</code> The review rating number (1-5)'.
124
-            '<br><code>{review_title}</code> The review title'.
125
-            '<br><code>{review_content}</code> The review content'.
126
-            '<br><code>{review_author}</code> The review author'.
127
-            '<br><code>{review_email}</code> The email of the review author'.
128
-            '<br><code>{review_ip}</code> The IP address of the review author'.
129
-            '<br><code>{review_link}</code> The link to edit/view a review',
130
-            'site-reviews'
131
-        ),
132
-        'label' => __('Notification Template', 'site-reviews'),
133
-        'rows' => 10,
134
-        'type' => 'code',
135
-    ],
136
-    'settings.reviews.date.format' => [
137
-        'default' => '',
138
-        'description' => sprintf(__('The default date format is the one set in your %s.', 'site-reviews'),
139
-            '<a href="'.admin_url('options-general.php#date_format_custom').'">'.__('WordPress settings', 'site-reviews').'</a>'
140
-        ),
141
-        'label' => __('Date Format', 'site-reviews'),
142
-        'options' => [
143
-            '' => __('Use the default date format', 'site-reviews'),
144
-            'relative' => __('Use a relative date format', 'site-reviews'),
145
-            'custom' => __('Use a custom date format', 'site-reviews'),
146
-        ],
147
-        'type' => 'select',
148
-    ],
149
-    'settings.reviews.date.custom' => [
150
-        'default' => get_option('date_format'),
151
-        'depends_on' => [
152
-            'settings.reviews.date.format' => 'custom',
153
-        ],
154
-        'description' => __('Enter a custom date format (<a href="https://codex.wordpress.org/Formatting_Date_and_Time">documentation on date and time formatting</a>).', 'site-reviews'),
155
-        'label' => __('Custom Date Format', 'site-reviews'),
156
-        'type' => 'text',
157
-    ],
158
-    'settings.reviews.name.format' => [
159
-        'default' => '',
160
-        'description' => __('Choose how names are shown in your reviews.', 'site-reviews'),
161
-        'label' => __('Name Format', 'site-reviews'),
162
-        'options' => [
163
-            '' => __('Use the name as given', 'site-reviews'),
164
-            'first' => __('Use the first name only', 'site-reviews'),
165
-            'first_initial' => __('Convert first name to an initial', 'site-reviews'),
166
-            'last_initial' => __('Convert last name to an initial', 'site-reviews'),
167
-            'initials' => __('Convert to all initials', 'site-reviews'),
168
-        ],
169
-        'type' => 'select',
170
-    ],
171
-    'settings.reviews.name.initial' => [
172
-        'default' => '',
173
-        'depends_on' => [
174
-            'settings.reviews.name.format' => ['first_initial', 'last_initial', 'initials'],
175
-        ],
176
-        'description' => __('Choose how the initial is displayed.', 'site-reviews'),
177
-        'label' => __('Initial Format', 'site-reviews'),
178
-        'options' => [
179
-            '' => __('Initial with a space', 'site-reviews'),
180
-            'period' => __('Initial with a period', 'site-reviews'),
181
-            'period_space' => __('Initial with a period and a space', 'site-reviews'),
182
-        ],
183
-        'type' => 'select',
184
-    ],
185
-    'settings.reviews.assigned_links' => [
186
-        'default' => 'no',
187
-        'description' => __('Display a link to the assigned post of a review.', 'site-reviews'),
188
-        'label' => __('Enable Assigned Links', 'site-reviews'),
189
-        'type' => 'yes_no',
190
-    ],
191
-    'settings.reviews.avatars' => [
192
-        'default' => 'no',
193
-        'description' => __('Display reviewer avatars. These are generated from the email address of the reviewer using <a href="https://gravatar.com">Gravatar</a>.', 'site-reviews'),
194
-        'label' => __('Enable Avatars', 'site-reviews'),
195
-        'type' => 'yes_no',
196
-    ],
197
-    'settings.reviews.avatars_regenerate' => [
198
-        'default' => 'no',
199
-        'depends_on' => [
200
-            'settings.reviews.avatars' => 'yes',
201
-        ],
202
-        'description' => __('Regenerate the avatar whenever a local review is shown?', 'site-reviews'),
203
-        'label' => __('Regenerate Avatars', 'site-reviews'),
204
-        'type' => 'yes_no',
205
-    ],
206
-    'settings.reviews.avatars_size' => [
207
-        'default' => 40,
208
-        'depends_on' => [
209
-            'settings.reviews.avatars' => 'yes',
210
-        ],
211
-        'description' => __('Set the avatar size in pixels.', 'site-reviews'),
212
-        'label' => __('Avatar Size', 'site-reviews'),
213
-        'type' => 'number',
214
-    ],
215
-    'settings.reviews.excerpts' => [
216
-        'default' => 'yes',
217
-        'description' => __('Display an excerpt instead of the full review.', 'site-reviews'),
218
-        'label' => __('Enable Excerpts', 'site-reviews'),
219
-        'type' => 'yes_no',
220
-    ],
221
-    'settings.reviews.excerpts_length' => [
222
-        'default' => 55,
223
-        'depends_on' => [
224
-            'settings.reviews.excerpts' => 'yes',
225
-        ],
226
-        'description' => __('Set the excerpt word length.', 'site-reviews'),
227
-        'label' => __('Excerpt Length', 'site-reviews'),
228
-        'type' => 'number',
229
-    ],
230
-    'settings.reviews.fallback' => [
231
-        'default' => 'yes',
232
-        'description' => sprintf(__('Display the fallback text when there are no reviews to display. This can be changed on the %s page. You may also override this by using the "fallback" option on the shortcode. The default fallback text is: %s', 'site-reviews'),
233
-            '<a href="'.admin_url('edit.php?post_type='.glsr()->post_type.'&page=settings#tab-translations').'">'.__('Translations', 'site-reviews').'</a>',
234
-            '<code>'.__('There are no reviews yet. Be the first one to write one.', 'site-reviews').'</code>'
235
-        ),
236
-        'label' => __('Enable Fallback Text', 'site-reviews'),
237
-        'type' => 'yes_no',
238
-    ],
239
-    'settings.reviews.pagination.url_parameter' => [
240
-        'default' => 'yes',
241
-        'description' => sprintf(_x('Use the <code>?%s={page_number}</code> URL parameter with AJAX pagination.', 'admin-text', 'site-reviews'), glsr()->constant('PAGED_QUERY_VAR')),
242
-        'label' => esc_html_x('Pagination URL Parameter', 'admin-text', 'site-reviews'),
243
-        'type' => 'yes_no',
244
-    ],
245
-    'settings.schema.type.default' => [
246
-        'default' => 'LocalBusiness',
247
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_type</code>',
248
-        'label' => __('Default Schema Type', 'site-reviews'),
249
-        'options' => [
250
-            'LocalBusiness' => __('Local Business', 'site-reviews'),
251
-            'Product' => __('Product', 'site-reviews'),
252
-            'custom' => __('Custom', 'site-reviews'),
253
-        ],
254
-        'type' => 'select',
255
-    ],
256
-    'settings.schema.type.custom' => [
257
-        'default' => '',
258
-        'depends_on' => [
259
-            'settings.schema.type.default' => 'custom',
260
-        ],
261
-        'description' => '<a href="https://schema.org/docs/schemas.html">'.__('View more information on schema types here', 'site-reviews').'</a>',
262
-        'label' => __('Custom Schema Type', 'site-reviews'),
263
-        'type' => 'text',
264
-    ],
265
-    'settings.schema.name.default' => [
266
-        'default' => 'post',
267
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_name</code>',
268
-        'label' => __('Default Name', 'site-reviews'),
269
-        'options' => [
270
-            'post' => __('Use the assigned or current page title', 'site-reviews'),
271
-            'custom' => __('Enter a custom title', 'site-reviews'),
272
-        ],
273
-        'type' => 'select',
274
-    ],
275
-    'settings.schema.name.custom' => [
276
-        'default' => '',
277
-        'depends_on' => [
278
-            'settings.schema.name.default' => 'custom',
279
-        ],
280
-        'label' => __('Custom Name', 'site-reviews'),
281
-        'type' => 'text',
282
-    ],
283
-    'settings.schema.description.default' => [
284
-        'default' => 'post',
285
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_description</code>',
286
-        'label' => __('Default Description', 'site-reviews'),
287
-        'options' => [
288
-            'post' => __('Use the assigned or current page excerpt', 'site-reviews'),
289
-            'custom' => __('Enter a custom description', 'site-reviews'),
290
-        ],
291
-        'type' => 'select',
292
-    ],
293
-    'settings.schema.description.custom' => [
294
-        'default' => '',
295
-        'depends_on' => [
296
-            'settings.schema.description.default' => 'custom',
297
-        ],
298
-        'label' => __('Custom Description', 'site-reviews'),
299
-        'type' => 'text',
300
-    ],
301
-    'settings.schema.url.default' => [
302
-        'default' => 'post',
303
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_url</code>',
304
-        'label' => __('Default URL', 'site-reviews'),
305
-        'options' => [
306
-            'post' => __('Use the assigned or current page URL', 'site-reviews'),
307
-            'custom' => __('Enter a custom URL', 'site-reviews'),
308
-        ],
309
-        'type' => 'select',
310
-    ],
311
-    'settings.schema.url.custom' => [
312
-        'default' => '',
313
-        'depends_on' => [
314
-            'settings.schema.url.default' => 'custom',
315
-        ],
316
-        'label' => __('Custom URL', 'site-reviews'),
317
-        'type' => 'text',
318
-    ],
319
-    'settings.schema.image.default' => [
320
-        'default' => 'post',
321
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_image</code>',
322
-        'label' => __('Default Image', 'site-reviews'),
323
-        'options' => [
324
-            'post' => __('Use the featured image of the assigned or current page', 'site-reviews'),
325
-            'custom' => __('Enter a custom image URL', 'site-reviews'),
326
-        ],
327
-        'type' => 'select',
328
-    ],
329
-    'settings.schema.image.custom' => [
330
-        'default' => '',
331
-        'depends_on' => [
332
-            'settings.schema.image.default' => 'custom',
333
-        ],
334
-        'label' => __('Custom Image URL', 'site-reviews'),
335
-        'type' => 'text',
336
-    ],
337
-    'settings.schema.address' => [
338
-        'default' => '',
339
-        'depends_on' => [
340
-            'settings.schema.type.default' => 'LocalBusiness',
341
-        ],
342
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_address</code>',
343
-        'label' => __('Address', 'site-reviews'),
344
-        'placeholder' => '60 29th Street #343, San Francisco, CA 94110, US',
345
-        'type' => 'text',
346
-    ],
347
-    'settings.schema.telephone' => [
348
-        'default' => '',
349
-        'depends_on' => [
350
-            'settings.schema.type.default' => 'LocalBusiness',
351
-        ],
352
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_telephone</code>',
353
-        'label' => __('Telephone Number', 'site-reviews'),
354
-        'placeholder' => '+1 (877) 273-3049',
355
-        'type' => 'text',
356
-    ],
357
-    'settings.schema.pricerange' => [
358
-        'default' => '',
359
-        'depends_on' => [
360
-            'settings.schema.type.default' => 'LocalBusiness',
361
-        ],
362
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_pricerange</code>',
363
-        'label' => __('Price Range', 'site-reviews'),
364
-        'placeholder' => '$$-$$$',
365
-        'type' => 'text',
366
-    ],
367
-    'settings.schema.offertype' => [
368
-        'default' => 'AggregateOffer',
369
-        'depends_on' => [
370
-            'settings.schema.type.default' => 'Product',
371
-        ],
372
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_offertype</code>',
373
-        'label' => __('Offer Type', 'site-reviews'),
374
-        'options' => [
375
-            'AggregateOffer' => __('AggregateOffer', 'site-reviews'),
376
-            'Offer' => __('Offer', 'site-reviews'),
377
-        ],
378
-        'type' => 'select',
379
-    ],
380
-    'settings.schema.price' => [
381
-        'default' => '',
382
-        'depends_on' => [
383
-            'settings.schema.type.default' => 'Product',
384
-            'settings.schema.offertype' => 'Offer',
385
-        ],
386
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_price</code>',
387
-        'label' => __('Price', 'site-reviews'),
388
-        'placeholder' => '50.00',
389
-        'type' => 'text',
390
-    ],
391
-    'settings.schema.lowprice' => [
392
-        'default' => '',
393
-        'depends_on' => [
394
-            'settings.schema.type.default' => 'Product',
395
-            'settings.schema.offertype' => 'AggregateOffer',
396
-        ],
397
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_lowprice</code>',
398
-        'label' => __('Low Price', 'site-reviews'),
399
-        'placeholder' => '10.00',
400
-        'type' => 'text',
401
-    ],
402
-    'settings.schema.highprice' => [
403
-        'default' => '',
404
-        'depends_on' => [
405
-            'settings.schema.type.default' => 'Product',
406
-            'settings.schema.offertype' => 'AggregateOffer',
407
-        ],
408
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_highprice</code>',
409
-        'label' => __('High Price', 'site-reviews'),
410
-        'placeholder' => '100.00',
411
-        'type' => 'text',
412
-    ],
413
-    'settings.schema.pricecurrency' => [
414
-        'default' => '',
415
-        'depends_on' => [
416
-            'settings.schema.type.default' => 'Product',
417
-        ],
418
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_pricecurrency</code>',
419
-        'label' => __('Price Currency', 'site-reviews'),
420
-        'placeholder' => 'USD',
421
-        'type' => 'text',
422
-    ],
423
-    'settings.submissions.required' => [
424
-        'default' => ['content', 'email', 'name', 'rating', 'terms', 'title'],
425
-        'description' => __('Choose which fields should be required in the submission form.', 'site-reviews'),
426
-        'label' => __('Required Fields', 'site-reviews'),
427
-        'options' => [
428
-            'rating' => __('Rating', 'site-reviews'),
429
-            'title' => __('Title', 'site-reviews'),
430
-            'content' => __('Review', 'site-reviews'),
431
-            'name' => __('Name', 'site-reviews'),
432
-            'email' => __('Email', 'site-reviews'),
433
-            'terms' => __('Terms', 'site-reviews'),
434
-        ],
435
-        'type' => 'checkbox',
436
-    ],
437
-    'settings.submissions.limit' => [
438
-        'default' => '',
439
-        'description' => __('Limits the number of reviews that can be submitted to one-per-person. If you are assigning reviews, then the limit will be applied to the assigned page or category.', 'site-reviews'),
440
-        'label' => __('Limit Reviews', 'site-reviews'),
441
-        'options' => [
442
-            '' => __('No Limit', 'site-reviews'),
443
-            'email' => __('By Email Address', 'site-reviews'),
444
-            'ip_address' => __('By IP Address', 'site-reviews'),
445
-            'username' => __('By Username (will only work for registered users)', 'site-reviews'),
446
-        ],
447
-        'type' => 'select',
448
-    ],
449
-    'settings.submissions.limit_whitelist.email' => [
450
-        'default' => '',
451
-        'depends_on' => [
452
-            'settings.submissions.limit' => ['email'],
453
-        ],
454
-        'description' => __('One Email per line. All emails in the whitelist will be excluded from the review submission limit.', 'site-reviews'),
455
-        'label' => __('Email Whitelist', 'site-reviews'),
456
-        'rows' => 5,
457
-        'type' => 'code',
458
-    ],
459
-    'settings.submissions.limit_whitelist.ip_address' => [
460
-        'default' => '',
461
-        'depends_on' => [
462
-            'settings.submissions.limit' => ['ip_address'],
463
-        ],
464
-        'description' => __('One IP Address per line. All IP Addresses in the whitelist will be excluded from the review submission limit..', 'site-reviews'),
465
-        'label' => __('IP Address Whitelist', 'site-reviews'),
466
-        'rows' => 5,
467
-        'type' => 'code',
468
-    ],
469
-    'settings.submissions.limit_whitelist.username' => [
470
-        'default' => '',
471
-        'depends_on' => [
472
-            'settings.submissions.limit' => ['username'],
473
-        ],
474
-        'description' => __('One Username per line. All registered users with a Username in the whitelist will be excluded from the review submission limit.', 'site-reviews'),
475
-        'label' => __('Username Whitelist', 'site-reviews'),
476
-        'rows' => 5,
477
-        'type' => 'code',
478
-    ],
479
-    'settings.submissions.recaptcha.integration' => [
480
-        'default' => '',
481
-        'description' => __('Invisible reCAPTCHA is a free anti-spam service from Google. To use it, you will need to <a href="https://www.google.com/recaptcha/admin" target="_blank">sign up</a> for an API key pair for your site.', 'site-reviews'),
482
-        'label' => __('Invisible reCAPTCHA', 'site-reviews'),
483
-        'options' => [
484
-            '' => 'Do not use reCAPTCHA',
485
-            'all' => 'Use reCAPTCHA',
486
-            'guest' => 'Use reCAPTCHA only for guest users',
487
-        ],
488
-        'type' => 'select',
489
-    ],
490
-    'settings.submissions.recaptcha.key' => [
491
-        'default' => '',
492
-        'depends_on' => [
493
-            'settings.submissions.recaptcha.integration' => ['all', 'guest'],
494
-        ],
495
-        'label' => __('Site Key', 'site-reviews'),
496
-        'type' => 'text',
497
-    ],
498
-    'settings.submissions.recaptcha.secret' => [
499
-        'default' => '',
500
-        'depends_on' => [
501
-            'settings.submissions.recaptcha.integration' => ['all', 'guest'],
502
-        ],
503
-        'label' => __('Site Secret', 'site-reviews'),
504
-        'type' => 'text',
505
-    ],
506
-    'settings.submissions.recaptcha.position' => [
507
-        'default' => 'bottomleft',
508
-        'depends_on' => [
509
-            'settings.submissions.recaptcha.integration' => ['all', 'guest'],
510
-        ],
511
-        'description' => __('This option may not work consistently if another plugin is loading reCAPTCHA on the same page as Site Reviews.', 'site-reviews'),
512
-        'label' => __('Badge Position', 'site-reviews'),
513
-        'options' => [
514
-            'bottomleft' => 'Bottom Left',
515
-            'bottomright' => 'Bottom Right',
516
-            'inline' => 'Inline',
517
-        ],
518
-        'type' => 'select',
519
-    ],
520
-    'settings.submissions.akismet' => [
521
-        'default' => 'no',
522
-        'description' => __('The <a href="https://akismet.com" target="_blank">Akismet plugin</a> integration provides spam-filtering for your reviews. In order for this setting to have any affect, you will need to first install and activate the Akismet plugin and set up a WordPress.com API key.', 'site-reviews'),
523
-        'label' => __('Enable Akismet Integration', 'site-reviews'),
524
-        'type' => 'yes_no',
525
-    ],
526
-    'settings.submissions.blacklist.integration' => [
527
-        'default' => '',
528
-        'description' => sprintf(__('Choose which Blacklist you would prefer to use for reviews. The %s can be found in the WordPress Discussion Settings page.', 'site-reviews'),
529
-            '<a href="'.admin_url('options-discussion.php#users_can_register').'">'.__('Comment Blacklist', 'site-reviews').'</a>'
530
-        ),
531
-        'label' => __('Blacklist', 'site-reviews'),
532
-        'options' => [
533
-            '' => 'Use the Site Reviews Blacklist',
534
-            'comments' => 'Use the WordPress Comment Blacklist',
535
-        ],
536
-        'type' => 'select',
537
-    ],
538
-    'settings.submissions.blacklist.entries' => [
539
-        'default' => '',
540
-        'depends_on' => [
541
-            'settings.submissions.blacklist.integration' => [''],
542
-        ],
543
-        'description' => __('One entry or IP address per line. When a review contains any of these entries in its title, content, name, email, or IP address, it will be rejected. It is case-insensitive and will match partial words, so "press" will match "WordPress".', 'site-reviews'),
544
-        'label' => __('Review Blacklist', 'site-reviews'),
545
-        'rows' => 10,
546
-        'type' => 'code',
547
-    ],
548
-    'settings.submissions.blacklist.action' => [
549
-        'default' => 'unapprove',
550
-        'description' => __('Choose the action that should be taken when a review is blacklisted.', 'site-reviews'),
551
-        'label' => __('Blacklist Action', 'site-reviews'),
552
-        'options' => [
553
-            'unapprove' => __('Require approval', 'site-reviews'),
554
-            'reject' => __('Reject submission', 'site-reviews'),
555
-        ],
556
-        'type' => 'select',
557
-    ],
4
+	'settings.general.style' => [
5
+		'default' => 'default',
6
+		'description' => __('Site Reviews relies on the CSS of your theme to style the submission form. If your theme does not provide proper CSS rules for form elements and you are using a WordPress plugin/theme or CSS Framework listed here, please try selecting it, otherwise choose "Site Reviews (default)".', 'site-reviews'),
7
+		'label' => __('Plugin Style', 'site-reviews'),
8
+		'options' => [
9
+			'bootstrap_4' => 'CSS Framework: Bootstrap 4',
10
+			'bootstrap_4_custom' => 'CSS Framework: Bootstrap 4 (Custom Forms)',
11
+			'contact_form_7' => 'Plugin: Contact Form 7 (v5)',
12
+			'ninja_forms' => 'Plugin: Ninja Forms (v3)',
13
+			'wpforms' => 'Plugin: WPForms Lite (v1)',
14
+			'default' => __('Site Reviews (default)', 'site-reviews'),
15
+			'minimal' => __('Site Reviews (minimal)', 'site-reviews'),
16
+			'divi' => 'Theme: Divi (v3)',
17
+			'materialize' => 'Theme: Materialize',
18
+			'twentyfifteen' => 'Theme: Twenty Fifteen',
19
+			'twentyseventeen' => 'Theme: Twenty Seventeen',
20
+			'twentynineteen' => 'Theme: Twenty Nineteen',
21
+		],
22
+		'type' => 'select',
23
+	],
24
+	'settings.general.require.approval' => [
25
+		'default' => 'no',
26
+		'description' => __('Set the status of new review submissions to "unapproved".', 'site-reviews'),
27
+		'label' => __('Require Approval', 'site-reviews'),
28
+		'type' => 'yes_no',
29
+	],
30
+	'settings.general.require.login' => [
31
+		'default' => 'no',
32
+		'description' => __('Only allow review submissions from registered users.', 'site-reviews'),
33
+		'label' => __('Require Login', 'site-reviews'),
34
+		'type' => 'yes_no',
35
+	],
36
+	'settings.general.require.login_register' => [
37
+		'default' => 'no',
38
+		'depends_on' => [
39
+			'settings.general.require.login' => 'yes',
40
+		],
41
+		'description' => sprintf(__('Show a link for a new user to register. The %s Membership option must be enabled in General Settings for this to work.', 'site-reviews'),
42
+			'<a href="'.admin_url('options-general.php#users_can_register').'">'.__('Anyone can register', 'site-reviews').'</a>'
43
+		),
44
+		'label' => __('Show Registration Link', 'site-reviews'),
45
+		'type' => 'yes_no',
46
+	],
47
+	'settings.general.multilingual' => [
48
+		'default' => '',
49
+		'description' => __('Integrate with a multilingual plugin to calculate ratings for all languages of a post.', 'site-reviews'),
50
+		'label' => __('Multilingual', 'site-reviews'),
51
+		'options' => [
52
+			'' => __('No Integration', 'site-reviews'),
53
+			'polylang' => __('Integrate with Polylang', 'site-reviews'),
54
+			'wpml' => __('Integrate with WPML', 'site-reviews'),
55
+		],
56
+		'type' => 'select',
57
+	],
58
+	'settings.general.trustalyze' => [
59
+		'default' => 'no',
60
+		'description' => sprintf(__('Integrate with the %s and validate your reviews on the blockchain to increase online reputation, trust, and transparency.', 'site-reviews'),
61
+			'<a href="https://trustalyze.com/plans?ref=105" target="_blank">Trustalyze Confidence System</a>'
62
+		),
63
+		'label' => __('Blockchain Validation', 'site-reviews'),
64
+		'type' => 'yes_no',
65
+	],
66
+	'settings.general.trustalyze_email' => [
67
+		'default' => '',
68
+		'depends_on' => [
69
+			'settings.general.trustalyze' => ['yes'],
70
+		],
71
+		'description' => __('Enter your Trustalyze account email here.', 'site-reviews'),
72
+		'label' => __('Trustalyze Email', 'site-reviews'),
73
+		'type' => 'text',
74
+	],
75
+	'settings.general.trustalyze_serial' => [
76
+		'default' => '',
77
+		'depends_on' => [
78
+			'settings.general.trustalyze' => ['yes'],
79
+		],
80
+		'description' => __('Enter your Trustalyze account serial key here.', 'site-reviews'),
81
+		'label' => __('Trustalyze Serial Key', 'site-reviews'),
82
+		'type' => 'password',
83
+	],
84
+	'settings.general.notifications' => [
85
+		'default' => [],
86
+		'label' => __('Notifications', 'site-reviews'),
87
+		'options' => [
88
+			'admin' => __('Send to administrator', 'site-reviews').' <code>'.(string) get_option('admin_email').'</code>',
89
+			'author' => __('Send to author of the page that the review is assigned to', 'site-reviews'),
90
+			'custom' => __('Send to one or more email addresses', 'site-reviews'),
91
+			'slack' => __('Send to <a href="https://slack.com/">Slack</a>', 'site-reviews'),
92
+		],
93
+		'type' => 'checkbox',
94
+	],
95
+	'settings.general.notification_email' => [
96
+		'default' => '',
97
+		'depends_on' => [
98
+			'settings.general.notifications' => ['custom'],
99
+		],
100
+		'label' => __('Send Notification Emails To', 'site-reviews'),
101
+		'placeholder' => __('Separate multiple emails with a comma', 'site-reviews'),
102
+		'type' => 'text',
103
+	],
104
+	'settings.general.notification_slack' => [
105
+		'default' => '',
106
+		'depends_on' => [
107
+			'settings.general.notifications' => ['slack'],
108
+		],
109
+		'description' => sprintf(__('To send notifications to Slack, create a new %s and then paste the provided Webhook URL in the field above.', 'site-reviews'),
110
+			'<a href="https://api.slack.com/incoming-webhooks">'.__('Incoming WebHook', 'site-reviews').'</a>'
111
+		),
112
+		'label' => __('Slack Webhook URL', 'site-reviews'),
113
+		'type' => 'text',
114
+	],
115
+	'settings.general.notification_message' => [
116
+		'default' => glsr('Modules\Html\Template')->build('templates/email-notification'),
117
+		'depends_on' => [
118
+			'settings.general.notifications' => ['admin', 'author', 'custom', 'slack'],
119
+		],
120
+		'description' => __(
121
+			'To restore the default text, save an empty template. '.
122
+			'If you are sending notifications to Slack then this template will only be used as a fallback in the event that <a href="https://api.slack.com/docs/attachments">Message Attachments</a> have been disabled. Available template tags:'.
123
+			'<br><code>{review_rating}</code> The review rating number (1-5)'.
124
+			'<br><code>{review_title}</code> The review title'.
125
+			'<br><code>{review_content}</code> The review content'.
126
+			'<br><code>{review_author}</code> The review author'.
127
+			'<br><code>{review_email}</code> The email of the review author'.
128
+			'<br><code>{review_ip}</code> The IP address of the review author'.
129
+			'<br><code>{review_link}</code> The link to edit/view a review',
130
+			'site-reviews'
131
+		),
132
+		'label' => __('Notification Template', 'site-reviews'),
133
+		'rows' => 10,
134
+		'type' => 'code',
135
+	],
136
+	'settings.reviews.date.format' => [
137
+		'default' => '',
138
+		'description' => sprintf(__('The default date format is the one set in your %s.', 'site-reviews'),
139
+			'<a href="'.admin_url('options-general.php#date_format_custom').'">'.__('WordPress settings', 'site-reviews').'</a>'
140
+		),
141
+		'label' => __('Date Format', 'site-reviews'),
142
+		'options' => [
143
+			'' => __('Use the default date format', 'site-reviews'),
144
+			'relative' => __('Use a relative date format', 'site-reviews'),
145
+			'custom' => __('Use a custom date format', 'site-reviews'),
146
+		],
147
+		'type' => 'select',
148
+	],
149
+	'settings.reviews.date.custom' => [
150
+		'default' => get_option('date_format'),
151
+		'depends_on' => [
152
+			'settings.reviews.date.format' => 'custom',
153
+		],
154
+		'description' => __('Enter a custom date format (<a href="https://codex.wordpress.org/Formatting_Date_and_Time">documentation on date and time formatting</a>).', 'site-reviews'),
155
+		'label' => __('Custom Date Format', 'site-reviews'),
156
+		'type' => 'text',
157
+	],
158
+	'settings.reviews.name.format' => [
159
+		'default' => '',
160
+		'description' => __('Choose how names are shown in your reviews.', 'site-reviews'),
161
+		'label' => __('Name Format', 'site-reviews'),
162
+		'options' => [
163
+			'' => __('Use the name as given', 'site-reviews'),
164
+			'first' => __('Use the first name only', 'site-reviews'),
165
+			'first_initial' => __('Convert first name to an initial', 'site-reviews'),
166
+			'last_initial' => __('Convert last name to an initial', 'site-reviews'),
167
+			'initials' => __('Convert to all initials', 'site-reviews'),
168
+		],
169
+		'type' => 'select',
170
+	],
171
+	'settings.reviews.name.initial' => [
172
+		'default' => '',
173
+		'depends_on' => [
174
+			'settings.reviews.name.format' => ['first_initial', 'last_initial', 'initials'],
175
+		],
176
+		'description' => __('Choose how the initial is displayed.', 'site-reviews'),
177
+		'label' => __('Initial Format', 'site-reviews'),
178
+		'options' => [
179
+			'' => __('Initial with a space', 'site-reviews'),
180
+			'period' => __('Initial with a period', 'site-reviews'),
181
+			'period_space' => __('Initial with a period and a space', 'site-reviews'),
182
+		],
183
+		'type' => 'select',
184
+	],
185
+	'settings.reviews.assigned_links' => [
186
+		'default' => 'no',
187
+		'description' => __('Display a link to the assigned post of a review.', 'site-reviews'),
188
+		'label' => __('Enable Assigned Links', 'site-reviews'),
189
+		'type' => 'yes_no',
190
+	],
191
+	'settings.reviews.avatars' => [
192
+		'default' => 'no',
193
+		'description' => __('Display reviewer avatars. These are generated from the email address of the reviewer using <a href="https://gravatar.com">Gravatar</a>.', 'site-reviews'),
194
+		'label' => __('Enable Avatars', 'site-reviews'),
195
+		'type' => 'yes_no',
196
+	],
197
+	'settings.reviews.avatars_regenerate' => [
198
+		'default' => 'no',
199
+		'depends_on' => [
200
+			'settings.reviews.avatars' => 'yes',
201
+		],
202
+		'description' => __('Regenerate the avatar whenever a local review is shown?', 'site-reviews'),
203
+		'label' => __('Regenerate Avatars', 'site-reviews'),
204
+		'type' => 'yes_no',
205
+	],
206
+	'settings.reviews.avatars_size' => [
207
+		'default' => 40,
208
+		'depends_on' => [
209
+			'settings.reviews.avatars' => 'yes',
210
+		],
211
+		'description' => __('Set the avatar size in pixels.', 'site-reviews'),
212
+		'label' => __('Avatar Size', 'site-reviews'),
213
+		'type' => 'number',
214
+	],
215
+	'settings.reviews.excerpts' => [
216
+		'default' => 'yes',
217
+		'description' => __('Display an excerpt instead of the full review.', 'site-reviews'),
218
+		'label' => __('Enable Excerpts', 'site-reviews'),
219
+		'type' => 'yes_no',
220
+	],
221
+	'settings.reviews.excerpts_length' => [
222
+		'default' => 55,
223
+		'depends_on' => [
224
+			'settings.reviews.excerpts' => 'yes',
225
+		],
226
+		'description' => __('Set the excerpt word length.', 'site-reviews'),
227
+		'label' => __('Excerpt Length', 'site-reviews'),
228
+		'type' => 'number',
229
+	],
230
+	'settings.reviews.fallback' => [
231
+		'default' => 'yes',
232
+		'description' => sprintf(__('Display the fallback text when there are no reviews to display. This can be changed on the %s page. You may also override this by using the "fallback" option on the shortcode. The default fallback text is: %s', 'site-reviews'),
233
+			'<a href="'.admin_url('edit.php?post_type='.glsr()->post_type.'&page=settings#tab-translations').'">'.__('Translations', 'site-reviews').'</a>',
234
+			'<code>'.__('There are no reviews yet. Be the first one to write one.', 'site-reviews').'</code>'
235
+		),
236
+		'label' => __('Enable Fallback Text', 'site-reviews'),
237
+		'type' => 'yes_no',
238
+	],
239
+	'settings.reviews.pagination.url_parameter' => [
240
+		'default' => 'yes',
241
+		'description' => sprintf(_x('Use the <code>?%s={page_number}</code> URL parameter with AJAX pagination.', 'admin-text', 'site-reviews'), glsr()->constant('PAGED_QUERY_VAR')),
242
+		'label' => esc_html_x('Pagination URL Parameter', 'admin-text', 'site-reviews'),
243
+		'type' => 'yes_no',
244
+	],
245
+	'settings.schema.type.default' => [
246
+		'default' => 'LocalBusiness',
247
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_type</code>',
248
+		'label' => __('Default Schema Type', 'site-reviews'),
249
+		'options' => [
250
+			'LocalBusiness' => __('Local Business', 'site-reviews'),
251
+			'Product' => __('Product', 'site-reviews'),
252
+			'custom' => __('Custom', 'site-reviews'),
253
+		],
254
+		'type' => 'select',
255
+	],
256
+	'settings.schema.type.custom' => [
257
+		'default' => '',
258
+		'depends_on' => [
259
+			'settings.schema.type.default' => 'custom',
260
+		],
261
+		'description' => '<a href="https://schema.org/docs/schemas.html">'.__('View more information on schema types here', 'site-reviews').'</a>',
262
+		'label' => __('Custom Schema Type', 'site-reviews'),
263
+		'type' => 'text',
264
+	],
265
+	'settings.schema.name.default' => [
266
+		'default' => 'post',
267
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_name</code>',
268
+		'label' => __('Default Name', 'site-reviews'),
269
+		'options' => [
270
+			'post' => __('Use the assigned or current page title', 'site-reviews'),
271
+			'custom' => __('Enter a custom title', 'site-reviews'),
272
+		],
273
+		'type' => 'select',
274
+	],
275
+	'settings.schema.name.custom' => [
276
+		'default' => '',
277
+		'depends_on' => [
278
+			'settings.schema.name.default' => 'custom',
279
+		],
280
+		'label' => __('Custom Name', 'site-reviews'),
281
+		'type' => 'text',
282
+	],
283
+	'settings.schema.description.default' => [
284
+		'default' => 'post',
285
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_description</code>',
286
+		'label' => __('Default Description', 'site-reviews'),
287
+		'options' => [
288
+			'post' => __('Use the assigned or current page excerpt', 'site-reviews'),
289
+			'custom' => __('Enter a custom description', 'site-reviews'),
290
+		],
291
+		'type' => 'select',
292
+	],
293
+	'settings.schema.description.custom' => [
294
+		'default' => '',
295
+		'depends_on' => [
296
+			'settings.schema.description.default' => 'custom',
297
+		],
298
+		'label' => __('Custom Description', 'site-reviews'),
299
+		'type' => 'text',
300
+	],
301
+	'settings.schema.url.default' => [
302
+		'default' => 'post',
303
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_url</code>',
304
+		'label' => __('Default URL', 'site-reviews'),
305
+		'options' => [
306
+			'post' => __('Use the assigned or current page URL', 'site-reviews'),
307
+			'custom' => __('Enter a custom URL', 'site-reviews'),
308
+		],
309
+		'type' => 'select',
310
+	],
311
+	'settings.schema.url.custom' => [
312
+		'default' => '',
313
+		'depends_on' => [
314
+			'settings.schema.url.default' => 'custom',
315
+		],
316
+		'label' => __('Custom URL', 'site-reviews'),
317
+		'type' => 'text',
318
+	],
319
+	'settings.schema.image.default' => [
320
+		'default' => 'post',
321
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_image</code>',
322
+		'label' => __('Default Image', 'site-reviews'),
323
+		'options' => [
324
+			'post' => __('Use the featured image of the assigned or current page', 'site-reviews'),
325
+			'custom' => __('Enter a custom image URL', 'site-reviews'),
326
+		],
327
+		'type' => 'select',
328
+	],
329
+	'settings.schema.image.custom' => [
330
+		'default' => '',
331
+		'depends_on' => [
332
+			'settings.schema.image.default' => 'custom',
333
+		],
334
+		'label' => __('Custom Image URL', 'site-reviews'),
335
+		'type' => 'text',
336
+	],
337
+	'settings.schema.address' => [
338
+		'default' => '',
339
+		'depends_on' => [
340
+			'settings.schema.type.default' => 'LocalBusiness',
341
+		],
342
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_address</code>',
343
+		'label' => __('Address', 'site-reviews'),
344
+		'placeholder' => '60 29th Street #343, San Francisco, CA 94110, US',
345
+		'type' => 'text',
346
+	],
347
+	'settings.schema.telephone' => [
348
+		'default' => '',
349
+		'depends_on' => [
350
+			'settings.schema.type.default' => 'LocalBusiness',
351
+		],
352
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_telephone</code>',
353
+		'label' => __('Telephone Number', 'site-reviews'),
354
+		'placeholder' => '+1 (877) 273-3049',
355
+		'type' => 'text',
356
+	],
357
+	'settings.schema.pricerange' => [
358
+		'default' => '',
359
+		'depends_on' => [
360
+			'settings.schema.type.default' => 'LocalBusiness',
361
+		],
362
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_pricerange</code>',
363
+		'label' => __('Price Range', 'site-reviews'),
364
+		'placeholder' => '$$-$$$',
365
+		'type' => 'text',
366
+	],
367
+	'settings.schema.offertype' => [
368
+		'default' => 'AggregateOffer',
369
+		'depends_on' => [
370
+			'settings.schema.type.default' => 'Product',
371
+		],
372
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_offertype</code>',
373
+		'label' => __('Offer Type', 'site-reviews'),
374
+		'options' => [
375
+			'AggregateOffer' => __('AggregateOffer', 'site-reviews'),
376
+			'Offer' => __('Offer', 'site-reviews'),
377
+		],
378
+		'type' => 'select',
379
+	],
380
+	'settings.schema.price' => [
381
+		'default' => '',
382
+		'depends_on' => [
383
+			'settings.schema.type.default' => 'Product',
384
+			'settings.schema.offertype' => 'Offer',
385
+		],
386
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_price</code>',
387
+		'label' => __('Price', 'site-reviews'),
388
+		'placeholder' => '50.00',
389
+		'type' => 'text',
390
+	],
391
+	'settings.schema.lowprice' => [
392
+		'default' => '',
393
+		'depends_on' => [
394
+			'settings.schema.type.default' => 'Product',
395
+			'settings.schema.offertype' => 'AggregateOffer',
396
+		],
397
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_lowprice</code>',
398
+		'label' => __('Low Price', 'site-reviews'),
399
+		'placeholder' => '10.00',
400
+		'type' => 'text',
401
+	],
402
+	'settings.schema.highprice' => [
403
+		'default' => '',
404
+		'depends_on' => [
405
+			'settings.schema.type.default' => 'Product',
406
+			'settings.schema.offertype' => 'AggregateOffer',
407
+		],
408
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_highprice</code>',
409
+		'label' => __('High Price', 'site-reviews'),
410
+		'placeholder' => '100.00',
411
+		'type' => 'text',
412
+	],
413
+	'settings.schema.pricecurrency' => [
414
+		'default' => '',
415
+		'depends_on' => [
416
+			'settings.schema.type.default' => 'Product',
417
+		],
418
+		'description' => __('Custom Field name', 'site-reviews').': <code>schema_pricecurrency</code>',
419
+		'label' => __('Price Currency', 'site-reviews'),
420
+		'placeholder' => 'USD',
421
+		'type' => 'text',
422
+	],
423
+	'settings.submissions.required' => [
424
+		'default' => ['content', 'email', 'name', 'rating', 'terms', 'title'],
425
+		'description' => __('Choose which fields should be required in the submission form.', 'site-reviews'),
426
+		'label' => __('Required Fields', 'site-reviews'),
427
+		'options' => [
428
+			'rating' => __('Rating', 'site-reviews'),
429
+			'title' => __('Title', 'site-reviews'),
430
+			'content' => __('Review', 'site-reviews'),
431
+			'name' => __('Name', 'site-reviews'),
432
+			'email' => __('Email', 'site-reviews'),
433
+			'terms' => __('Terms', 'site-reviews'),
434
+		],
435
+		'type' => 'checkbox',
436
+	],
437
+	'settings.submissions.limit' => [
438
+		'default' => '',
439
+		'description' => __('Limits the number of reviews that can be submitted to one-per-person. If you are assigning reviews, then the limit will be applied to the assigned page or category.', 'site-reviews'),
440
+		'label' => __('Limit Reviews', 'site-reviews'),
441
+		'options' => [
442
+			'' => __('No Limit', 'site-reviews'),
443
+			'email' => __('By Email Address', 'site-reviews'),
444
+			'ip_address' => __('By IP Address', 'site-reviews'),
445
+			'username' => __('By Username (will only work for registered users)', 'site-reviews'),
446
+		],
447
+		'type' => 'select',
448
+	],
449
+	'settings.submissions.limit_whitelist.email' => [
450
+		'default' => '',
451
+		'depends_on' => [
452
+			'settings.submissions.limit' => ['email'],
453
+		],
454
+		'description' => __('One Email per line. All emails in the whitelist will be excluded from the review submission limit.', 'site-reviews'),
455
+		'label' => __('Email Whitelist', 'site-reviews'),
456
+		'rows' => 5,
457
+		'type' => 'code',
458
+	],
459
+	'settings.submissions.limit_whitelist.ip_address' => [
460
+		'default' => '',
461
+		'depends_on' => [
462
+			'settings.submissions.limit' => ['ip_address'],
463
+		],
464
+		'description' => __('One IP Address per line. All IP Addresses in the whitelist will be excluded from the review submission limit..', 'site-reviews'),
465
+		'label' => __('IP Address Whitelist', 'site-reviews'),
466
+		'rows' => 5,
467
+		'type' => 'code',
468
+	],
469
+	'settings.submissions.limit_whitelist.username' => [
470
+		'default' => '',
471
+		'depends_on' => [
472
+			'settings.submissions.limit' => ['username'],
473
+		],
474
+		'description' => __('One Username per line. All registered users with a Username in the whitelist will be excluded from the review submission limit.', 'site-reviews'),
475
+		'label' => __('Username Whitelist', 'site-reviews'),
476
+		'rows' => 5,
477
+		'type' => 'code',
478
+	],
479
+	'settings.submissions.recaptcha.integration' => [
480
+		'default' => '',
481
+		'description' => __('Invisible reCAPTCHA is a free anti-spam service from Google. To use it, you will need to <a href="https://www.google.com/recaptcha/admin" target="_blank">sign up</a> for an API key pair for your site.', 'site-reviews'),
482
+		'label' => __('Invisible reCAPTCHA', 'site-reviews'),
483
+		'options' => [
484
+			'' => 'Do not use reCAPTCHA',
485
+			'all' => 'Use reCAPTCHA',
486
+			'guest' => 'Use reCAPTCHA only for guest users',
487
+		],
488
+		'type' => 'select',
489
+	],
490
+	'settings.submissions.recaptcha.key' => [
491
+		'default' => '',
492
+		'depends_on' => [
493
+			'settings.submissions.recaptcha.integration' => ['all', 'guest'],
494
+		],
495
+		'label' => __('Site Key', 'site-reviews'),
496
+		'type' => 'text',
497
+	],
498
+	'settings.submissions.recaptcha.secret' => [
499
+		'default' => '',
500
+		'depends_on' => [
501
+			'settings.submissions.recaptcha.integration' => ['all', 'guest'],
502
+		],
503
+		'label' => __('Site Secret', 'site-reviews'),
504
+		'type' => 'text',
505
+	],
506
+	'settings.submissions.recaptcha.position' => [
507
+		'default' => 'bottomleft',
508
+		'depends_on' => [
509
+			'settings.submissions.recaptcha.integration' => ['all', 'guest'],
510
+		],
511
+		'description' => __('This option may not work consistently if another plugin is loading reCAPTCHA on the same page as Site Reviews.', 'site-reviews'),
512
+		'label' => __('Badge Position', 'site-reviews'),
513
+		'options' => [
514
+			'bottomleft' => 'Bottom Left',
515
+			'bottomright' => 'Bottom Right',
516
+			'inline' => 'Inline',
517
+		],
518
+		'type' => 'select',
519
+	],
520
+	'settings.submissions.akismet' => [
521
+		'default' => 'no',
522
+		'description' => __('The <a href="https://akismet.com" target="_blank">Akismet plugin</a> integration provides spam-filtering for your reviews. In order for this setting to have any affect, you will need to first install and activate the Akismet plugin and set up a WordPress.com API key.', 'site-reviews'),
523
+		'label' => __('Enable Akismet Integration', 'site-reviews'),
524
+		'type' => 'yes_no',
525
+	],
526
+	'settings.submissions.blacklist.integration' => [
527
+		'default' => '',
528
+		'description' => sprintf(__('Choose which Blacklist you would prefer to use for reviews. The %s can be found in the WordPress Discussion Settings page.', 'site-reviews'),
529
+			'<a href="'.admin_url('options-discussion.php#users_can_register').'">'.__('Comment Blacklist', 'site-reviews').'</a>'
530
+		),
531
+		'label' => __('Blacklist', 'site-reviews'),
532
+		'options' => [
533
+			'' => 'Use the Site Reviews Blacklist',
534
+			'comments' => 'Use the WordPress Comment Blacklist',
535
+		],
536
+		'type' => 'select',
537
+	],
538
+	'settings.submissions.blacklist.entries' => [
539
+		'default' => '',
540
+		'depends_on' => [
541
+			'settings.submissions.blacklist.integration' => [''],
542
+		],
543
+		'description' => __('One entry or IP address per line. When a review contains any of these entries in its title, content, name, email, or IP address, it will be rejected. It is case-insensitive and will match partial words, so "press" will match "WordPress".', 'site-reviews'),
544
+		'label' => __('Review Blacklist', 'site-reviews'),
545
+		'rows' => 10,
546
+		'type' => 'code',
547
+	],
548
+	'settings.submissions.blacklist.action' => [
549
+		'default' => 'unapprove',
550
+		'description' => __('Choose the action that should be taken when a review is blacklisted.', 'site-reviews'),
551
+		'label' => __('Blacklist Action', 'site-reviews'),
552
+		'options' => [
553
+			'unapprove' => __('Require approval', 'site-reviews'),
554
+			'reject' => __('Reject submission', 'site-reviews'),
555
+		],
556
+		'type' => 'select',
557
+	],
558 558
 ];
Please login to merge, or discard this patch.
Spacing   +155 added lines, -155 removed lines patch added patch discarded remove patch
@@ -3,16 +3,16 @@  discard block
 block discarded – undo
3 3
 return [
4 4
     'settings.general.style' => [
5 5
         'default' => 'default',
6
-        'description' => __('Site Reviews relies on the CSS of your theme to style the submission form. If your theme does not provide proper CSS rules for form elements and you are using a WordPress plugin/theme or CSS Framework listed here, please try selecting it, otherwise choose "Site Reviews (default)".', 'site-reviews'),
7
-        'label' => __('Plugin Style', 'site-reviews'),
6
+        'description' => __( 'Site Reviews relies on the CSS of your theme to style the submission form. If your theme does not provide proper CSS rules for form elements and you are using a WordPress plugin/theme or CSS Framework listed here, please try selecting it, otherwise choose "Site Reviews (default)".', 'site-reviews' ),
7
+        'label' => __( 'Plugin Style', 'site-reviews' ),
8 8
         'options' => [
9 9
             'bootstrap_4' => 'CSS Framework: Bootstrap 4',
10 10
             'bootstrap_4_custom' => 'CSS Framework: Bootstrap 4 (Custom Forms)',
11 11
             'contact_form_7' => 'Plugin: Contact Form 7 (v5)',
12 12
             'ninja_forms' => 'Plugin: Ninja Forms (v3)',
13 13
             'wpforms' => 'Plugin: WPForms Lite (v1)',
14
-            'default' => __('Site Reviews (default)', 'site-reviews'),
15
-            'minimal' => __('Site Reviews (minimal)', 'site-reviews'),
14
+            'default' => __( 'Site Reviews (default)', 'site-reviews' ),
15
+            'minimal' => __( 'Site Reviews (minimal)', 'site-reviews' ),
16 16
             'divi' => 'Theme: Divi (v3)',
17 17
             'materialize' => 'Theme: Materialize',
18 18
             'twentyfifteen' => 'Theme: Twenty Fifteen',
@@ -23,14 +23,14 @@  discard block
 block discarded – undo
23 23
     ],
24 24
     'settings.general.require.approval' => [
25 25
         'default' => 'no',
26
-        'description' => __('Set the status of new review submissions to "unapproved".', 'site-reviews'),
27
-        'label' => __('Require Approval', 'site-reviews'),
26
+        'description' => __( 'Set the status of new review submissions to "unapproved".', 'site-reviews' ),
27
+        'label' => __( 'Require Approval', 'site-reviews' ),
28 28
         'type' => 'yes_no',
29 29
     ],
30 30
     'settings.general.require.login' => [
31 31
         'default' => 'no',
32
-        'description' => __('Only allow review submissions from registered users.', 'site-reviews'),
33
-        'label' => __('Require Login', 'site-reviews'),
32
+        'description' => __( 'Only allow review submissions from registered users.', 'site-reviews' ),
33
+        'label' => __( 'Require Login', 'site-reviews' ),
34 34
         'type' => 'yes_no',
35 35
     ],
36 36
     'settings.general.require.login_register' => [
@@ -38,29 +38,29 @@  discard block
 block discarded – undo
38 38
         'depends_on' => [
39 39
             'settings.general.require.login' => 'yes',
40 40
         ],
41
-        'description' => sprintf(__('Show a link for a new user to register. The %s Membership option must be enabled in General Settings for this to work.', 'site-reviews'),
42
-            '<a href="'.admin_url('options-general.php#users_can_register').'">'.__('Anyone can register', 'site-reviews').'</a>'
41
+        'description' => sprintf( __( 'Show a link for a new user to register. The %s Membership option must be enabled in General Settings for this to work.', 'site-reviews' ),
42
+            '<a href="'.admin_url( 'options-general.php#users_can_register' ).'">'.__( 'Anyone can register', 'site-reviews' ).'</a>'
43 43
         ),
44
-        'label' => __('Show Registration Link', 'site-reviews'),
44
+        'label' => __( 'Show Registration Link', 'site-reviews' ),
45 45
         'type' => 'yes_no',
46 46
     ],
47 47
     'settings.general.multilingual' => [
48 48
         'default' => '',
49
-        'description' => __('Integrate with a multilingual plugin to calculate ratings for all languages of a post.', 'site-reviews'),
50
-        'label' => __('Multilingual', 'site-reviews'),
49
+        'description' => __( 'Integrate with a multilingual plugin to calculate ratings for all languages of a post.', 'site-reviews' ),
50
+        'label' => __( 'Multilingual', 'site-reviews' ),
51 51
         'options' => [
52
-            '' => __('No Integration', 'site-reviews'),
53
-            'polylang' => __('Integrate with Polylang', 'site-reviews'),
54
-            'wpml' => __('Integrate with WPML', 'site-reviews'),
52
+            '' => __( 'No Integration', 'site-reviews' ),
53
+            'polylang' => __( 'Integrate with Polylang', 'site-reviews' ),
54
+            'wpml' => __( 'Integrate with WPML', 'site-reviews' ),
55 55
         ],
56 56
         'type' => 'select',
57 57
     ],
58 58
     'settings.general.trustalyze' => [
59 59
         'default' => 'no',
60
-        'description' => sprintf(__('Integrate with the %s and validate your reviews on the blockchain to increase online reputation, trust, and transparency.', 'site-reviews'),
60
+        'description' => sprintf( __( 'Integrate with the %s and validate your reviews on the blockchain to increase online reputation, trust, and transparency.', 'site-reviews' ),
61 61
             '<a href="https://trustalyze.com/plans?ref=105" target="_blank">Trustalyze Confidence System</a>'
62 62
         ),
63
-        'label' => __('Blockchain Validation', 'site-reviews'),
63
+        'label' => __( 'Blockchain Validation', 'site-reviews' ),
64 64
         'type' => 'yes_no',
65 65
     ],
66 66
     'settings.general.trustalyze_email' => [
@@ -68,8 +68,8 @@  discard block
 block discarded – undo
68 68
         'depends_on' => [
69 69
             'settings.general.trustalyze' => ['yes'],
70 70
         ],
71
-        'description' => __('Enter your Trustalyze account email here.', 'site-reviews'),
72
-        'label' => __('Trustalyze Email', 'site-reviews'),
71
+        'description' => __( 'Enter your Trustalyze account email here.', 'site-reviews' ),
72
+        'label' => __( 'Trustalyze Email', 'site-reviews' ),
73 73
         'type' => 'text',
74 74
     ],
75 75
     'settings.general.trustalyze_serial' => [
@@ -77,18 +77,18 @@  discard block
 block discarded – undo
77 77
         'depends_on' => [
78 78
             'settings.general.trustalyze' => ['yes'],
79 79
         ],
80
-        'description' => __('Enter your Trustalyze account serial key here.', 'site-reviews'),
81
-        'label' => __('Trustalyze Serial Key', 'site-reviews'),
80
+        'description' => __( 'Enter your Trustalyze account serial key here.', 'site-reviews' ),
81
+        'label' => __( 'Trustalyze Serial Key', 'site-reviews' ),
82 82
         'type' => 'password',
83 83
     ],
84 84
     'settings.general.notifications' => [
85 85
         'default' => [],
86
-        'label' => __('Notifications', 'site-reviews'),
86
+        'label' => __( 'Notifications', 'site-reviews' ),
87 87
         'options' => [
88
-            'admin' => __('Send to administrator', 'site-reviews').' <code>'.(string) get_option('admin_email').'</code>',
89
-            'author' => __('Send to author of the page that the review is assigned to', 'site-reviews'),
90
-            'custom' => __('Send to one or more email addresses', 'site-reviews'),
91
-            'slack' => __('Send to <a href="https://slack.com/">Slack</a>', 'site-reviews'),
88
+            'admin' => __( 'Send to administrator', 'site-reviews' ).' <code>'.(string)get_option( 'admin_email' ).'</code>',
89
+            'author' => __( 'Send to author of the page that the review is assigned to', 'site-reviews' ),
90
+            'custom' => __( 'Send to one or more email addresses', 'site-reviews' ),
91
+            'slack' => __( 'Send to <a href="https://slack.com/">Slack</a>', 'site-reviews' ),
92 92
         ],
93 93
         'type' => 'checkbox',
94 94
     ],
@@ -97,8 +97,8 @@  discard block
 block discarded – undo
97 97
         'depends_on' => [
98 98
             'settings.general.notifications' => ['custom'],
99 99
         ],
100
-        'label' => __('Send Notification Emails To', 'site-reviews'),
101
-        'placeholder' => __('Separate multiple emails with a comma', 'site-reviews'),
100
+        'label' => __( 'Send Notification Emails To', 'site-reviews' ),
101
+        'placeholder' => __( 'Separate multiple emails with a comma', 'site-reviews' ),
102 102
         'type' => 'text',
103 103
     ],
104 104
     'settings.general.notification_slack' => [
@@ -106,14 +106,14 @@  discard block
 block discarded – undo
106 106
         'depends_on' => [
107 107
             'settings.general.notifications' => ['slack'],
108 108
         ],
109
-        'description' => sprintf(__('To send notifications to Slack, create a new %s and then paste the provided Webhook URL in the field above.', 'site-reviews'),
110
-            '<a href="https://api.slack.com/incoming-webhooks">'.__('Incoming WebHook', 'site-reviews').'</a>'
109
+        'description' => sprintf( __( 'To send notifications to Slack, create a new %s and then paste the provided Webhook URL in the field above.', 'site-reviews' ),
110
+            '<a href="https://api.slack.com/incoming-webhooks">'.__( 'Incoming WebHook', 'site-reviews' ).'</a>'
111 111
         ),
112
-        'label' => __('Slack Webhook URL', 'site-reviews'),
112
+        'label' => __( 'Slack Webhook URL', 'site-reviews' ),
113 113
         'type' => 'text',
114 114
     ],
115 115
     'settings.general.notification_message' => [
116
-        'default' => glsr('Modules\Html\Template')->build('templates/email-notification'),
116
+        'default' => glsr( 'Modules\Html\Template' )->build( 'templates/email-notification' ),
117 117
         'depends_on' => [
118 118
             'settings.general.notifications' => ['admin', 'author', 'custom', 'slack'],
119 119
         ],
@@ -129,42 +129,42 @@  discard block
 block discarded – undo
129 129
             '<br><code>{review_link}</code> The link to edit/view a review',
130 130
             'site-reviews'
131 131
         ),
132
-        'label' => __('Notification Template', 'site-reviews'),
132
+        'label' => __( 'Notification Template', 'site-reviews' ),
133 133
         'rows' => 10,
134 134
         'type' => 'code',
135 135
     ],
136 136
     'settings.reviews.date.format' => [
137 137
         'default' => '',
138
-        'description' => sprintf(__('The default date format is the one set in your %s.', 'site-reviews'),
139
-            '<a href="'.admin_url('options-general.php#date_format_custom').'">'.__('WordPress settings', 'site-reviews').'</a>'
138
+        'description' => sprintf( __( 'The default date format is the one set in your %s.', 'site-reviews' ),
139
+            '<a href="'.admin_url( 'options-general.php#date_format_custom' ).'">'.__( 'WordPress settings', 'site-reviews' ).'</a>'
140 140
         ),
141
-        'label' => __('Date Format', 'site-reviews'),
141
+        'label' => __( 'Date Format', 'site-reviews' ),
142 142
         'options' => [
143
-            '' => __('Use the default date format', 'site-reviews'),
144
-            'relative' => __('Use a relative date format', 'site-reviews'),
145
-            'custom' => __('Use a custom date format', 'site-reviews'),
143
+            '' => __( 'Use the default date format', 'site-reviews' ),
144
+            'relative' => __( 'Use a relative date format', 'site-reviews' ),
145
+            'custom' => __( 'Use a custom date format', 'site-reviews' ),
146 146
         ],
147 147
         'type' => 'select',
148 148
     ],
149 149
     'settings.reviews.date.custom' => [
150
-        'default' => get_option('date_format'),
150
+        'default' => get_option( 'date_format' ),
151 151
         'depends_on' => [
152 152
             'settings.reviews.date.format' => 'custom',
153 153
         ],
154
-        'description' => __('Enter a custom date format (<a href="https://codex.wordpress.org/Formatting_Date_and_Time">documentation on date and time formatting</a>).', 'site-reviews'),
155
-        'label' => __('Custom Date Format', 'site-reviews'),
154
+        'description' => __( 'Enter a custom date format (<a href="https://codex.wordpress.org/Formatting_Date_and_Time">documentation on date and time formatting</a>).', 'site-reviews' ),
155
+        'label' => __( 'Custom Date Format', 'site-reviews' ),
156 156
         'type' => 'text',
157 157
     ],
158 158
     'settings.reviews.name.format' => [
159 159
         'default' => '',
160
-        'description' => __('Choose how names are shown in your reviews.', 'site-reviews'),
161
-        'label' => __('Name Format', 'site-reviews'),
160
+        'description' => __( 'Choose how names are shown in your reviews.', 'site-reviews' ),
161
+        'label' => __( 'Name Format', 'site-reviews' ),
162 162
         'options' => [
163
-            '' => __('Use the name as given', 'site-reviews'),
164
-            'first' => __('Use the first name only', 'site-reviews'),
165
-            'first_initial' => __('Convert first name to an initial', 'site-reviews'),
166
-            'last_initial' => __('Convert last name to an initial', 'site-reviews'),
167
-            'initials' => __('Convert to all initials', 'site-reviews'),
163
+            '' => __( 'Use the name as given', 'site-reviews' ),
164
+            'first' => __( 'Use the first name only', 'site-reviews' ),
165
+            'first_initial' => __( 'Convert first name to an initial', 'site-reviews' ),
166
+            'last_initial' => __( 'Convert last name to an initial', 'site-reviews' ),
167
+            'initials' => __( 'Convert to all initials', 'site-reviews' ),
168 168
         ],
169 169
         'type' => 'select',
170 170
     ],
@@ -173,25 +173,25 @@  discard block
 block discarded – undo
173 173
         'depends_on' => [
174 174
             'settings.reviews.name.format' => ['first_initial', 'last_initial', 'initials'],
175 175
         ],
176
-        'description' => __('Choose how the initial is displayed.', 'site-reviews'),
177
-        'label' => __('Initial Format', 'site-reviews'),
176
+        'description' => __( 'Choose how the initial is displayed.', 'site-reviews' ),
177
+        'label' => __( 'Initial Format', 'site-reviews' ),
178 178
         'options' => [
179
-            '' => __('Initial with a space', 'site-reviews'),
180
-            'period' => __('Initial with a period', 'site-reviews'),
181
-            'period_space' => __('Initial with a period and a space', 'site-reviews'),
179
+            '' => __( 'Initial with a space', 'site-reviews' ),
180
+            'period' => __( 'Initial with a period', 'site-reviews' ),
181
+            'period_space' => __( 'Initial with a period and a space', 'site-reviews' ),
182 182
         ],
183 183
         'type' => 'select',
184 184
     ],
185 185
     'settings.reviews.assigned_links' => [
186 186
         'default' => 'no',
187
-        'description' => __('Display a link to the assigned post of a review.', 'site-reviews'),
188
-        'label' => __('Enable Assigned Links', 'site-reviews'),
187
+        'description' => __( 'Display a link to the assigned post of a review.', 'site-reviews' ),
188
+        'label' => __( 'Enable Assigned Links', 'site-reviews' ),
189 189
         'type' => 'yes_no',
190 190
     ],
191 191
     'settings.reviews.avatars' => [
192 192
         'default' => 'no',
193
-        'description' => __('Display reviewer avatars. These are generated from the email address of the reviewer using <a href="https://gravatar.com">Gravatar</a>.', 'site-reviews'),
194
-        'label' => __('Enable Avatars', 'site-reviews'),
193
+        'description' => __( 'Display reviewer avatars. These are generated from the email address of the reviewer using <a href="https://gravatar.com">Gravatar</a>.', 'site-reviews' ),
194
+        'label' => __( 'Enable Avatars', 'site-reviews' ),
195 195
         'type' => 'yes_no',
196 196
     ],
197 197
     'settings.reviews.avatars_regenerate' => [
@@ -199,8 +199,8 @@  discard block
 block discarded – undo
199 199
         'depends_on' => [
200 200
             'settings.reviews.avatars' => 'yes',
201 201
         ],
202
-        'description' => __('Regenerate the avatar whenever a local review is shown?', 'site-reviews'),
203
-        'label' => __('Regenerate Avatars', 'site-reviews'),
202
+        'description' => __( 'Regenerate the avatar whenever a local review is shown?', 'site-reviews' ),
203
+        'label' => __( 'Regenerate Avatars', 'site-reviews' ),
204 204
         'type' => 'yes_no',
205 205
     ],
206 206
     'settings.reviews.avatars_size' => [
@@ -208,14 +208,14 @@  discard block
 block discarded – undo
208 208
         'depends_on' => [
209 209
             'settings.reviews.avatars' => 'yes',
210 210
         ],
211
-        'description' => __('Set the avatar size in pixels.', 'site-reviews'),
212
-        'label' => __('Avatar Size', 'site-reviews'),
211
+        'description' => __( 'Set the avatar size in pixels.', 'site-reviews' ),
212
+        'label' => __( 'Avatar Size', 'site-reviews' ),
213 213
         'type' => 'number',
214 214
     ],
215 215
     'settings.reviews.excerpts' => [
216 216
         'default' => 'yes',
217
-        'description' => __('Display an excerpt instead of the full review.', 'site-reviews'),
218
-        'label' => __('Enable Excerpts', 'site-reviews'),
217
+        'description' => __( 'Display an excerpt instead of the full review.', 'site-reviews' ),
218
+        'label' => __( 'Enable Excerpts', 'site-reviews' ),
219 219
         'type' => 'yes_no',
220 220
     ],
221 221
     'settings.reviews.excerpts_length' => [
@@ -223,33 +223,33 @@  discard block
 block discarded – undo
223 223
         'depends_on' => [
224 224
             'settings.reviews.excerpts' => 'yes',
225 225
         ],
226
-        'description' => __('Set the excerpt word length.', 'site-reviews'),
227
-        'label' => __('Excerpt Length', 'site-reviews'),
226
+        'description' => __( 'Set the excerpt word length.', 'site-reviews' ),
227
+        'label' => __( 'Excerpt Length', 'site-reviews' ),
228 228
         'type' => 'number',
229 229
     ],
230 230
     'settings.reviews.fallback' => [
231 231
         'default' => 'yes',
232
-        'description' => sprintf(__('Display the fallback text when there are no reviews to display. This can be changed on the %s page. You may also override this by using the "fallback" option on the shortcode. The default fallback text is: %s', 'site-reviews'),
233
-            '<a href="'.admin_url('edit.php?post_type='.glsr()->post_type.'&page=settings#tab-translations').'">'.__('Translations', 'site-reviews').'</a>',
234
-            '<code>'.__('There are no reviews yet. Be the first one to write one.', 'site-reviews').'</code>'
232
+        'description' => sprintf( __( 'Display the fallback text when there are no reviews to display. This can be changed on the %s page. You may also override this by using the "fallback" option on the shortcode. The default fallback text is: %s', 'site-reviews' ),
233
+            '<a href="'.admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=settings#tab-translations' ).'">'.__( 'Translations', 'site-reviews' ).'</a>',
234
+            '<code>'.__( 'There are no reviews yet. Be the first one to write one.', 'site-reviews' ).'</code>'
235 235
         ),
236
-        'label' => __('Enable Fallback Text', 'site-reviews'),
236
+        'label' => __( 'Enable Fallback Text', 'site-reviews' ),
237 237
         'type' => 'yes_no',
238 238
     ],
239 239
     'settings.reviews.pagination.url_parameter' => [
240 240
         'default' => 'yes',
241
-        'description' => sprintf(_x('Use the <code>?%s={page_number}</code> URL parameter with AJAX pagination.', 'admin-text', 'site-reviews'), glsr()->constant('PAGED_QUERY_VAR')),
242
-        'label' => esc_html_x('Pagination URL Parameter', 'admin-text', 'site-reviews'),
241
+        'description' => sprintf( _x( 'Use the <code>?%s={page_number}</code> URL parameter with AJAX pagination.', 'admin-text', 'site-reviews' ), glsr()->constant( 'PAGED_QUERY_VAR' ) ),
242
+        'label' => esc_html_x( 'Pagination URL Parameter', 'admin-text', 'site-reviews' ),
243 243
         'type' => 'yes_no',
244 244
     ],
245 245
     'settings.schema.type.default' => [
246 246
         'default' => 'LocalBusiness',
247
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_type</code>',
248
-        'label' => __('Default Schema Type', 'site-reviews'),
247
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_type</code>',
248
+        'label' => __( 'Default Schema Type', 'site-reviews' ),
249 249
         'options' => [
250
-            'LocalBusiness' => __('Local Business', 'site-reviews'),
251
-            'Product' => __('Product', 'site-reviews'),
252
-            'custom' => __('Custom', 'site-reviews'),
250
+            'LocalBusiness' => __( 'Local Business', 'site-reviews' ),
251
+            'Product' => __( 'Product', 'site-reviews' ),
252
+            'custom' => __( 'Custom', 'site-reviews' ),
253 253
         ],
254 254
         'type' => 'select',
255 255
     ],
@@ -258,17 +258,17 @@  discard block
 block discarded – undo
258 258
         'depends_on' => [
259 259
             'settings.schema.type.default' => 'custom',
260 260
         ],
261
-        'description' => '<a href="https://schema.org/docs/schemas.html">'.__('View more information on schema types here', 'site-reviews').'</a>',
262
-        'label' => __('Custom Schema Type', 'site-reviews'),
261
+        'description' => '<a href="https://schema.org/docs/schemas.html">'.__( 'View more information on schema types here', 'site-reviews' ).'</a>',
262
+        'label' => __( 'Custom Schema Type', 'site-reviews' ),
263 263
         'type' => 'text',
264 264
     ],
265 265
     'settings.schema.name.default' => [
266 266
         'default' => 'post',
267
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_name</code>',
268
-        'label' => __('Default Name', 'site-reviews'),
267
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_name</code>',
268
+        'label' => __( 'Default Name', 'site-reviews' ),
269 269
         'options' => [
270
-            'post' => __('Use the assigned or current page title', 'site-reviews'),
271
-            'custom' => __('Enter a custom title', 'site-reviews'),
270
+            'post' => __( 'Use the assigned or current page title', 'site-reviews' ),
271
+            'custom' => __( 'Enter a custom title', 'site-reviews' ),
272 272
         ],
273 273
         'type' => 'select',
274 274
     ],
@@ -277,16 +277,16 @@  discard block
 block discarded – undo
277 277
         'depends_on' => [
278 278
             'settings.schema.name.default' => 'custom',
279 279
         ],
280
-        'label' => __('Custom Name', 'site-reviews'),
280
+        'label' => __( 'Custom Name', 'site-reviews' ),
281 281
         'type' => 'text',
282 282
     ],
283 283
     'settings.schema.description.default' => [
284 284
         'default' => 'post',
285
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_description</code>',
286
-        'label' => __('Default Description', 'site-reviews'),
285
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_description</code>',
286
+        'label' => __( 'Default Description', 'site-reviews' ),
287 287
         'options' => [
288
-            'post' => __('Use the assigned or current page excerpt', 'site-reviews'),
289
-            'custom' => __('Enter a custom description', 'site-reviews'),
288
+            'post' => __( 'Use the assigned or current page excerpt', 'site-reviews' ),
289
+            'custom' => __( 'Enter a custom description', 'site-reviews' ),
290 290
         ],
291 291
         'type' => 'select',
292 292
     ],
@@ -295,16 +295,16 @@  discard block
 block discarded – undo
295 295
         'depends_on' => [
296 296
             'settings.schema.description.default' => 'custom',
297 297
         ],
298
-        'label' => __('Custom Description', 'site-reviews'),
298
+        'label' => __( 'Custom Description', 'site-reviews' ),
299 299
         'type' => 'text',
300 300
     ],
301 301
     'settings.schema.url.default' => [
302 302
         'default' => 'post',
303
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_url</code>',
304
-        'label' => __('Default URL', 'site-reviews'),
303
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_url</code>',
304
+        'label' => __( 'Default URL', 'site-reviews' ),
305 305
         'options' => [
306
-            'post' => __('Use the assigned or current page URL', 'site-reviews'),
307
-            'custom' => __('Enter a custom URL', 'site-reviews'),
306
+            'post' => __( 'Use the assigned or current page URL', 'site-reviews' ),
307
+            'custom' => __( 'Enter a custom URL', 'site-reviews' ),
308 308
         ],
309 309
         'type' => 'select',
310 310
     ],
@@ -313,16 +313,16 @@  discard block
 block discarded – undo
313 313
         'depends_on' => [
314 314
             'settings.schema.url.default' => 'custom',
315 315
         ],
316
-        'label' => __('Custom URL', 'site-reviews'),
316
+        'label' => __( 'Custom URL', 'site-reviews' ),
317 317
         'type' => 'text',
318 318
     ],
319 319
     'settings.schema.image.default' => [
320 320
         'default' => 'post',
321
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_image</code>',
322
-        'label' => __('Default Image', 'site-reviews'),
321
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_image</code>',
322
+        'label' => __( 'Default Image', 'site-reviews' ),
323 323
         'options' => [
324
-            'post' => __('Use the featured image of the assigned or current page', 'site-reviews'),
325
-            'custom' => __('Enter a custom image URL', 'site-reviews'),
324
+            'post' => __( 'Use the featured image of the assigned or current page', 'site-reviews' ),
325
+            'custom' => __( 'Enter a custom image URL', 'site-reviews' ),
326 326
         ],
327 327
         'type' => 'select',
328 328
     ],
@@ -331,7 +331,7 @@  discard block
 block discarded – undo
331 331
         'depends_on' => [
332 332
             'settings.schema.image.default' => 'custom',
333 333
         ],
334
-        'label' => __('Custom Image URL', 'site-reviews'),
334
+        'label' => __( 'Custom Image URL', 'site-reviews' ),
335 335
         'type' => 'text',
336 336
     ],
337 337
     'settings.schema.address' => [
@@ -339,8 +339,8 @@  discard block
 block discarded – undo
339 339
         'depends_on' => [
340 340
             'settings.schema.type.default' => 'LocalBusiness',
341 341
         ],
342
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_address</code>',
343
-        'label' => __('Address', 'site-reviews'),
342
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_address</code>',
343
+        'label' => __( 'Address', 'site-reviews' ),
344 344
         'placeholder' => '60 29th Street #343, San Francisco, CA 94110, US',
345 345
         'type' => 'text',
346 346
     ],
@@ -349,8 +349,8 @@  discard block
 block discarded – undo
349 349
         'depends_on' => [
350 350
             'settings.schema.type.default' => 'LocalBusiness',
351 351
         ],
352
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_telephone</code>',
353
-        'label' => __('Telephone Number', 'site-reviews'),
352
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_telephone</code>',
353
+        'label' => __( 'Telephone Number', 'site-reviews' ),
354 354
         'placeholder' => '+1 (877) 273-3049',
355 355
         'type' => 'text',
356 356
     ],
@@ -359,8 +359,8 @@  discard block
 block discarded – undo
359 359
         'depends_on' => [
360 360
             'settings.schema.type.default' => 'LocalBusiness',
361 361
         ],
362
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_pricerange</code>',
363
-        'label' => __('Price Range', 'site-reviews'),
362
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_pricerange</code>',
363
+        'label' => __( 'Price Range', 'site-reviews' ),
364 364
         'placeholder' => '$$-$$$',
365 365
         'type' => 'text',
366 366
     ],
@@ -369,11 +369,11 @@  discard block
 block discarded – undo
369 369
         'depends_on' => [
370 370
             'settings.schema.type.default' => 'Product',
371 371
         ],
372
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_offertype</code>',
373
-        'label' => __('Offer Type', 'site-reviews'),
372
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_offertype</code>',
373
+        'label' => __( 'Offer Type', 'site-reviews' ),
374 374
         'options' => [
375
-            'AggregateOffer' => __('AggregateOffer', 'site-reviews'),
376
-            'Offer' => __('Offer', 'site-reviews'),
375
+            'AggregateOffer' => __( 'AggregateOffer', 'site-reviews' ),
376
+            'Offer' => __( 'Offer', 'site-reviews' ),
377 377
         ],
378 378
         'type' => 'select',
379 379
     ],
@@ -383,8 +383,8 @@  discard block
 block discarded – undo
383 383
             'settings.schema.type.default' => 'Product',
384 384
             'settings.schema.offertype' => 'Offer',
385 385
         ],
386
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_price</code>',
387
-        'label' => __('Price', 'site-reviews'),
386
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_price</code>',
387
+        'label' => __( 'Price', 'site-reviews' ),
388 388
         'placeholder' => '50.00',
389 389
         'type' => 'text',
390 390
     ],
@@ -394,8 +394,8 @@  discard block
 block discarded – undo
394 394
             'settings.schema.type.default' => 'Product',
395 395
             'settings.schema.offertype' => 'AggregateOffer',
396 396
         ],
397
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_lowprice</code>',
398
-        'label' => __('Low Price', 'site-reviews'),
397
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_lowprice</code>',
398
+        'label' => __( 'Low Price', 'site-reviews' ),
399 399
         'placeholder' => '10.00',
400 400
         'type' => 'text',
401 401
     ],
@@ -405,8 +405,8 @@  discard block
 block discarded – undo
405 405
             'settings.schema.type.default' => 'Product',
406 406
             'settings.schema.offertype' => 'AggregateOffer',
407 407
         ],
408
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_highprice</code>',
409
-        'label' => __('High Price', 'site-reviews'),
408
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_highprice</code>',
409
+        'label' => __( 'High Price', 'site-reviews' ),
410 410
         'placeholder' => '100.00',
411 411
         'type' => 'text',
412 412
     ],
@@ -415,34 +415,34 @@  discard block
 block discarded – undo
415 415
         'depends_on' => [
416 416
             'settings.schema.type.default' => 'Product',
417 417
         ],
418
-        'description' => __('Custom Field name', 'site-reviews').': <code>schema_pricecurrency</code>',
419
-        'label' => __('Price Currency', 'site-reviews'),
418
+        'description' => __( 'Custom Field name', 'site-reviews' ).': <code>schema_pricecurrency</code>',
419
+        'label' => __( 'Price Currency', 'site-reviews' ),
420 420
         'placeholder' => 'USD',
421 421
         'type' => 'text',
422 422
     ],
423 423
     'settings.submissions.required' => [
424 424
         'default' => ['content', 'email', 'name', 'rating', 'terms', 'title'],
425
-        'description' => __('Choose which fields should be required in the submission form.', 'site-reviews'),
426
-        'label' => __('Required Fields', 'site-reviews'),
425
+        'description' => __( 'Choose which fields should be required in the submission form.', 'site-reviews' ),
426
+        'label' => __( 'Required Fields', 'site-reviews' ),
427 427
         'options' => [
428
-            'rating' => __('Rating', 'site-reviews'),
429
-            'title' => __('Title', 'site-reviews'),
430
-            'content' => __('Review', 'site-reviews'),
431
-            'name' => __('Name', 'site-reviews'),
432
-            'email' => __('Email', 'site-reviews'),
433
-            'terms' => __('Terms', 'site-reviews'),
428
+            'rating' => __( 'Rating', 'site-reviews' ),
429
+            'title' => __( 'Title', 'site-reviews' ),
430
+            'content' => __( 'Review', 'site-reviews' ),
431
+            'name' => __( 'Name', 'site-reviews' ),
432
+            'email' => __( 'Email', 'site-reviews' ),
433
+            'terms' => __( 'Terms', 'site-reviews' ),
434 434
         ],
435 435
         'type' => 'checkbox',
436 436
     ],
437 437
     'settings.submissions.limit' => [
438 438
         'default' => '',
439
-        'description' => __('Limits the number of reviews that can be submitted to one-per-person. If you are assigning reviews, then the limit will be applied to the assigned page or category.', 'site-reviews'),
440
-        'label' => __('Limit Reviews', 'site-reviews'),
439
+        'description' => __( 'Limits the number of reviews that can be submitted to one-per-person. If you are assigning reviews, then the limit will be applied to the assigned page or category.', 'site-reviews' ),
440
+        'label' => __( 'Limit Reviews', 'site-reviews' ),
441 441
         'options' => [
442
-            '' => __('No Limit', 'site-reviews'),
443
-            'email' => __('By Email Address', 'site-reviews'),
444
-            'ip_address' => __('By IP Address', 'site-reviews'),
445
-            'username' => __('By Username (will only work for registered users)', 'site-reviews'),
442
+            '' => __( 'No Limit', 'site-reviews' ),
443
+            'email' => __( 'By Email Address', 'site-reviews' ),
444
+            'ip_address' => __( 'By IP Address', 'site-reviews' ),
445
+            'username' => __( 'By Username (will only work for registered users)', 'site-reviews' ),
446 446
         ],
447 447
         'type' => 'select',
448 448
     ],
@@ -451,8 +451,8 @@  discard block
 block discarded – undo
451 451
         'depends_on' => [
452 452
             'settings.submissions.limit' => ['email'],
453 453
         ],
454
-        'description' => __('One Email per line. All emails in the whitelist will be excluded from the review submission limit.', 'site-reviews'),
455
-        'label' => __('Email Whitelist', 'site-reviews'),
454
+        'description' => __( 'One Email per line. All emails in the whitelist will be excluded from the review submission limit.', 'site-reviews' ),
455
+        'label' => __( 'Email Whitelist', 'site-reviews' ),
456 456
         'rows' => 5,
457 457
         'type' => 'code',
458 458
     ],
@@ -461,8 +461,8 @@  discard block
 block discarded – undo
461 461
         'depends_on' => [
462 462
             'settings.submissions.limit' => ['ip_address'],
463 463
         ],
464
-        'description' => __('One IP Address per line. All IP Addresses in the whitelist will be excluded from the review submission limit..', 'site-reviews'),
465
-        'label' => __('IP Address Whitelist', 'site-reviews'),
464
+        'description' => __( 'One IP Address per line. All IP Addresses in the whitelist will be excluded from the review submission limit..', 'site-reviews' ),
465
+        'label' => __( 'IP Address Whitelist', 'site-reviews' ),
466 466
         'rows' => 5,
467 467
         'type' => 'code',
468 468
     ],
@@ -471,15 +471,15 @@  discard block
 block discarded – undo
471 471
         'depends_on' => [
472 472
             'settings.submissions.limit' => ['username'],
473 473
         ],
474
-        'description' => __('One Username per line. All registered users with a Username in the whitelist will be excluded from the review submission limit.', 'site-reviews'),
475
-        'label' => __('Username Whitelist', 'site-reviews'),
474
+        'description' => __( 'One Username per line. All registered users with a Username in the whitelist will be excluded from the review submission limit.', 'site-reviews' ),
475
+        'label' => __( 'Username Whitelist', 'site-reviews' ),
476 476
         'rows' => 5,
477 477
         'type' => 'code',
478 478
     ],
479 479
     'settings.submissions.recaptcha.integration' => [
480 480
         'default' => '',
481
-        'description' => __('Invisible reCAPTCHA is a free anti-spam service from Google. To use it, you will need to <a href="https://www.google.com/recaptcha/admin" target="_blank">sign up</a> for an API key pair for your site.', 'site-reviews'),
482
-        'label' => __('Invisible reCAPTCHA', 'site-reviews'),
481
+        'description' => __( 'Invisible reCAPTCHA is a free anti-spam service from Google. To use it, you will need to <a href="https://www.google.com/recaptcha/admin" target="_blank">sign up</a> for an API key pair for your site.', 'site-reviews' ),
482
+        'label' => __( 'Invisible reCAPTCHA', 'site-reviews' ),
483 483
         'options' => [
484 484
             '' => 'Do not use reCAPTCHA',
485 485
             'all' => 'Use reCAPTCHA',
@@ -492,7 +492,7 @@  discard block
 block discarded – undo
492 492
         'depends_on' => [
493 493
             'settings.submissions.recaptcha.integration' => ['all', 'guest'],
494 494
         ],
495
-        'label' => __('Site Key', 'site-reviews'),
495
+        'label' => __( 'Site Key', 'site-reviews' ),
496 496
         'type' => 'text',
497 497
     ],
498 498
     'settings.submissions.recaptcha.secret' => [
@@ -500,7 +500,7 @@  discard block
 block discarded – undo
500 500
         'depends_on' => [
501 501
             'settings.submissions.recaptcha.integration' => ['all', 'guest'],
502 502
         ],
503
-        'label' => __('Site Secret', 'site-reviews'),
503
+        'label' => __( 'Site Secret', 'site-reviews' ),
504 504
         'type' => 'text',
505 505
     ],
506 506
     'settings.submissions.recaptcha.position' => [
@@ -508,8 +508,8 @@  discard block
 block discarded – undo
508 508
         'depends_on' => [
509 509
             'settings.submissions.recaptcha.integration' => ['all', 'guest'],
510 510
         ],
511
-        'description' => __('This option may not work consistently if another plugin is loading reCAPTCHA on the same page as Site Reviews.', 'site-reviews'),
512
-        'label' => __('Badge Position', 'site-reviews'),
511
+        'description' => __( 'This option may not work consistently if another plugin is loading reCAPTCHA on the same page as Site Reviews.', 'site-reviews' ),
512
+        'label' => __( 'Badge Position', 'site-reviews' ),
513 513
         'options' => [
514 514
             'bottomleft' => 'Bottom Left',
515 515
             'bottomright' => 'Bottom Right',
@@ -519,16 +519,16 @@  discard block
 block discarded – undo
519 519
     ],
520 520
     'settings.submissions.akismet' => [
521 521
         'default' => 'no',
522
-        'description' => __('The <a href="https://akismet.com" target="_blank">Akismet plugin</a> integration provides spam-filtering for your reviews. In order for this setting to have any affect, you will need to first install and activate the Akismet plugin and set up a WordPress.com API key.', 'site-reviews'),
523
-        'label' => __('Enable Akismet Integration', 'site-reviews'),
522
+        'description' => __( 'The <a href="https://akismet.com" target="_blank">Akismet plugin</a> integration provides spam-filtering for your reviews. In order for this setting to have any affect, you will need to first install and activate the Akismet plugin and set up a WordPress.com API key.', 'site-reviews' ),
523
+        'label' => __( 'Enable Akismet Integration', 'site-reviews' ),
524 524
         'type' => 'yes_no',
525 525
     ],
526 526
     'settings.submissions.blacklist.integration' => [
527 527
         'default' => '',
528
-        'description' => sprintf(__('Choose which Blacklist you would prefer to use for reviews. The %s can be found in the WordPress Discussion Settings page.', 'site-reviews'),
529
-            '<a href="'.admin_url('options-discussion.php#users_can_register').'">'.__('Comment Blacklist', 'site-reviews').'</a>'
528
+        'description' => sprintf( __( 'Choose which Blacklist you would prefer to use for reviews. The %s can be found in the WordPress Discussion Settings page.', 'site-reviews' ),
529
+            '<a href="'.admin_url( 'options-discussion.php#users_can_register' ).'">'.__( 'Comment Blacklist', 'site-reviews' ).'</a>'
530 530
         ),
531
-        'label' => __('Blacklist', 'site-reviews'),
531
+        'label' => __( 'Blacklist', 'site-reviews' ),
532 532
         'options' => [
533 533
             '' => 'Use the Site Reviews Blacklist',
534 534
             'comments' => 'Use the WordPress Comment Blacklist',
@@ -540,18 +540,18 @@  discard block
 block discarded – undo
540 540
         'depends_on' => [
541 541
             'settings.submissions.blacklist.integration' => [''],
542 542
         ],
543
-        'description' => __('One entry or IP address per line. When a review contains any of these entries in its title, content, name, email, or IP address, it will be rejected. It is case-insensitive and will match partial words, so "press" will match "WordPress".', 'site-reviews'),
544
-        'label' => __('Review Blacklist', 'site-reviews'),
543
+        'description' => __( 'One entry or IP address per line. When a review contains any of these entries in its title, content, name, email, or IP address, it will be rejected. It is case-insensitive and will match partial words, so "press" will match "WordPress".', 'site-reviews' ),
544
+        'label' => __( 'Review Blacklist', 'site-reviews' ),
545 545
         'rows' => 10,
546 546
         'type' => 'code',
547 547
     ],
548 548
     'settings.submissions.blacklist.action' => [
549 549
         'default' => 'unapprove',
550
-        'description' => __('Choose the action that should be taken when a review is blacklisted.', 'site-reviews'),
551
-        'label' => __('Blacklist Action', 'site-reviews'),
550
+        'description' => __( 'Choose the action that should be taken when a review is blacklisted.', 'site-reviews' ),
551
+        'label' => __( 'Blacklist Action', 'site-reviews' ),
552 552
         'options' => [
553
-            'unapprove' => __('Require approval', 'site-reviews'),
554
-            'reject' => __('Reject submission', 'site-reviews'),
553
+            'unapprove' => __( 'Require approval', 'site-reviews' ),
554
+            'reject' => __( 'Reject submission', 'site-reviews' ),
555 555
         ],
556 556
         'type' => 'select',
557 557
     ],
Please login to merge, or discard this patch.
views/pages/documentation/functions.php 1 patch
Spacing   +21 added lines, -21 removed lines patch added patch discarded remove patch
@@ -1,10 +1,10 @@  discard block
 block discarded – undo
1
-<?php defined('WPINC') || die; ?>
1
+<?php defined( 'WPINC' ) || die; ?>
2 2
 
3 3
 <div id="functions-01" class="glsr-card postbox">
4 4
     <div class="glsr-card-header">
5 5
         <h3>READ ME FIRST!</h3>
6 6
         <button type="button" class="handlediv" aria-expanded="true">
7
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
7
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
8 8
             <span class="toggle-indicator" aria-hidden="true"></span>
9 9
         </button>
10 10
     </div>
@@ -38,7 +38,7 @@  discard block
 block discarded – undo
38 38
     <div class="glsr-card-header">
39 39
         <h3>Helper function to create a review</h3>
40 40
         <button type="button" class="handlediv" aria-expanded="true">
41
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
41
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
42 42
             <span class="toggle-indicator" aria-hidden="true"></span>
43 43
         </button>
44 44
     </div>
@@ -87,7 +87,7 @@  discard block
 block discarded – undo
87 87
 ]);
88 88
 </code></pre>
89 89
         <p><strong>Helpful Tip:</strong></p>
90
-        <p>You can use the <code><a href="<?= admin_url('edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions'); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to view the review object that is returned.</p>
90
+        <p>You can use the <code><a href="<?= admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions' ); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to view the review object that is returned.</p>
91 91
         <pre><code class="php">glsr_debug($review);</code></pre>
92 92
     </div>
93 93
 </div>
@@ -96,7 +96,7 @@  discard block
 block discarded – undo
96 96
     <div class="glsr-card-header">
97 97
         <h3>Helper function to debug variables</h3>
98 98
         <button type="button" class="handlediv" aria-expanded="true">
99
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
99
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
100 100
             <span class="toggle-indicator" aria-hidden="true"></span>
101 101
         </button>
102 102
     </div>
@@ -121,7 +121,7 @@  discard block
 block discarded – undo
121 121
     <div class="glsr-card-header">
122 122
         <h3>Helper function to generate HTML stars for a rating</h3>
123 123
         <button type="button" class="handlediv" aria-expanded="true">
124
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
124
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
125 125
             <span class="toggle-indicator" aria-hidden="true"></span>
126 126
         </button>
127 127
     </div>
@@ -145,7 +145,7 @@  discard block
 block discarded – undo
145 145
     <div class="glsr-card-header">
146 146
         <h3>Helper function to get a plugin setting</h3>
147 147
         <button type="button" class="handlediv" aria-expanded="true">
148
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
148
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
149 149
             <span class="toggle-indicator" aria-hidden="true"></span>
150 150
         </button>
151 151
     </div>
@@ -165,7 +165,7 @@  discard block
 block discarded – undo
165 165
 
166 166
 $requireApproval = apply_filters('glsr_get_option', 'no', 'general.require.approval', 'no');</code></pre>
167 167
         <p><strong>Helpful Tip:</strong></p>
168
-        <p>You can use the <code><a href="<?= admin_url('edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions'); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to view the whole plugin settings array, this will help you figure out which dot-notation path to use.</p>
168
+        <p>You can use the <code><a href="<?= admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions' ); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to view the whole plugin settings array, this will help you figure out which dot-notation path to use.</p>
169 169
         <pre><code class="php">glsr_debug(glsr_get_options());</code></pre>
170 170
     </div>
171 171
 </div>
@@ -174,7 +174,7 @@  discard block
 block discarded – undo
174 174
     <div class="glsr-card-header">
175 175
         <h3>Helper function to get all plugin settings</h3>
176 176
         <button type="button" class="handlediv" aria-expanded="true">
177
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
177
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
178 178
             <span class="toggle-indicator" aria-hidden="true"></span>
179 179
         </button>
180 180
     </div>
@@ -191,7 +191,7 @@  discard block
 block discarded – undo
191 191
 
192 192
 $pluginSettings = apply_filters('glsr_get_options', []);</code></pre>
193 193
         <p><strong>Helpful Tip:</strong></p>
194
-        <p>You can use the <code><a href="<?= admin_url('edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions'); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to print the settings array to the screen:</p>
194
+        <p>You can use the <code><a href="<?= admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions' ); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to print the settings array to the screen:</p>
195 195
         <pre><code class="php">glsr_debug($pluginSettings);</code></pre>
196 196
     </div>
197 197
 </div>
@@ -200,7 +200,7 @@  discard block
 block discarded – undo
200 200
     <div class="glsr-card-header">
201 201
         <h3>Helper function to get a single review</h3>
202 202
         <button type="button" class="handlediv" aria-expanded="true">
203
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
203
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
204 204
             <span class="toggle-indicator" aria-hidden="true"></span>
205 205
         </button>
206 206
     </div>
@@ -241,7 +241,7 @@  discard block
 block discarded – undo
241 241
                 <pre><code class="php">echo $reviewHtml; // This is identical to: $review->render();</code></pre>
242 242
             </li>
243 243
             <li>
244
-                <p>You can also use the <code><a href="<?= admin_url('edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions'); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to print both arrayable objects to the screen:</p>
244
+                <p>You can also use the <code><a href="<?= admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions' ); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to print both arrayable objects to the screen:</p>
245 245
                 <pre><code class="php">glsr_debug($review, $reviewHtml);</code></pre>
246 246
             </li>
247 247
         </ol>
@@ -252,7 +252,7 @@  discard block
 block discarded – undo
252 252
     <div class="glsr-card-header">
253 253
         <h3>Helper function to get multiple reviews</h3>
254 254
         <button type="button" class="handlediv" aria-expanded="true">
255
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
255
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
256 256
             <span class="toggle-indicator" aria-hidden="true"></span>
257 257
         </button>
258 258
     </div>
@@ -296,7 +296,7 @@  discard block
 block discarded – undo
296 296
                 <pre><code class="php">echo $reviews; // This is identical to: $reviews->render();</code></pre>
297 297
             </li>
298 298
             <li>
299
-                <p>Loop through all reviews and handle each review as needed. Each <code>$review</code> is identical to what the <code><a href="<?= admin_url('edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions'); ?>" data-expand="#functions-07">glsr_get_review</a></code> helper function returns, so make sure to read the "Helpful Tips" from that section above for more information.</p>
299
+                <p>Loop through all reviews and handle each review as needed. Each <code>$review</code> is identical to what the <code><a href="<?= admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions' ); ?>" data-expand="#functions-07">glsr_get_review</a></code> helper function returns, so make sure to read the "Helpful Tips" from that section above for more information.</p>
300 300
                 <pre><code class="php">foreach ($reviews as $review) {
301 301
     echo $review;
302 302
 };</code></pre>
@@ -314,7 +314,7 @@  discard block
 block discarded – undo
314 314
 echo $reviewsHtml->navigation;</code></pre>
315 315
             </li>
316 316
             <li>
317
-                <p>You can also use the <code><a href="<?= admin_url('edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions'); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to print both arrayable objects to the screen:</p>
317
+                <p>You can also use the <code><a href="<?= admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions' ); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to print both arrayable objects to the screen:</p>
318 318
                 <pre><code class="php">glsr_debug($reviews, $reviewsHtml);</code></pre>
319 319
             </li>
320 320
         </ol>
@@ -325,7 +325,7 @@  discard block
 block discarded – undo
325 325
     <div class="glsr-card-header">
326 326
         <h3>Helper function to get the rating information</h3>
327 327
         <button type="button" class="handlediv" aria-expanded="true">
328
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
328
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
329 329
             <span class="toggle-indicator" aria-hidden="true"></span>
330 330
         </button>
331 331
     </div>
@@ -356,7 +356,7 @@  discard block
 block discarded – undo
356 356
         <p><strong>Helpful Tips:</strong></p>
357 357
         <ol>
358 358
             <li>
359
-                <p>You can use the <code><a href="<?= admin_url('edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions'); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to print the rating info to the screen:</p>
359
+                <p>You can use the <code><a href="<?= admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=documentation#tab-functions' ); ?>" data-expand="#functions-03">glsr_debug</a></code> helper function to print the rating info to the screen:</p>
360 360
                 <pre><code class="php">glsr_debug($ratingInfo);</code></pre>
361 361
             </li>
362 362
         </ol>
@@ -367,7 +367,7 @@  discard block
 block discarded – undo
367 367
     <div class="glsr-card-header">
368 368
         <h3>Helper function to log variables to the plugin console</h3>
369 369
         <button type="button" class="handlediv" aria-expanded="true">
370
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
370
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
371 371
             <span class="toggle-indicator" aria-hidden="true"></span>
372 372
         </button>
373 373
     </div>
@@ -387,7 +387,7 @@  discard block
 block discarded – undo
387 387
 // OR:
388 388
 
389 389
 apply_filters('glsr_log', null, $var1);</code></pre>
390
-    <p>Logged entries will be found in the <code><a href="<?= admin_url('edit.php?post_type='.glsr()->post_type.'&page=tools#tab-console'); ?>">Tools &rarr; Console</a></code>.</p>
390
+    <p>Logged entries will be found in the <code><a href="<?= admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=tools#tab-console' ); ?>">Tools &rarr; Console</a></code>.</p>
391 391
     </div>
392 392
 </div>
393 393
 
@@ -395,7 +395,7 @@  discard block
 block discarded – undo
395 395
     <div class="glsr-card-header">
396 396
         <h3>Helper function to recalculate the rating counts</h3>
397 397
         <button type="button" class="handlediv" aria-expanded="true">
398
-            <span class="screen-reader-text"><?= __('Toggle documentation panel', 'site-reviews'); ?></span>
398
+            <span class="screen-reader-text"><?= __( 'Toggle documentation panel', 'site-reviews' ); ?></span>
399 399
             <span class="toggle-indicator" aria-hidden="true"></span>
400 400
         </button>
401 401
     </div>
@@ -411,6 +411,6 @@  discard block
 block discarded – undo
411 411
 // OR:
412 412
 
413 413
 apply_filters('glsr_calculate_ratings', null);</code></pre>
414
-    <p>You can verify that it runs by checking the log entries in the <code><a href="<?= admin_url('edit.php?post_type='.glsr()->post_type.'&page=tools#tab-console'); ?>">Tools &rarr; Console</a></code>.</p>
414
+    <p>You can verify that it runs by checking the log entries in the <code><a href="<?= admin_url( 'edit.php?post_type='.glsr()->post_type.'&page=tools#tab-console' ); ?>">Tools &rarr; Console</a></code>.</p>
415 415
     </div>
416 416
 </div>
Please login to merge, or discard this patch.