File: //www/wp-cli/check.sh
#!/bin/sh
ROOT_DIR="/www/sites/"
LOG_FILE="/www/wp-cli/npcard_check_log.txt"
# 确保日志文件存在
touch "$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"
# ----------------------------
# 查询 npcard 插件是否激活
NPCARD_ACTIVE=$(wp --path="$SITE_DIR" plugin is-active npcard --allow-root 2>&1)
if [ $? -eq 0 ]; then
echo "Plugin 'npcard' is active" >> "$LOG_FILE"
else
echo "Plugin 'npcard' is NOT active" >> "$LOG_FILE"
echo "Error details: $NPCARD_ACTIVE" >> "$LOG_FILE"
fi
# ----------------------------
# 查询 woocommerce_npcard_settings 配置
SETTINGS=$(wp --path="$SITE_DIR" option get woocommerce_npcard_settings --format=json --allow-root 2>&1)
if [ $? -eq 0 ]; then
echo "$SETTINGS" >> "$LOG_FILE"
else
echo "Failed to get 'woocommerce_npcard_settings'" >> "$LOG_FILE"
echo "Error details: $SETTINGS" >> "$LOG_FILE"
fi
echo "----------------------------" >> "$LOG_FILE"
done
echo "All sites checked. Log saved to $LOG_FILE" >> "$LOG_FILE"