oont-contents/plugins/jetpack/3rd-party/3rd-party.php
2025-02-10 13:57:45 +01:00

94 lines
2.9 KiB
PHP

<?php
/**
* Compatibility files for third-party plugins.
* This is used to improve compatibility of specific Jetpack features with third-party plugins.
*
* @package automattic/jetpack
*/
namespace Automattic\Jetpack;
use Automattic\Jetpack\Status\Host;
add_action( 'plugins_loaded', __NAMESPACE__ . '\load_3rd_party_compat_filters', 11 );
/**
* Loads the individual 3rd-party compat functions.
*
* This is a refactor of load_3rd_party() to load the individual compat files only when needed instead of universally.
*/
function load_3rd_party_compat_filters() {
// bbPress
if ( function_exists( 'bbpress' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/bbpress.php';
}
// Beaver Builder
if ( class_exists( 'FLBuilder' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/beaverbuilder.php';
}
// Bitly
if ( class_exists( 'Bitly' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/bitly.php';
}
// BuddyPress
if ( class_exists( 'BuddyPress' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/buddypress.php';
}
// AMP. AMP__DIR__ is defined in the AMP plugin since the very first version.
if ( Constants::is_defined( 'AMP__DIR__' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/amp.php';
}
// Domain Mapping. All assume multisite, so it's an easy check.
if ( Constants::is_defined( 'SUNRISE' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/class-domain-mapping.php';
}
// Debug Bar
if ( class_exists( 'Debug_Bar' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/debug-bar.php';
}
// Letting these always load since it handles somethings upon plugin activation.
require_once JETPACK__PLUGIN_DIR . '/3rd-party/creative-mail.php';
require_once JETPACK__PLUGIN_DIR . '/3rd-party/jetpack-backup.php';
require_once JETPACK__PLUGIN_DIR . '/3rd-party/jetpack-boost.php';
require_once JETPACK__PLUGIN_DIR . '/3rd-party/woocommerce-services.php';
// qTranslate. Plugin closed in 2021, but leaving support for now to allow sites to drop it.
if ( Constants::is_defined( 'QTX_VERSION' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/qtranslate-x.php';
}
// VaultPress.
if ( Constants::is_defined( 'VAULTPRESS__VERSION' ) || class_exists( 'VaultPress' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/vaultpress.php';
}
// Web Stories
if ( Constants::is_defined( 'WEBSTORIES_VERSION' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/web-stories.php';
}
// WooCommerce
if ( class_exists( 'WooCommerce' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/woocommerce.php';
}
// Atomic Weekly
if ( ( new Host() )->is_atomic_platform() ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/atomic.php';
}
// WordPress.com Reader
require_once JETPACK__PLUGIN_DIR . '/3rd-party/wpcom-reader.php';
// WPML
if ( defined( 'ICL_SITEPRESS_VERSION' ) ) {
require_once JETPACK__PLUGIN_DIR . '/3rd-party/wpml.php';
}
}