Skip to content

Conversation

@dkohn1337
Copy link

Summary

Author: Dor Kohn
Context: Product Manager Home Assignment

This PR improves the connection string handling in the WordPress plugin setup wizard to prevent common copy-paste errors that cause connection failures.

Problem

Users frequently encounter "Incorrect connection string" errors during initial setup due to:

  1. Angle bracket placeholders: The Cloudinary dashboard shows cloudinary://<your_api_key>:<your_api_secret>@<cloud_name>. Users copy this literally, including the <> brackets, resulting in a cryptic error with no guidance.

  2. CLOUDINARY_URL= prefix: The dashboard's "Environment variable" format includes CLOUDINARY_URL= prefix. Users must manually remove this, but the error message doesn't explain why it fails.

  3. Inconsistent handling: The wizard REST endpoint and settings page handle connection strings differently, creating unpredictable behavior.

Solution

  1. Added normalize_cloudinary_url() method - Centralizes URL preprocessing:

    • Trims whitespace and surrounding quotes
    • Strips CLOUDINARY_URL= prefix automatically
    • Applied consistently across all connection flows
  2. Added angle bracket detection - Returns a helpful error message:

    "Your connection string contains angle brackets (< or >). Replace the placeholder values like <your_api_key> with your actual credentials."

  3. Updated regex - Now supports cloud names with underscores, hyphens, and numbers.

Testing

  1. Paste cloudinary://<api_key>:<api_secret>@cloud → Shows angle bracket error
  2. Paste CLOUDINARY_URL=cloudinary://123:abc@mycloud → Auto-strips prefix, attempts connection
  3. Paste valid credentials with prefix → Connects successfully

Files Changed

  • php/class-connect.php - Core connection handling logic

…istakes

Author: Dor Kohn
Context: Product Manager Home Assignment

- Add normalize_cloudinary_url() method to handle CLOUDINARY_URL= prefix
- Add angle bracket detection with helpful error message
- Update regex to support cloud names with underscores/hyphens/numbers
- Apply consistent normalization across wizard, settings, and upgrade flows
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant