forked from woocommerce/woocommerce
-
Notifications
You must be signed in to change notification settings - Fork 0
/
woocommerce.php
62 lines (53 loc) · 1.63 KB
/
woocommerce.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
/**
* Plugin Name: WooCommerce
* Plugin URI: https://woocommerce.com/
* Description: An eCommerce toolkit that helps you sell anything. Beautifully.
* Version: 5.1.0-dev
* Author: Automattic
* Author URI: https://woocommerce.com
* Text Domain: woocommerce
* Domain Path: /i18n/languages/
* Requires at least: 5.4
* Requires PHP: 7.0
*
* @package WooCommerce
*/
defined( 'ABSPATH' ) || exit;
if ( ! defined( 'WC_PLUGIN_FILE' ) ) {
define( 'WC_PLUGIN_FILE', __FILE__ );
}
// Load core packages and the autoloader.
require __DIR__ . '/src/Autoloader.php';
require __DIR__ . '/src/Packages.php';
if ( ! \Automattic\WooCommerce\Autoloader::init() ) {
return;
}
\Automattic\WooCommerce\Packages::init();
// Include the main WooCommerce class.
if ( ! class_exists( 'WooCommerce', false ) ) {
include_once dirname( WC_PLUGIN_FILE ) . '/includes/class-woocommerce.php';
}
// Initialize dependency injection.
$GLOBALS['wc_container'] = new Automattic\WooCommerce\Container();
/**
* Returns the main instance of WC.
*
* @since 2.1
* @return WooCommerce
*/
function WC() { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionNameInvalid
return WooCommerce::instance();
}
/**
* Returns the WooCommerce PSR11-compatible object container.
* Code in the `includes` directory should use the container to get instances of classes in the `src` directory.
*
* @since 4.4.0
* @return \Psr\Container\ContainerInterface The WooCommerce PSR11 container.
*/
function wc_get_container() : \Psr\Container\ContainerInterface {
return $GLOBALS['wc_container'];
}
// Global for backwards compatibility.
$GLOBALS['woocommerce'] = WC();