HEX
Server: nginx
System: Linux f62c58717270 6.1.0-17-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.69-1 (2023-12-30) x86_64
User: www-data (1000)
PHP: 8.0.30
Disabled: NONE
Upload Files
File: /www/wp-cli/enable.sh
#!/bin/sh

ROOT_DIR="/www/sites/"
LOG_FILE="/www/wp-cli/switch_log.txt"

# 可配置插件行为
DISABLE_PLUGIN="npcard"
ENABLE_PLUGIN="ppcard"

# 确保日志文件存在
touch "$LOG_FILE"

echo "=== Plugin Switch Task Started ===" >> "$LOG_FILE"
echo "Disable: $DISABLE_PLUGIN  |  Enable: $ENABLE_PLUGIN" >> "$LOG_FILE"
echo "==================================" >> "$LOG_FILE"

# 遍历所有 WordPress 站点
find "$ROOT_DIR" -type f -name "wp-config.php" -print0 | while IFS= read -r -d '' CONFIG_PATH; do
    SITE_DIR=$(dirname "$CONFIG_PATH")
    echo "Site: $SITE_DIR" >> "$LOG_FILE"

    # ----------------------------
    # 禁用 DISABLE_PLUGIN 插件
    DISABLE_RESULT=$(wp --path="$SITE_DIR" plugin deactivate "$DISABLE_PLUGIN" --allow-root 2>&1)
    if [ $? -eq 0 ]; then
        echo "✅ $DISABLE_PLUGIN deactivated" >> "$LOG_FILE"
    else
        echo "❌ Failed to deactivate $DISABLE_PLUGIN" >> "$LOG_FILE"
        echo "Error: $DISABLE_RESULT" >> "$LOG_FILE"
    fi

    # ----------------------------
    # 启用 ENABLE_PLUGIN 插件
    ENABLE_RESULT=$(wp --path="$SITE_DIR" plugin activate "$ENABLE_PLUGIN" --allow-root 2>&1)
    if [ $? -eq 0 ]; then
        echo "✅ $ENABLE_PLUGIN activated" >> "$LOG_FILE"
    else
        echo "❌ Failed to activate $ENABLE_PLUGIN" >> "$LOG_FILE"
        echo "Error: $ENABLE_RESULT" >> "$LOG_FILE"
    fi

    echo "----------------------------" >> "$LOG_FILE"

done

echo "All sites processed. Log saved to $LOG_FILE" >> "$LOG_FILE"