HEX
Server: LiteSpeed
System: Linux cde2.duelhost.dk 4.18.0-553.34.1.lve.el8.x86_64 #1 SMP Thu Jan 9 16:30:32 UTC 2025 x86_64
User: dtptviut (1121)
PHP: 8.0.30
Disabled: exec,system,passthru,shell_exec,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/dtptviut/public_html/wp-content/plugins/nitropack/classes/Integration/Plugin/WPML.php
<?php

namespace NitroPack\Integration\Plugin;

class WPML {
    const STAGE = "early";

    public static function isActive() {
        if (class_exists('SitePress') || defined('ICL_SITEPRESS_VERSION')) return true;
        return false;
    }

    public function init($stage) {
        add_action('admin_init', [$this, 'nitropack_remove_wpml_home_url_filter']);
    }
    /**
     * Remove WPML home_url filter on NitroPack connect page and ajax calls. 
     * Located in WPML plugin: classes\url-handling\wpml-url-filters.class.php
     */
    public function nitropack_remove_wpml_home_url_filter() {      
        if (!class_exists('WPML_URL_Filters')) return;

        global $pagenow, $wpml_url_filters;
       
        //apply it only on nitropack connect screen
        if ('admin.php' === $pagenow && isset($_GET['page']) && $_GET['page'] == 'nitropack' && !get_nitropack()->isConnected()) {          
            remove_filter('home_url', [$wpml_url_filters, 'home_url_filter'], -10);
        }
        //remove it only on ajax calls for nitropack connect and disconnect, for correct config fetch
        if (wp_doing_ajax() && isset($_REQUEST['action']) && ($_REQUEST['action'] === 'nitropack_disconnect' || $_REQUEST['action'] === 'nitropack_connect')) {        
            remove_filter('home_url', [$wpml_url_filters, 'home_url_filter'], -10);
        }
    }
}