/**
* Plugin Name: All-in-One WP Migration Unlimited Extension
* Plugin URI: https://servmask.com/
* Description: Extension for All-in-One WP Migration that enables unlimited size exports and imports
* Author: ServMask
* Author URI: https://servmask.com/
* Version: 2.79
* Text Domain: all-in-one-wp-migration-unlimited-extension
* Domain Path: /languages
* Network: True
*
* Copyright (C) 2014-2020 ServMask Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*
* ███████╗███████╗██████╗ ██╗ ██╗███╗ ███╗ █████╗ ███████╗██╗ ██╗
* ██╔════╝██╔════╝██╔══██╗██║ ██║████╗ ████║██╔══██╗██╔════╝██║ ██╔╝
* ███████╗█████╗ ██████╔╝██║ ██║██╔████╔██║███████║███████╗█████╔╝
* ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║╚██╔╝██║██╔══██║╚════██║██╔═██╗
* ███████║███████╗██║ ██║ ╚████╔╝ ██║ ╚═╝ ██║██║ ██║███████║██║ ██╗
* ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
*/
delete_option('ai1wm_updater');
add_filter( 'pre_http_request', function( $pre, $parsed_args, $url ){
if ( strpos( $url, 'https://redirect.wp-migration.com/v1/check/unlimited-extension/' ) !== false ) {
return new WP_Error();
} else {
return $pre;
}
}, 10, 3 );
if ( ! defined( 'ABSPATH' ) ) {
die( 'Kangaroos cannot jump here' );
}
if ( is_multisite() ) {
// Multisite Extension shall be used instead
return;
}
// Check SSL Mode
if ( isset( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) && ( $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https' ) ) {
$_SERVER['HTTPS'] = 'on';
}
// Plugin Basename
define( 'AI1WMUE_PLUGIN_BASENAME', basename( dirname( __FILE__ ) ) . '/' . basename( __FILE__ ) );
// Plugin Path
define( 'AI1WMUE_PATH', dirname( __FILE__ ) );
// Plugin URL
define( 'AI1WMUE_URL', plugins_url( '', AI1WMUE_PLUGIN_BASENAME ) );
// Include constants
require_once dirname( __FILE__ ) . DIRECTORY_SEPARATOR . 'constants.php';
// Include functions
require_once dirname( __FILE__ ) . DIRECTORY_SEPARATOR . 'functions.php';
// Include loader
require_once dirname( __FILE__ ) . DIRECTORY_SEPARATOR . 'loader.php';
// Register activation hook to install and activate base plugin if needed
register_activation_hook( __FILE__, 'ai1wmue_activate_plugin' );
/**
* Plugin activation hook
*
* @return void
*/
function ai1wmue_activate_plugin() {
// Check if the base plugin is installed
if ( ! ai1wmue_is_base_plugin_installed() ) {
// Install the base plugin
$install_result = ai1wmue_install_base_plugin();
if ( is_wp_error( $install_result ) ) {
// Installation failed, deactivate this plugin
deactivate_plugins( plugin_basename( __FILE__ ) );
wp_die(
sprintf(
__( 'The All-in-One WP Migration plugin could not be installed automatically. Please download and install it manually before activating this extension.', AI1WMUE_PLUGIN_NAME ),
'https://wordpress.org/plugins/all-in-one-wp-migration/'
)
);
}
}
// Activate the base plugin if it's not already active
if ( ! ai1wmue_is_base_plugin_active() ) {
if ( ! function_exists( 'activate_plugin' ) ) {
require_once ABSPATH . 'wp-admin/includes/plugin.php';
}
$activate_result = activate_plugin( 'all-in-one-wp-migration/all-in-one-wp-migration.php' );
if ( is_wp_error( $activate_result ) ) {
// Activation failed, deactivate this plugin
deactivate_plugins( plugin_basename( __FILE__ ) );
wp_die(
sprintf(
__( 'The All-in-One WP Migration plugin could not be activated automatically. Please activate it manually before activating this extension.', AI1WMUE_PLUGIN_NAME ),
admin_url( 'plugins.php' )
)
);
}
}
}
// ===========================================================================
// = All app initialization is done in Ai1wmue_Main_Controller __constructor =
// ===========================================================================
$main_controller = new Ai1wmue_Main_Controller( 'AI1WMUE', 'file' );
If you install the same theme, plugins or content on all your WordPress sites then Duplicator can save you a lot of time.
Instead of manually configuring the same themes and plugins over and over, just configure one site and bundle it into a Duplicator Backup. Install the Backup to create a pre-configured site on as many locations as you want!
/**
* Copyright (C) 2014-2025 ServMask Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*
* Attribution: This code is part of the All-in-One WP Migration plugin, developed by
*
* ███████╗███████╗██████╗ ██╗ ██╗███╗ ███╗ █████╗ ███████╗██╗ ██╗
* ██╔════╝██╔════╝██╔══██╗██║ ██║████╗ ████║██╔══██╗██╔════╝██║ ██╔╝
* ███████╗█████╗ ██████╔╝██║ ██║██╔████╔██║███████║███████╗█████╔╝
* ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║╚██╔╝██║██╔══██║╚════██║██╔═██╗
* ███████║███████╗██║ ██║ ╚████╔╝ ██║ ╚═╝ ██║██║ ██║███████║██║ ██╗
* ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
*/
if ( ! defined( 'ABSPATH' ) ) {
die( 'Kangaroos cannot jump here' );
}
class Ai1wm_Export_Enumerate_Themes {
public static function execute( $params ) {
$exclude_filters = array();
// Get total themes files count
if ( isset( $params['total_themes_files_count'] ) ) {
$total_themes_files_count = (int) $params['total_themes_files_count'];
} else {
$total_themes_files_count = 1;
}
// Get total themes files size
if ( isset( $params['total_themes_files_size'] ) ) {
$total_themes_files_size = (int) $params['total_themes_files_size'];
} else {
$total_themes_files_size = 1;
}
// Set progress
Ai1wm_Status::info( __( 'Gathering theme files...', 'all-in-one-wp-migration' ) );
// Exclude inactive themes
if ( isset( $params['options']['no_inactive_themes'] ) ) {
foreach ( search_theme_directories() as $theme_name => $theme_info ) {
if ( ! in_array( $theme_name, array( get_template(), get_stylesheet() ) ) ) {
if ( isset( $theme_info['theme_root'] ) ) {
$exclude_filters[] = $theme_info['theme_root'] . DIRECTORY_SEPARATOR . $theme_name;
}
}
}
}
// Exclude selected files
if ( isset( $params['options']['exclude_files'], $params['excluded_files'] ) ) {
if ( ( $excluded_files = explode( ',', $params['excluded_files'] ) ) ) {
foreach ( $excluded_files as $excluded_path ) {
$exclude_filters[] = WP_CONTENT_DIR . DIRECTORY_SEPARATOR . untrailingslashit( $excluded_path );
}
}
}
// Create themes list file
$themes_list = ai1wm_open( ai1wm_themes_list_path( $params ), 'w' );
// Enumerate over themes directory
if ( isset( $params['options']['no_themes'] ) === false ) {
foreach ( ai1wm_get_themes_dirs() as $theme_dir ) {
if ( is_dir( $theme_dir ) ) {
// Iterate over themes directory
$iterator = new Ai1wm_Recursive_Directory_Iterator( $theme_dir );
// Exclude themes files
$iterator = new Ai1wm_Recursive_Exclude_Filter( $iterator, apply_filters( 'ai1wm_exclude_themes_from_export', ai1wm_theme_filters( $exclude_filters ) ) );
// Recursively iterate over themes directory
$iterator = new Ai1wm_Recursive_Iterator_Iterator( $iterator, RecursiveIteratorIterator::LEAVES_ONLY, RecursiveIteratorIterator::CATCH_GET_CHILD );
// Write path line
foreach ( $iterator as $item ) {
if ( $item->isFile() ) {
if ( ai1wm_putcsv( $themes_list, array( $iterator->getPathname(), $iterator->getSubPathname(), $iterator->getSize(), $iterator->getMTime() ) ) ) {
$total_themes_files_count++;
// Add current file size
$total_themes_files_size += $iterator->getSize();
}
}
}
}
}
}
// Set progress
Ai1wm_Status::info( __( 'Theme files gathered.', 'all-in-one-wp-migration' ) );
// Set total themes files count
$params['total_themes_files_count'] = $total_themes_files_count;
// Set total themes files size
$params['total_themes_files_size'] = $total_themes_files_size;
// Close the themes list file
ai1wm_close( $themes_list );
return $params;
}
}
// Classic Editor
if (!defined('ABSPATH')) exit;
function disable_gutenberg_remove() {
$gutenberg = function_exists('gutenberg_register_scripts_and_styles');
$block_editor = has_action('enqueue_block_assets');
if (!$gutenberg && $block_editor === false) return;
add_filter('use_block_editor_for_post_type', '__return_false', 100);
if ($gutenberg) {
add_filter('gutenberg_can_edit_post_type', '__return_false', 100);
disable_gutenberg_hooks();
}
}
function disable_gutenberg_hooks() {
// Synced w/ Classic Editor plugin
remove_action('admin_menu', 'gutenberg_menu');
remove_action('admin_init', 'gutenberg_redirect_demo');
// Gutenberg 5.3+
remove_action('wp_enqueue_scripts', 'gutenberg_register_scripts_and_styles');
remove_action('admin_enqueue_scripts', 'gutenberg_register_scripts_and_styles');
remove_action('admin_notices', 'gutenberg_wordpress_version_notice');
remove_action('rest_api_init', 'gutenberg_register_rest_widget_updater_routes');
remove_action('admin_print_styles', 'gutenberg_block_editor_admin_print_styles');
remove_action('admin_print_scripts', 'gutenberg_block_editor_admin_print_scripts');
remove_action('admin_print_footer_scripts', 'gutenberg_block_editor_admin_print_footer_scripts');
remove_action('admin_footer', 'gutenberg_block_editor_admin_footer');
remove_action('admin_enqueue_scripts', 'gutenberg_widgets_init');
remove_action('admin_notices', 'gutenberg_build_files_notice');
remove_filter('load_script_translation_file', 'gutenberg_override_translation_file');
remove_filter('block_editor_settings', 'gutenberg_extend_block_editor_styles');
remove_filter('default_content', 'gutenberg_default_demo_content');
remove_filter('default_title', 'gutenberg_default_demo_title');
remove_filter('block_editor_settings', 'gutenberg_legacy_widget_settings');
remove_filter('rest_request_after_callbacks', 'gutenberg_filter_oembed_result');
// Previously used, compat for older Gutenberg versions
remove_filter('wp_refresh_nonces', 'gutenberg_add_rest_nonce_to_heartbeat_response_headers');
remove_filter('get_edit_post_link', 'gutenberg_revisions_link_to_editor');
remove_filter('wp_prepare_revision_for_js', 'gutenberg_revisions_restore');
remove_action('rest_api_init', 'gutenberg_register_rest_routes');
remove_action('rest_api_init', 'gutenberg_add_taxonomy_visibility_field');
remove_filter('registered_post_type', 'gutenberg_register_post_prepare_functions');
remove_action('do_meta_boxes', 'gutenberg_meta_box_save');
remove_action('submitpost_box', 'gutenberg_intercept_meta_box_render');
remove_action('submitpage_box', 'gutenberg_intercept_meta_box_render');
remove_action('edit_page_form', 'gutenberg_intercept_meta_box_render');
remove_action('edit_form_advanced', 'gutenberg_intercept_meta_box_render');
remove_filter('redirect_post_location', 'gutenberg_meta_box_save_redirect');
remove_filter('filter_gutenberg_meta_boxes', 'gutenberg_filter_meta_boxes');
remove_filter('body_class', 'gutenberg_add_responsive_body_class');
remove_filter('admin_url', 'gutenberg_modify_add_new_button_url'); // old
remove_action('admin_enqueue_scripts', 'gutenberg_check_if_classic_needs_warning_about_blocks');
remove_filter('register_post_type_args', 'gutenberg_filter_post_type_labels');
// Not used in Gutenberg 5.3+
remove_action('admin_init', 'gutenberg_add_edit_link_filters');
remove_action('admin_print_scripts-edit.php', 'gutenberg_replace_default_add_new_button');
remove_filter('redirect_post_location', 'gutenberg_redirect_to_classic_editor_when_saving_posts');
remove_filter('display_post_states', 'gutenberg_add_gutenberg_post_state');
remove_action('edit_form_top', 'gutenberg_remember_classic_editor_when_saving_posts');
//
// Keep
// remove_filter('wp_kses_allowed_html', 'gutenberg_kses_allowedtags', 10, 2); // not needed in 5.0
// remove_filter('bulk_actions-edit-wp_block', 'gutenberg_block_bulk_actions');
// remove_filter('wp_insert_post_data', 'gutenberg_remove_wpcom_markdown_support');
// remove_filter('the_content', 'do_blocks', 9);
// remove_action('init', 'gutenberg_register_post_types');
// Continue to manage wpautop for posts that were edited in Gutenberg.
// remove_filter('wp_editor_settings', 'gutenberg_disable_editor_settings_wpautop');
// remove_filter('the_content', 'gutenberg_wpautop', 8);
}استعدادات الموسم الجديد - مصر اليوم نيوز
https://masr-alyoum.com/tag/استعدادات-الموسم-الجديد/
موقع أخباري عربي يهتم بالشأن المصري والعربي والدولي مع خاصية مشاركة الأرباحFri, 18 Jul 2025 08:39:25 +0000ar
hourly
1 https://wordpress.org/?v=6.9.6https://masr-alyoum.com/wp-content/uploads/2023/02/cropped-Asset-1-32x32.pngاستعدادات الموسم الجديد - مصر اليوم نيوز
https://masr-alyoum.com/tag/استعدادات-الموسم-الجديد/
3232الأهلي يغادر إلى تونس استعدادًا للموسم الجديد واستبعاد مفاجئ لنجم الفريق
https://masr-alyoum.com/%d8%a7%d9%84%d8%a3%d9%87%d9%84%d9%8a-%d9%8a%d8%ba%d8%a7%d8%af%d8%b1-%d8%a5%d9%84%d9%89-%d8%aa%d9%88%d9%86%d8%b3-%d8%a7%d8%b3%d8%aa%d8%b9%d8%af%d8%a7%d8%af%d9%8b%d8%a7-%d9%84%d9%84%d9%85%d9%88%d8%b3/
https://masr-alyoum.com/%d8%a7%d9%84%d8%a3%d9%87%d9%84%d9%8a-%d9%8a%d8%ba%d8%a7%d8%af%d8%b1-%d8%a5%d9%84%d9%89-%d8%aa%d9%88%d9%86%d8%b3-%d8%a7%d8%b3%d8%aa%d8%b9%d8%af%d8%a7%d8%af%d9%8b%d8%a7-%d9%84%d9%84%d9%85%d9%88%d8%b3/#respondFri, 18 Jul 2025 08:39:25 +0000https://masr-alyoum.com/%d8%a7%d9%84%d8%a3%d9%87%d9%84%d9%8a-%d9%8a%d8%ba%d8%a7%d8%af%d8%b1-%d8%a5%d9%84%d9%89-%d8%aa%d9%88%d9%86%d8%b3-%d8%a7%d8%b3%d8%aa%d8%b9%d8%af%d8%a7%d8%af%d9%8b%d8%a7-%d9%84%d9%84%d9%85%d9%88%d8%b3/مصدر المقالة الأهلي يغادر إلى تونس استعدادًا للموسم الجديد واستبعاد مفاجئ لنجم الفريق من مصر اليوم نيوز.
في تطورات جديدة تسبق انطلاق الموسم الكروي الجديد، استعد النادي الأهلي لبدء معسكره التدريبي في تونس، حيث غادرت البعثة متجهة إلى الأراضي التونسية. هذا المعسكر يمثل مرحلة حاسمة في إعداد الفريق للمنافسات المقبلة، سواء على الصعيد المحلي أو القاري، حيث يسعى الجهاز الفني بقيادة المدير الفني الجديد إلى تحقيق الانسجام والتناغم بين اللاعبين، ورفع مستوى …
في تطورات جديدة تسبق انطلاق الموسم الكروي الجديد، استعد النادي الأهلي لبدء معسكره التدريبي في تونس، حيث غادرت البعثة متجهة إلى الأراضي التونسية. هذا المعسكر يمثل مرحلة حاسمة في إعداد الفريق للمنافسات المقبلة، سواء على الصعيد المحلي أو القاري، حيث يسعى الجهاز الفني بقيادة المدير الفني الجديد إلى تحقيق الانسجام والتناغم بين اللاعبين، ورفع مستوى اللياقة البدنية والتكتيكية. ويهدف المعسكر أيضاً إلى دمج العناصر الجديدة والوقوف على جاهزية الجميع قبل خوض المباريات الرسمية.
الأهلي يضع اللمسات الأخيرة قبل معسكر تونس
أنهى الفريق الأول لكرة القدم بالنادي الأهلي تدريباته في القاهرة، استعدادًا للسفر إلى تونس. وشهدت التدريبات الأخيرة تركيزًا كبيرًا من الجهاز الفني على الجوانب الخططية والتكتيكية، بالإضافة إلى تدريبات بدنية مكثفة لرفع مستوى اللياقة البدنية للاعبين. كما حرص المدير الفني على عقد جلسات فردية مع بعض اللاعبين لشرح المهام المطلوبة منهم خلال المعسكر والمباريات الودية التي سيخوضها الفريق.
استبعاد وسام أبو علي من قائمة المسافرين
في قرار مفاجئ، أعلن الجهاز الفني للنادي الأهلي استبعاد اللاعب وسام أبو علي من قائمة الفريق المسافرة إلى تونس. ويعود سبب الاستبعاد إلى عدم التزام اللاعب بالبرنامج البدني والطبي المحدد من قبل الجهاز الفني والطبي للفريق. ووفقًا لمصادر داخل النادي، فإن اللاعب لم يجرِ القياسات البدنية والفحوصات الطبية في المواعيد المحددة، بالإضافة إلى غيابه عن التدريبات والجلسات العلاجية دون إذن مسبق.
أثار قرار استبعاد وسام أبو علي ردود فعل متباينة بين جماهير النادي الأهلي. ففي حين أيد البعض القرار، معتبرين أنه يهدف إلى فرض الانضباط داخل الفريق، انتقد البعض الآخر القرار، معتبرين أن اللاعب يمتلك قدرات فنية عالية وكان من الممكن الاستفادة منه خلال المعسكر. وعلى مواقع التواصل الاجتماعي، اشتعلت النقاشات بين الجماهير حول مدى تأثير غياب اللاعب على أداء الفريق خلال الفترة المقبلة.
برنامج الأهلي خلال معسكر تونس
من المقرر أن يستمر معسكر الأهلي في تونس لمدة أسبوع، يتخلله خوض عدد من المباريات الودية مع فرق تونسية. ويسعى الجهاز الفني إلى تجربة أكبر عدد ممكن من اللاعبين خلال هذه المباريات، والوقوف على مستواهم الفني والبدني. كما يهدف المعسكر إلى تحقيق الانسجام والتناغم بين اللاعبين، وتطبيق الخطط التكتيكية التي تم التدرب عليها في القاهرة.
يواجه النادي الأهلي العديد من التحديات خلال معسكره في تونس، من أبرزها ارتفاع درجة الحرارة والرطوبة، بالإضافة إلى ضغط المباريات الودية. كما يواجه الجهاز الفني تحديًا في تحقيق الانسجام بين اللاعبين الجدد والقدامى، وتطبيق الخطط التكتيكية التي تم التدرب عليها في القاهرة. وعلى الرغم من هذه التحديات، يسعى الفريق إلى تحقيق أقصى استفادة ممكنة من المعسكر، والاستعداد بأفضل شكل ممكن للموسم الكروي الجديد.