diff --git a/modules/website/wordpress/wordpress-cron-manager.sh b/modules/website/wordpress/wordpress-cron-manager.sh index 549e2cb..5bb5645 100755 --- a/modules/website/wordpress/wordpress-cron-manager.sh +++ b/modules/website/wordpress/wordpress-cron-manager.sh @@ -1585,16 +1585,16 @@ remove_disable_wpcron_from_config() { # Returns 0 on success, 1 on failure add_disable_wpcron_to_config() { local wp_config="$1" + local new_define="define('$WP_CRON_DISABLED_VAR', true);" # Try to insert before WordPress stop editing comment (proper convention) if grep -q "$WP_CONFIG_MARKER" "$wp_config" 2>/dev/null; then - sed -i '#'"$WP_CONFIG_MARKER"'#i\ -define('"'"''"$WP_CRON_DISABLED_VAR"''"'"', true);' "$wp_config" + # Use sed with @ delimiter to avoid escaping issues, insert before marker + sed -i.wpbak "@$WP_CONFIG_MARKER@i\\$new_define" "$wp_config" return 0 elif grep -q "$WP_EDIT_START" "$wp_config"; then # Fallback: if no stop editing found, add after opening PHP tag - sed -i '#'"$WP_EDIT_START"'#a\ -define('"'"''"$WP_CRON_DISABLED_VAR"''"'"', true);' "$wp_config" + sed -i.wpbak "@$WP_EDIT_START@a\\$new_define" "$wp_config" return 0 else # File format is unexpected