WP Manifestindependent plugin directory
manifest / ecommerce / product-personalization-for-woocommerce

Personalizare Produs

A powerful WordPress plugin that adds customizable text and image personalization fields to WooCommerce product pages, perfect for businesses selling customizable products like wallets, bags, accessories, and more.

by Buhaescu Gabriel · github.com/buhaescugabriel/product-personalization-for-woocommerce

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/buhaescugabriel/product-personalization-for-woocommerce/archive/refs/heads/main.zip

A powerful WordPress plugin that adds customizable text and image personalization fields to WooCommerce product pages, perfect for businesses selling customizable products like wallets, bags, accessories, and more.

Features

📝 Text Personalization

  • Customizable character limit (1-500 characters)
  • Real-time character counter with color indicators
  • Custom placeholder text
  • Adjustable field width and border thickness
  • Optional descriptive text below input field
  • Support for custom fonts, colors, and sizes

🖼️ Image Upload

  • Support for JPG, PNG, GIF, HEIC, and HEIF formats
  • Configurable maximum file size (1-50MB)
  • AJAX-based upload with progress indicators
  • Image preview with customizable size
  • One-click image removal
  • Custom upload button styling

🎨 Extensive Customization Options

  • Title Customization: Custom title, color, font family, and font size
  • Category-Based Texts: Display different subtitle texts based on product categories
  • Button Customization: Custom text, text color, background color, font, and font size
  • Field Requirements: Make text and/or image fields required or optional
  • Responsive Design: Mobile-friendly interface

🛒 WooCommerce Integration

  • Fully compatible with WooCommerce cart and checkout
  • HPOS (High-Performance Order Storage) compatible
  • Cart and checkout blocks support
  • Personalization data displayed in cart, checkout, and order details
  • Images stored in WordPress media library

Requirements

  • WordPress 5.8 or higher
  • WooCommerce 5.0 or higher
  • PHP 7.4 or higher

Installation

Via WordPress Admin

  1. Download the latest release as a ZIP file
  2. Navigate to PluginsAdd New in WordPress admin
  3. Click Upload Plugin and select the ZIP file
  4. Click Install Now and then Activate

Manual Installation

  1. Download the plugin files
  2. Upload the product-personalization folder to /wp-content/plugins/
  3. Activate the plugin through the Plugins menu in WordPress
  4. Navigate to Campuri produs in the admin menu to configure settings

Via GitHub

cd wp-content/plugins/
git clone https://github.com/yourusername/product-personalization.git

Configuration

After activation, configure the plugin via Campuri produs in the WordPress admin menu.

Main Settings

  • Text Field Required: Make the text personalization field mandatory
  • Image Field Required: Make the image upload field mandatory
  • Maximum Characters: Set the character limit for text input (1-500)
  • Maximum Image Size: Set the maximum upload size in MB (1-50)

Appearance Settings

  • Title: Custom title displayed above personalization fields
  • Title Color: Color picker for title text
  • Title Font: Choose from 12 font families
  • Title Font Size: Set title size in pixels (10-100px)
  • Category-Based Texts: Define different subtitle texts based on product categories
    • Format: category-slug|Text to display
    • Use default|Text for products without specific category text
  • Subtitle Color: Color picker for subtitle text
  • Subtitle Font: Font family for subtitle
  • Subtitle Font Size: Subtitle size in pixels (10-100px)

Text Field Styling

  • Field Width: Set input width as percentage (10-100%)
  • Border Width: Border thickness in pixels (0-10px)
  • Placeholder Text: Custom placeholder text
  • Description Text: Optional text displayed below input field
  • Description Color: Color for description text
  • Description Font Size: Size in pixels (8-30px)

Image Field Styling

  • Preview Size: Maximum width for uploaded image preview (50-500px)
  • Button Text: Custom text for upload button
  • Button Text Color: Color for button text
  • Button Background Color: Button background color
  • Button Font: Font family for button text
  • Button Font Size: Button text size in pixels (10-30px)

Usage

For Store Administrators

  1. Navigate to Campuri produs in WordPress admin
  2. Configure field requirements and styling options
  3. Set up category-based texts if needed
  4. Customize the upload button appearance
  5. Save settings

For Customers

  1. Visit any product page
  2. Enter desired personalization text (if enabled)
  3. Upload a custom image (if enabled)
  4. Add product to cart
  5. Personalization data will be visible in cart, checkout, and order confirmation

Category-Based Text Example

default|Upload your photo by clicking the button below
wallets|Personalize your wallet with your photo
bags|Add a unique design to your bag
accessories|Make this accessory special

Technical Details

File Structure

product-personalization/
├── product-personalization.php    # Main plugin file
├── assets/
│   ├── css/
│   │   └── styles.css            # Frontend styles
│   └── js/
│       └── script.js             # Frontend JavaScript
└── README.md

Hooks & Filters

The plugin integrates with WooCommerce using the following hooks:

  • woocommerce_before_add_to_cart_button - Display personalization fields
  • woocommerce_add_to_cart_validation - Validate required fields
  • woocommerce_add_cart_item_data - Add personalization data to cart
  • woocommerce_get_item_data - Display data in cart
  • woocommerce_checkout_create_order_line_item - Save to order
  • woocommerce_order_item_display_meta_value - Format order meta display

AJAX Endpoints

  • upload_personalization_image - Handles image uploads

Database

Settings are stored in WordPress options table with the prefix product_personalization_

Changelog

Version 2.3.1 (2026-01-10)

  • Added support for HEIC and HEIF image formats
  • Full button customization (text, colors, font, size)
  • Category-based subtitle texts
  • Enhanced styling options for all elements

Version 2.2.0

  • Added image preview size customization
  • Fixed character counter dynamic limit
  • Improved cache busting for assets
  • Text field description support

Version 2.1.0

  • Added title and subtitle customization
  • Custom fonts and colors support
  • Text field width and border customization
  • Placeholder text customization

Version 2.0.0

  • Complete redesign with advanced customization
  • HPOS compatibility
  • Cart and checkout blocks support

Version 1.0.0

  • Initial release
  • Basic text and image personalization

Support

For support, please open an issue on GitHub or contact the author.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This plugin is licensed under the GPL v2 or later.

Author

Buhaescu Gabriel

Credits

Built with ❤️ for WooCommerce store owners who want to offer personalized products to their customers.