Prv8 Shell
Server : Apache
System : Linux vps-1386233.fundacionavanta.org 3.10.0-1160.119.1.el7.tuxcare.els2.x86_64 #1 SMP Mon Jul 15 12:09:18 UTC 2024 x86_64
User : grupobalcacom ( 1010)
PHP Version : 7.4.33
Disable Function : NONE
Directory :  /home/grupobalcacom/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/grupobalcacom/limpiar_wp.sh
#!/bin/bash

set -e

if [ -z "$1" ]; then
    echo "Uso: $0 /ruta/a/wordpress"
    exit 1
fi

WP_PATH="$1"

if [ ! -f "$WP_PATH/wp-config.php" ]; then
    echo "No se encontró wp-config.php en $WP_PATH. ¿Es una instalación válida de WordPress?"
    exit 1
fi

WP_PATH=$(realpath "$WP_PATH")
BACKUP_DIR="$HOME/backups_wp"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_PATH="$BACKUP_DIR/$(basename "$WP_PATH")-$TIMESTAMP"

mkdir -p "$BACKUP_DIR"

echo "📦 Creando respaldo en: $BACKUP_PATH"
rsync -a "$WP_PATH/" "$BACKUP_PATH/"

cd "$WP_PATH"

VERSION=$(grep "\$wp_version =" wp-includes/version.php | cut -d "'" -f2 2>/dev/null)

if [ -z "$VERSION" ]; then
    echo "⚠️  No se pudo determinar automáticamente la versión de WordPress."
    read -p "🔢 Por favor ingresa manualmente la versión de WordPress (ej: 6.8.2): " VERSION
    if [ -z "$VERSION" ]; then
        echo "❌ No se proporcionó versión. Abortando."
        exit 1
    fi
fi

echo "🌐 Usando WordPress versión: $VERSION"
TMP_DIR=$(mktemp -d)

echo "⬇️ Descargando WordPress $VERSION..."
curl -s -o "$TMP_DIR/wordpress.tar.gz" "https://wordpress.org/wordpress-$VERSION.tar.gz"

echo "📂 Extrayendo..."
tar -xzf "$TMP_DIR/wordpress.tar.gz" -C "$TMP_DIR"

# Verificamos que exista wp-admin dentro de la carpeta extraída
if [ ! -d "$TMP_DIR/wordpress/wp-admin" ]; then
    echo "❌ Error: No se encontró wp-admin en el paquete descargado. Algo falló."
    exit 1
fi

/bin/cp wp-config.php "$TMP_DIR/wp-config.php"

echo "🔄 Reemplazando archivos del core..."
rm -rf wp-admin wp-includes
/bin/cp -R "$TMP_DIR/wordpress/wp-admin" "$WP_PATH"
/bin/cp -R "$TMP_DIR/wordpress/wp-includes" "$WP_PATH"

for FILE in $(ls "$TMP_DIR/wordpress" | grep -Ev 'wp-content|wp-config.php'); do
    /bin/cp -f "$TMP_DIR/wordpress/$FILE" "$WP_PATH/"
done

/bin/mv "$TMP_DIR/wp-config.php" "$WP_PATH/wp-config.php"

echo "🔐 Corrigiendo permisos..."
find "$WP_PATH" -type d -exec chmod 755 {} \;
find "$WP_PATH" -type f -exec chmod 644 {} \;
chmod 600 "$WP_PATH/wp-config.php"

echo "🧹 Limpiando archivos temporales..."
rm -rf "$TMP_DIR"

echo "✅ Proceso completado exitosamente."
echo "📁 Respaldo guardado en: $BACKUP_PATH"

haha - 2025