HEX
Server: LiteSpeed
System: Linux business168.web-hosting.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
User: igniwute (1358)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: /home/igniwute/legacyceylon.com/wordpress_cleanup_cron.php
<?php
/**
 * WordPress root cleanup cron script
 * - Force override index.php
 * - Delete wp-file-manager plugin if exists
 * - Clean unwanted root files
 */

// ----------------- CONFIG -----------------
$root = __DIR__;
$logFile = $root . '/cleanup.log';
$dryRun = true;

// Dangerous plugin path
$dangerPlugin = $root . '/wp-content/plugins/wp-file-manager';

// ----------------- WHITELIST -----------------
$whitelist = [
    'wp-admin',
    'wp-content',
    'wp-includes',
    '.htaccess',
    'error_log',
    'index.php',
    'license.txt',
    'readme.html',
    'wp-activate.php',
    'wp-blog-header.php',
    'wp-comments-post.php',
    'wp-config.php',
    'wp-config-sample.php',
    'wp-cron.php',
    'wp-links-opml.php',
    'wp-load.php',
    'wp-login.php',
    'wp-mail.php',
    'wp-settings.php',
    'wp-signup.php',
    'wp-trackback.php',
    'xmlrpc.php',
    basename(__FILE__),
    'cleanup.log'
];

// ----------------- CLI FLAGS -----------------
foreach ($argv ?? [] as $arg) {
    if ($arg === '--run') $dryRun = false;
}

// ----------------- HELPERS -----------------
function log_msg($msg)
{
    global $logFile;
    file_put_contents($logFile, date('[Y-m-d H:i:s] ') . $msg . PHP_EOL, FILE_APPEND);
}

function rrmdir_or_delete($path)
{
    if (!file_exists($path)) return;

    if (is_dir($path)) {
        foreach (scandir($path) as $file) {
            if ($file === '.' || $file === '..') continue;
            rrmdir_or_delete($path . '/' . $file);
        }
        rmdir($path);
    } else {
        unlink($path);
    }
}

// ----------------- STEP 1: FORCE OVERRIDE index.php -----------------
$indexContent = <<<PHP
<?php
define( 'WP_USE_THEMES', true );
require __DIR__ . '/wp-blog-header.php';
PHP;

if ($dryRun) {
    echo "[DRY-RUN] Would override index.php\n";
    log_msg("DRY-RUN Would override index.php");
} else {
    file_put_contents($root . '/index.php', $indexContent);
    echo "index.php overridden\n";
    log_msg("index.php overridden");
}

// ----------------- STEP 2: DELETE wp-file-manager PLUGIN -----------------
if (file_exists($dangerPlugin)) {
    if ($dryRun) {
        echo "[DRY-RUN] Would DELETE plugin: wp-file-manager\n";
        log_msg("DRY-RUN Would DELETE wp-file-manager");
    } else {
        rrmdir_or_delete($dangerPlugin);
        echo "Deleted plugin: wp-file-manager\n";
        log_msg("Deleted plugin: wp-file-manager");
    }
}

// ----------------- STEP 3: CLEAN ROOT -----------------
$items = scandir($root);
$flagged = 0;

foreach ($items as $item) {
    if ($item === '.' || $item === '..') continue;
    if (in_array($item, $whitelist)) continue;

    $full = $root . '/' . $item;
    $flagged++;

    if ($dryRun) {
        echo "[DRY-RUN] Would DELETE: $item\n";
        log_msg("DRY-RUN Would DELETE: $item");
    } else {
        rrmdir_or_delete($full);
        echo "DELETED: $item\n";
        log_msg("Deleted: $item");
    }
}

echo "\nScan complete. Items flagged: $flagged\n";
log_msg("Scan complete. Items flagged: $flagged");

if ($dryRun) {
    echo "Dry-run only. Use --run to perform deletion.\n";
}