PluginProbe ʕ •ᴥ•ʔ
WPML Multilingual & Multicurrency for WooCommerce / 5.5.7
WPML Multilingual & Multicurrency for WooCommerce v5.5.7
5.5.7 5.3.8 5.3.9 5.4.3 5.4.4 5.4.5 5.5.1 5.5.1.1 5.5.2.2 5.5.2.3 5.5.3 5.5.3.1 5.5.4 5.5.5 5.5.6 trunk 0.9 1.0 1.1 1.2 1.3 1.4 1.5 2.0 2.2 2.3 2.3.1 2.3.2 3.0 3.0.1 3.1 3.2 3.2.1 3.2.2 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.4 3.4.1 3.4.2 3.4.3 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.6 3.6.1 3.6.10 3.6.11 3.6.2 3.6.3 3.6.4 3.6.5 3.6.5.1 3.6.6 3.6.7 3.6.8 3.6.9 3.7 3.7.1 3.7.10 3.7.11 3.7.12 3.7.13 3.7.14 3.7.15 3.7.16 3.7.2 3.7.3 3.7.4 3.7.5 3.7.6 3.7.7 3.7.8 3.7.9 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.9.0 3.9.1 3.9.1.1 3.9.2 3.9.3 3.9.4 3.9.5 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.10.4 4.11.2 4.11.3.2 4.11.5 4.11.6 4.12.1 4.12.4 4.12.5 4.12.6 4.2.0 4.2.0.1 4.2.1 4.2.1.1 4.2.10 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.7.1 4.2.8 4.2.8.1 4.2.9 4.3.0 4.3.1 4.3.2 4.3.2.1 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.4.0 4.4.1 4.4.2 4.4.2.1 4.5.0 4.6.0 4.6.1 4.6.2 4.6.2.1 4.6.3 4.6.5 4.6.6 4.6.7 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.7.8 4.7.9 4.8.0 4.9.0 4.9.1 5.0.1 5.0.2 5.1.1 5.1.2 5.1.3 5.2.0 5.2.1 5.3.2 5.3.3.1 5.3.4 5.3.5 5.3.6 5.3.7
woocommerce-multilingual / classes / Block / Convert / ConverterProvider.php
woocommerce-multilingual / classes / Block / Convert Last commit date
Converter 5 years ago ConverterProvider.php 1 week ago Hooks.php 1 week ago
ConverterProvider.php
137 lines
1 <?php
2
3 namespace WCML\Block\Convert;
4
5 use WCML\Block\Convert\Converter\ProductsByAttributes;
6 use WPML\PB\Gutenberg\ConvertIdsInBlock\Base;
7 use WPML\PB\Gutenberg\ConvertIdsInBlock\Composite;
8 use WPML\PB\Gutenberg\ConvertIdsInBlock\NullConvert;
9 use WPML\PB\Gutenberg\ConvertIdsInBlock\BlockAttributes;
10 use WPML\PB\Gutenberg\ConvertIdsInBlock\TagAttributes;
11
12 class ConverterProvider {
13
14 public static function get( $blockName ) {
15 switch ( $blockName ) {
16 case 'woocommerce/product-category':
17 $converter = new BlockAttributes(
18 [
19 [
20 'name' => 'categories',
21 'slug' => 'product_cat',
22 'type' => 'taxonomy',
23 ],
24 ]
25 );
26 break;
27
28 case 'woocommerce/featured-category':
29 $converter = new BlockAttributes(
30 [
31 [
32 'name' => 'categoryId',
33 'slug' => 'product_cat',
34 'type' => 'taxonomy',
35 ],
36 ]
37 );
38 break;
39
40 case 'woocommerce/featured-product':
41 $converter = new BlockAttributes(
42 [
43 [
44 'name' => 'productId',
45 'slug' => 'product',
46 'type' => 'post'
47 ],
48 ]
49 );
50 break;
51
52 case 'woocommerce/handpicked-products':
53 $converter = new BlockAttributes(
54 [
55 [
56 'name' => 'products',
57 'slug' => 'product',
58 'type' => 'post',
59 ],
60 ]
61 );
62 break;
63
64 case 'woocommerce/product-tag':
65 $converter = new BlockAttributes(
66 [
67 [
68 'name' => 'tags',
69 'slug' => 'product_tag',
70 'type' => 'taxonomy',
71 ],
72 ]
73 );
74 break;
75
76 case 'woocommerce/reviews-by-product':
77 $converter = new Composite(
78 [
79 new BlockAttributes(
80 [
81 [
82 'name' => 'productId',
83 'slug' => 'product',
84 'type' => 'post',
85 ],
86 ]
87 ),
88 new TagAttributes(
89 [
90 [
91 'xpath' => '//*[contains(@class, "wp-block-woocommerce-reviews-by-product")]/@data-product-id',
92 'slug' => 'product',
93 'type' => 'post',
94 ],
95 ]
96 ),
97 ]
98 );
99 break;
100
101 case 'woocommerce/reviews-by-category':
102 $converter = new Composite(
103 [
104 new BlockAttributes(
105 [
106 [
107 'name' => 'categoryIds',
108 'slug' => 'product_cat',
109 'type' => 'taxonomy',
110 ],
111 ]
112 ),
113 new TagAttributes(
114 [
115 [
116 'xpath' => '//*[contains(@class, "wp-block-woocommerce-reviews-by-category")]/@data-category-ids',
117 'slug' => 'product_cat',
118 'type' => 'taxonomy',
119 ],
120 ]
121 ),
122 ]
123 );
124 break;
125
126 case 'woocommerce/products-by-attribute':
127 $converter = new ProductsByAttributes();
128 break;
129
130 default:
131 $converter = new Base();
132 }
133
134 return $converter;
135 }
136 }
137