. */ if ( ! defined( 'ABSPATH' ) ) { exit( 0 ); } define( 'AUTOMATTIC_FOR_AGENCIES_CLIENT_DIR', plugin_dir_path( __FILE__ ) ); define( 'AUTOMATTIC_FOR_AGENCIES_CLIENT_ROOT_FILE', __FILE__ ); define( 'AUTOMATTIC_FOR_AGENCIES_CLIENT_ROOT_FILE_RELATIVE_PATH', plugin_basename( __FILE__ ) ); define( 'AUTOMATTIC_FOR_AGENCIES_CLIENT_SLUG', 'automattic-for-agencies-client' ); define( 'AUTOMATTIC_FOR_AGENCIES_CLIENT_NAME', 'Automattic for Agencies Client' ); define( 'AUTOMATTIC_FOR_AGENCIES_CLIENT_URI', 'https://jetpack.com/automattic-for-agencies-client' ); define( 'AUTOMATTIC_FOR_AGENCIES_CLIENT_FOLDER', dirname( plugin_basename( __FILE__ ) ) ); // Jetpack Autoloader. $jetpack_autoloader = AUTOMATTIC_FOR_AGENCIES_CLIENT_DIR . 'vendor/autoload_packages.php'; if ( is_readable( $jetpack_autoloader ) ) { require_once $jetpack_autoloader; if ( method_exists( \Automattic\Jetpack\Assets::class, 'alias_textdomains_from_file' ) ) { \Automattic\Jetpack\Assets::alias_textdomains_from_file( AUTOMATTIC_FOR_AGENCIES_CLIENT_DIR . 'jetpack_vendor/i18n-map.php' ); } } else { // Something very unexpected. Error out gently with an admin_notice and exit loading. if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { error_log( // phpcs:ignore WordPress.PHP.DevelopmentFunctions.error_log_error_log __( 'Error loading autoloader file for Automattic For Agencies Client plugin', 'automattic-for-agencies-client' ) ); } add_action( 'admin_notices', function () { $message = sprintf( wp_kses( /* translators: Placeholder is a link to a support document. */ __( 'Your installation of Automattic For Agencies Client is incomplete. If you installed Automattic For Agencies Client from GitHub, please refer to this document to set up your development environment. Automattic For Agencies Client must have Composer dependencies installed and built via the build command.', 'automattic-for-agencies-client' ), array( 'a' => array( 'href' => array(), 'target' => array(), 'rel' => array(), ), ) ), 'https://github.com/Automattic/jetpack/blob/trunk/docs/development-environment.md#building-your-project' ); wp_admin_notice( $message, array( 'type' => 'error', 'dismissible' => true, ) ); } ); return; } // Add "Settings" link to plugins page. add_filter( 'plugin_action_links_' . AUTOMATTIC_FOR_AGENCIES_CLIENT_FOLDER . '/automattic-for-agencies-client.php', function ( $actions ) { $settings_link = '' . __( 'Settings', 'automattic-for-agencies-client' ) . ''; array_unshift( $actions, $settings_link ); return $actions; } ); // Redirect to plugin page when the plugin is activated. add_action( 'activated_plugin', 'jetpack_starter_plugin_activation' ); /** * Redirects to plugin page when the plugin is activated * * @param string $plugin Path to the plugin file relative to the plugins directory. */ function jetpack_starter_plugin_activation( $plugin ) { if ( AUTOMATTIC_FOR_AGENCIES_CLIENT_ROOT_FILE_RELATIVE_PATH === $plugin && ( new \Automattic\Jetpack\Paths() )->is_current_request_activating_plugin_from_plugins_screen( AUTOMATTIC_FOR_AGENCIES_CLIENT_ROOT_FILE_RELATIVE_PATH ) ) { wp_safe_redirect( esc_url( admin_url( 'options-general.php?page=' . AUTOMATTIC_FOR_AGENCIES_CLIENT_SLUG ) ) ); exit( 0 ); } } register_deactivation_hook( __FILE__, array( 'Automattic_For_Agencies_Client', 'plugin_deactivation' ) ); // Initialize the plugin's main class. Automattic_For_Agencies_Client::init();