PluginProbe ʕ •ᴥ•ʔ
Flexible Checkout Fields for WooCommerce – WooCommerce Checkout Manager / 4.1.40
Flexible Checkout Fields for WooCommerce – WooCommerce Checkout Manager v4.1.40
4.1.41 4.1.40 4.1.39 4.1.38 trunk 1.2 1.2.1 1.2.2 1.2.3 1.3 1.3.1 1.3.2 1.3.3 1.4 1.5 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6 1.6.1 1.6.10 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7 1.7.1 1.7.2 1.8 1.8.1 1.8.2 1.8.3 1.9.0 1.9.1 1.9.2 1.9.3 2.0.0 2.0.1 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.1.0 2.1.1 2.1.4 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.1 2.3.2 2.3.3 2.3.4 2.4.0 2.4.1 2.4.10 2.4.11 2.4.12 2.4.13 2.4.14 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5.0 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.6.0 2.7.0 2.7.1 2.8.0 2.9.0 2.9.1 2.9.2 3.0.0 3.0.1 3.0.10 3.0.11 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.3.0 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.10 3.5.11 3.5.12 3.5.13 3.5.14 3.5.15 3.5.16 3.5.17 3.5.18 3.5.19 3.5.2 3.5.3 3.5.4 3.5.5 3.5.6 3.5.7 3.5.8 3.5.9 3.6.0 4.0.0 4.1.0 4.1.1 4.1.10 4.1.11 4.1.12 4.1.13 4.1.14 4.1.15 4.1.16 4.1.17 4.1.18 4.1.19 4.1.2 4.1.20 4.1.21 4.1.22 4.1.23 4.1.24 4.1.25 4.1.26 4.1.27 4.1.28 4.1.29 4.1.3 4.1.30 4.1.31 4.1.32 4.1.34 4.1.35 4.1.36 4.1.37 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9
flexible-checkout-fields / src / Service / ShortLinksGenerator.php
flexible-checkout-fields / src / Service Last commit date
ShortLinksGenerator.php 3 weeks ago TemplateLoader.php 3 weeks ago
ShortLinksGenerator.php
52 lines
1 <?php
2
3 namespace WPDesk\FCF\Free\Service;
4
5 use FcfVendor\WPDesk\PluginBuilder\Plugin\Hookable;
6 use FcfVendor\WPDesk\PluginBuilder\Plugin\HookablePluginDependant;
7 use FcfVendor\WPDesk\PluginBuilder\Plugin\PluginAccess;
8
9 /**
10 * Creates helpers for short URLs.
11 */
12 class ShortLinksGenerator implements Hookable, HookablePluginDependant {
13
14 use PluginAccess;
15
16 const SHORTENER_DOMAIN_PL = 'https://wpdesk.pl/sk/';
17
18 const SHORTENER_DOMAIN_EN = 'https://wpdesk.net/sk/';
19
20 /**
21 * {@inheritdoc}
22 */
23 public function hooks() {
24 add_filter( 'flexible_checkout_fields/short_url', [ $this, 'generate_short_url' ], 10, 2 );
25 }
26
27 /**
28 * Generates short URL for link.
29 *
30 * @param string $default_value Default value for filter.
31 * @param string $short_path Path for short URL.
32 *
33 * @return string Short URL.
34 * @internal
35 */
36 public function generate_short_url( string $default_value, string $short_path ): string {
37 if ( ! preg_match( '/^[a-z-]+$/i', $short_path ) ) {
38 return '#';
39 }
40
41 $locale = get_user_locale();
42 $locale_url = $locale === 'pl_PL' ? self::SHORTENER_DOMAIN_PL : self::SHORTENER_DOMAIN_EN;
43 $short_url = $locale_url . $short_path;
44 switch ( $locale ) {
45 case 'pl_PL':
46 $short_url .= '-pl';
47 break;
48 }
49 return $short_url;
50 }
51 }
52