File manager - Edit - /home/theblueo/tv/fb4e3b/wp-cli.tar
Back
cli-logger.php 0000666 00000001154 15214165075 0007314 0 ustar 00 <?php namespace Elementor\Modules\WpCli; use Elementor\Core\Logger\Loggers\Db; use Elementor\Core\Logger\Items\Log_Item_Interface as Log_Item_Interface; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } class Cli_Logger extends Db { public function save_log( Log_Item_Interface $item ) { $message = $item->format( 'raw' ); switch ( $item->type ) { case self::LEVEL_WARNING: \WP_CLI::warning( $message ); break; case self::LEVEL_ERROR: \WP_CLI::error( $message, false ); break; default: \WP_CLI::log( $message ); break; } parent::save_log( $item ); } } module.php 0000666 00000002451 15214165075 0006556 0 ustar 00 <?php namespace Elementor\Modules\WpCli; use Elementor\Core\Base\Module as BaseModule; use Elementor\Core\Logger\Manager as Logger; use Elementor\Plugin; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } class Module extends BaseModule { /** * Get module name. * * @since 2.0.0 * @access public * * @return string Module name. */ public function get_name() { return 'wp-cli'; } /** * @since 2.1.0 * @access public * @static */ public static function is_active() { return defined( 'WP_CLI' ) && WP_CLI; } /** * @param Logger $logger * @access public */ public function register_cli_logger( $logger ) { $logger->register_logger( 'cli', 'Elementor\Modules\WpCli\Cli_Logger' ); $logger->set_default_logger( 'cli' ); } public function init_common() { Plugin::$instance->init_common(); } /** * * @since 2.1.0 * @access public */ public function __construct() { add_action( 'cli_init', [ $this, 'init_common' ] ); add_action( 'elementor/loggers/register', [ $this, 'register_cli_logger' ] ); \WP_CLI::add_command( 'elementor', '\Elementor\Modules\WpCli\Command' ); \WP_CLI::add_command( 'elementor update', '\Elementor\Modules\WpCli\Update' ); \WP_CLI::add_command( 'elementor library', '\Elementor\Modules\WpCli\Library' ); } } command.php 0000666 00000006737 15214165075 0006722 0 ustar 00 <?php namespace Elementor\Modules\WpCli; use Elementor\Api; use Elementor\Plugin; use Elementor\TemplateLibrary\Source_Local; use Elementor\Utils; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } /** * Elementor Page Builder cli tools. */ class Command extends \WP_CLI_Command { /** * Flush the Elementor Page Builder CSS Cache. * * [--network] * Flush CSS Cache for all the sites in the network. * * ## EXAMPLES * * 1. wp elementor flush-css * - This will flush the CSS files for elementor page builder. * * 2. wp elementor flush-css --network * - This will flush the CSS files for elementor page builder for all the sites in the network. * * @since 2.1.0 * @access public * @alias flush-css */ public function flush_css( $args, $assoc_args ) { $network = ! empty( $assoc_args['network'] ) && is_multisite(); if ( $network ) { /** @var \WP_Site[] $blogs */ $blogs = get_sites(); foreach ( $blogs as $keys => $blog ) { // Cast $blog as an array instead of object $blog_id = $blog->blog_id; switch_to_blog( $blog_id ); Plugin::$instance->files_manager->clear_cache(); \WP_CLI::success( 'Flushed the Elementor CSS Cache for site - ' . get_option( 'home' ) ); restore_current_blog(); } } else { Plugin::$instance->files_manager->clear_cache(); \WP_CLI::success( 'Flushed the Elementor CSS Cache' ); } } /** * Replace old URLs with new URLs in all Elementor pages. * * ## EXAMPLES * * 1. wp elementor replace-urls <old> <new> * - This will replace all <old> URLs with the <new> URL. * * @access public * @alias replace-urls */ public function replace_urls( $args, $assoc_args ) { if ( empty( $args[0] ) ) { \WP_CLI::error( 'Please set the `old` URL' ); } if ( empty( $args[1] ) ) { \WP_CLI::error( 'Please set the `new` URL' ); } try { $results = Utils::replace_urls( $args[0], $args[1] ); \WP_CLI::success( $results ); } catch ( \Exception $e ) { \WP_CLI::error( $e->getMessage() ); } } /** * Sync Elementor Library. * * ## EXAMPLES * * 1. wp elementor sync-library * - This will sync the library with Elementor cloud library. * * @since 2.1.0 * @access public * @alias sync-library */ public function sync_library( $args, $assoc_args ) { // TODO: // \WP_CLI::warning( 'command is deprecated since 2.8.0 Please use: wp elementor library sync' ); $data = Api::get_library_data( true ); if ( empty( $data ) ) { \WP_CLI::error( 'Cannot sync library.' ); } \WP_CLI::success( 'Library has been synced.' ); } /** * Import template files to the Library. * * ## EXAMPLES * * 1. wp elementor import-library <file-path> * - This will import a file or a zip of multiple files to the library. * * @since 2.1.0 * @access public * @alias import-library */ public function import_library( $args, $assoc_args ) { // TODO: // \WP_CLI::warning( 'command is deprecated since 2.8.0 Please use: wp elementor library import' ); if ( empty( $args[0] ) ) { \WP_CLI::error( 'Please set file path.' ); } /** @var Source_Local $source */ $source = Plugin::$instance->templates_manager->get_source( 'local' ); $imported_items = $source->import_template( basename( $args[0] ), $args[0] ); if ( is_wp_error( $imported_items ) ) { \WP_CLI::error( $imported_items->get_error_message() ); } \WP_CLI::success( count( $imported_items ) . ' item(s) has been imported.' ); } } update.php 0000666 00000005154 15214165075 0006556 0 ustar 00 <?php namespace Elementor\Modules\WpCli; use Elementor\Plugin; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } /** * Elementor Page Builder cli tools. */ class Update extends \WP_CLI_Command { /** * Update the DB after plugin upgrade. * * [--network] * Update DB in all the sites in the network. * * [--force] * Force update even if it's looks like that update is in progress. * * * ## EXAMPLES * * 1. wp elementor update db * - This will Upgrade the DB if needed. * * 2. wp elementor update db --force * - This will Upgrade the DB even if another process is running. * * 3. wp elementor update db --network * - This will Upgrade the DB for each site in the network if needed. * * @since 2.4.0 * @access public * * @param $args * @param $assoc_args */ public function db( $args, $assoc_args ) { $network = ! empty( $assoc_args['network'] ) && is_multisite(); if ( $network ) { /** @var \WP_Site[] $sites */ $sites = get_sites(); foreach ( $sites as $keys => $blog ) { // Cast $blog as an array instead of object $blog_id = $blog->blog_id; switch_to_blog( $blog_id ); \WP_CLI::line( 'Site #' . $blog_id . ' - ' . get_option( 'blogname' ) ); $this->do_db_upgrade( $assoc_args ); \WP_CLI::success( 'Done! - ' . get_option( 'home' ) ); restore_current_blog(); } } else { $this->do_db_upgrade( $assoc_args ); } } protected function get_update_db_manager_class() { return '\Elementor\Core\Upgrade\Manager'; } protected function do_db_upgrade( $assoc_args ) { $manager_class = $this->get_update_db_manager_class(); /** @var \Elementor\Core\Upgrade\Manager $manager */ $manager = new $manager_class(); $updater = $manager->get_task_runner(); if ( $updater->is_process_locked() && empty( $assoc_args['force'] ) ) { \WP_CLI::warning( 'Oops! Process is already running. Use --force to force run.' ); return; } if ( ! $manager->should_upgrade() ) { \WP_CLI::success( 'The DB is already updated!' ); return; } $callbacks = $manager->get_upgrade_callbacks(); $did_tasks = false; if ( ! empty( $callbacks ) ) { Plugin::$instance->logger->get_logger()->info( 'Update DB has been started', [ 'meta' => [ 'plugin' => $manager->get_plugin_label(), 'from' => $manager->get_current_version(), 'to' => $manager->get_new_version(), ], ] ); $updater->handle_immediately( $callbacks ); $did_tasks = true; } $manager->on_runner_complete( $did_tasks ); \WP_CLI::success( count( $callbacks ) . ' updates(s) has been applied.' ); } } library.php 0000666 00000010523 15214165075 0006734 0 ustar 00 <?php namespace Elementor\Modules\WpCli; use Elementor\Api; use Elementor\Plugin; use Elementor\TemplateLibrary\Source_Local; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } /** * Elementor Page Builder cli tools. */ class Library extends \WP_CLI_Command { /** * Sync Elementor Library. * * [--network] * Sync library in all the sites in the network. * * [--force] * Force sync even if it's looks like that the library is already up to date. * * ## EXAMPLES * * 1. wp elementor library sync * - This will sync the library with Elementor cloud library. * * 2. wp elementor library sync --force * - This will sync the library with Elementor cloud even if it's looks like that the library is already up to date. * * 3. wp elementor library sync --network * - This will sync the library with Elementor cloud library for each site in the network if needed. * * @since 2.8.0 * @access public */ public function sync( $args, $assoc_args ) { $network = isset( $assoc_args['network'] ) && is_multisite(); if ( $network ) { /** @var \WP_Site[] $sites */ $sites = get_sites(); foreach ( $sites as $keys => $blog ) { // Cast $blog as an array instead of object $blog_id = $blog->blog_id; switch_to_blog( $blog_id ); \WP_CLI::line( 'Site #' . $blog_id . ' - ' . get_option( 'blogname' ) ); $this->do_sync( isset( $assoc_args['force'] ) ); \WP_CLI::success( 'Done! - ' . get_option( 'home' ) ); restore_current_blog(); } } else { $this->do_sync( isset( $assoc_args['force'] ) ); \WP_CLI::success( 'Done!' ); } } /** * Import template files to the Library. * * ## EXAMPLES * * 1. wp elementor library import <file-path> * - This will import a file or a zip of multiple files to the library. * * @param $args * @param $assoc_args * * @since 2.8.0 * @access public */ public function import( $args ) { if ( empty( $args[0] ) ) { \WP_CLI::error( 'Please set file path.' ); } $file = $args[0]; /** @var Source_Local $source */ $source = Plugin::$instance->templates_manager->get_source( 'local' ); $imported_items = $source->import_template( basename( $file ), $file ); if ( is_wp_error( $imported_items ) ) { \WP_CLI::error( $imported_items->get_error_message() ); } \WP_CLI::success( count( $imported_items ) . ' item(s) has been imported.' ); } /** * Connect site to Elementor Library. * (Network is not supported) * * --user * The user to connect <id|login|email> * * --token * A connect token from Elementor Account Dashboard. * * ## EXAMPLES * * 1. wp elementor library connect --user=admin --token=<connect-cli-token> * - This will connect the admin to Elementor library. * * @param $args * @param $assoc_args * * @since 2.8.0 * @access public */ public function connect( $args, $assoc_args ) { if ( ! get_current_user_id() ) { \WP_CLI::error( 'Please set user to connect (--user=<id|login|email>).' ); } if ( empty( $assoc_args['token'] ) ) { \WP_CLI::error( 'Please set connect token.' ); } $_REQUEST['mode'] = 'cli'; $_REQUEST['token'] = $assoc_args['token']; $app = $this->get_library_app(); $app->action_authorize(); $app->action_get_token(); } /** * Disconnect site from Elementor Library. * * --user * The user to disconnect <id|login|email> * * ## EXAMPLES * * 1. wp elementor library disconnect --user=admin * - This will disconnect the admin from Elementor library. * * @param $args * @param $assoc_args * * @since 2.8.0 * @access public */ public function disconnect() { if ( ! get_current_user_id() ) { \WP_CLI::error( 'Please set user to connect (--user=<id|login|email>).' ); } $_REQUEST['mode'] = 'cli'; $this->get_library_app()->action_disconnect(); } private function do_sync() { $data = Api::get_library_data( true ); if ( empty( $data ) ) { \WP_CLI::error( 'Cannot sync library.' ); } } /** * @return \Elementor\Core\Common\Modules\Connect\Apps\Library */ private function get_library_app() { $connect = Plugin::$instance->common->get_component( 'connect' ); $app = $connect->get_app( 'library' ); // Before init. if ( ! $app ) { $connect->init(); $app = $connect->get_app( 'library' ); } return $app; } }
| ver. 1.4 |
Github
|
.
| PHP 7.0.33 | Generation time: 0 |
proxy
|
phpinfo
|
Settings