PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.0.13
Admin Columns v7.0.13
7.0.19 2.3.5 2.4 2.4.1 2.4.10 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.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.6.1 2.5.6.2 2.5.6.3 2.5.6.4 3.0 3.0.1 3.0.2 3.0.3 3.0.5 3.0.7 3.1 3.1.1 3.1.10 3.1.2 3.1.3 3.1.5 3.2.3 3.2.7 3.3.1 3.4.1 3.4.6 3.4.8 4.0.1 4.0.3 4.1.6 4.2.2 4.2.5 4.3 4.3.2 4.4.1 4.4.4 4.4.5 4.5.5 4.6.1 4.7.18 4.7.19 4.7.20 4.7.7 7.0.13 7.0.14 7.0.16 trunk 1.0 1.1 1.1.3 1.2 1.2.1 1.3 1.3.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.5.1 1.4.6 1.4.6.1 1.4.6.2 1.4.6.3 1.4.6.4 1.4.7 1.4.8 1.4.9 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.2 2.2.1 2.2.1.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.5.1 2.2.6 2.2.6.1 2.2.6.2 2.2.6.3 2.2.6.4 2.2.7 2.2.8 2.2.8.1 2.2.9 2.3.1 2.3.2 2.3.3
codepress-admin-columns / classes / Integration / WooCommerce.php
codepress-admin-columns / classes / Integration Last commit date
ACF.php 3 months ago BeaverBuilder.php 3 months ago BuddyPress.php 3 months ago EventsCalendar.php 3 months ago Filter.php 3 months ago GravityForms.php 3 months ago IntegrationRepository.php 3 months ago JetEngine.php 3 months ago MediaLibraryAssistant.php 3 months ago MetaBox.php 3 months ago Pods.php 3 months ago RankMath.php 3 months ago SeoPress.php 3 months ago Types.php 3 months ago WooCommerce.php 3 months ago YoastSeo.php 3 months ago
WooCommerce.php
73 lines
1 <?php
2
3 namespace AC\Integration;
4
5 use AC\Screen;
6 use AC\TableScreen;
7 use AC\Type\Integration;
8 use AC\Type\Url\Site;
9
10 final class WooCommerce extends Integration
11 {
12
13 public function __construct()
14 {
15 parent::__construct(
16 'ac-addon-woocommerce',
17 __('WooCommerce', 'codepress-admin-columns'),
18 'assets/images/addons/woocommerce-icon.png',
19 __(
20 'Manage products, orders, coupons, and subscriptions from one screen. Bulk edit prices, stock, and SKUs. Filter orders by any field, then export the results to CSV in one click.',
21 'codepress-admin-columns'
22 ),
23 null,
24 new Site(Site::PAGE_ADDON_WOOCOMMERCE)
25 );
26 }
27
28 public function is_plugin_active(): bool
29 {
30 return class_exists('WooCommerce', false);
31 }
32
33 private function get_post_types(): array
34 {
35 return [
36 'product',
37 'shop_order',
38 'shop_coupon',
39 'shop_subscription',
40 ];
41 }
42
43 public function show_notice(Screen $screen): bool
44 {
45 $is_user_screen = 'users' === $screen->get_id();
46 $is_post_screen = 'edit' === $screen->get_base()
47 && in_array($screen->get_post_type(), $this->get_post_types(), true);
48 $is_order_screen = 'woocommerce_page_wc-orders' === $screen->get_id();
49
50 return $is_user_screen || $is_post_screen || $is_order_screen;
51 }
52
53 private function get_list_keys(): array
54 {
55 $keys = [
56 'wp-users',
57 'wc_order',
58 'wc_order_subscription',
59 ];
60
61 foreach ($this->get_post_types() as $post_type) {
62 $keys[] = $post_type;
63 }
64
65 return $keys;
66 }
67
68 public function show_placeholder(TableScreen $table_screen): bool
69 {
70 return in_array((string)$table_screen->get_id(), $this->get_list_keys(), true);
71 }
72
73 }