SEO Add-on Changelog

All notable changes to the PodcasterPlus Blocks SEO Add-on plugin will be documented here.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.3.0] - 2025-12-04

Changed

  • Plugin Name Update - Updated plugin name from "PodcasterPlus Blocks" to "PodcasterPlus Blocks" for brand consistency across all documentation and code references
  • Documentation Improvements - Enhanced markdown formatting and code examples throughout README and setup guides

Technical Improvements

  • Standardized plugin naming conventions across all PHP classes and strings
  • Updated composer.json description to reflect new branding
  • Improved markdown table formatting in README.md
  • Enhanced code examples in documentation with consistent formatting

[1.2.1] - 2025-11-25

Fixed

  • Plugin Activation Error - Resolved a PHP syntax error that prevented the add-on from activating on some hosting environments
  • Code Formatter Compatibility - Refactored mixed PHP/HTML template code to use pure PHP output, preventing code formatters from introducing syntax errors

[1.2.0] - 2025-11-17

Added

  • GitHub Actions Release Workflow - Automated plugin release pipeline for streamlined deployment
  • Security Tests Workflow - Continuous security vulnerability scanning with GitHub Actions
  • Changelog Synchronization Workflow - Automated sync between CHANGELOG.md and release.json
  • PHPUnit Testing Framework - Complete testing infrastructure with WordPress function mocks
  • Security Test Suite - Comprehensive tests for SSRF, LFI, permission checks, and error handling
  • Changelog Update Script - Node.js script to programmatically update release.json
  • Composer Support - Full Composer integration with PSR-4 autoloading
  • Plugin Detector Class - Enhanced utility for detecting active WordPress plugins

Changed

  • Meta Generator - Improved output verification and comment handling
  • Schema Builder - Enhanced schema generation with comment wrappers for debugging
  • Integration Classes - Updated meta tag output checks across all SEO integrations
  • Version Checker - Improved compatibility validation with main plugin
  • Standalone Integration - Enhanced SEO output validation for schema and meta tags

Security

  • URL Validation - Implemented SSRF prevention with comprehensive URL validation
  • File Sanitization - Added LFI protection through file path sanitization
  • Permission Checks - Enhanced capability verification for all admin operations
  • Debug Endpoint Security - Secured debug endpoints with WP_DEBUG conditional access
  • RSS Feed Validation - Comprehensive security checks for feed inputs

Technical Improvements

  • Added .github/workflows/ directory with three automated workflows
  • Implemented PHPUnit 9.6 with Yoast PHPUnit Polyfills
  • Created WordPress function mocking system for isolated testing
  • Added security test script with detailed vulnerability coverage
  • Updated .gitignore for better development workflow
  • Enhanced Playwright session configuration
  • Updated package.json with test scripts and changelog automation

[1.1.2] - 2025-08-10

Added

  • Comment Wrappers for Schema - Added HTML comment markers for easier debugging of schema output
  • Playwright Session Configuration - Initial session management for E2E testing

Changed

  • Meta Tag Output Checks - Enhanced validation for all SEO integration classes
  • Schema Output Validation - Improved checks in standalone integration for schema and meta tags
  • License Validation - Streamlined bypass logic for development and testing
  • Package File Structure - Updated asset management configuration

Fixed

  • Meta Tag Comment Handling - Streamlined comment generation for meta tags
  • License Debugging - Commented out verbose debugging logic for cleaner logs

Technical Improvements

  • Enhanced meta tag output validation across all integration classes
  • Improved schema output verification in standalone mode
  • Refactored license validation for better development workflow
  • Updated package.json for improved asset management

[1.1.1] - 2025-08-08

Added

  • Plugin Detector Class - New utility class for improved plugin activation checks
  • Playwright Configuration - Initial E2E testing configuration for browser automation
  • Playwright Test Dependencies - Added Playwright and Node.js type definitions

Changed

  • Text Domain Loading - Updated to comply with WordPress 6.7 standards
  • License Checks - Deferred to prevent early text domain loading issues
  • Version Checking - Deferred until after initialization to prevent text domain conflicts
  • Cache Duration - Updated Integration Manager cache settings for better performance

Fixed

  • Text Domain Issues - Resolved early text domain loading problems in WordPress 6.7
  • Plugin Detection - Improved reliability of plugin activation checks

Technical Improvements

  • Added .gitignore rules for Playwright test results and cache
  • Updated pnpm-lock.yaml with latest Playwright and type definitions
  • Deferred hooks registration to comply with WordPress 6.7 requirements
  • Improved performance checks in Integration Manager

[1.1.0] - 2025-08-08

Added

  • AIOSEO Minimal Schema - Complementary PodcastEpisode schema output for All in One SEO
  • Rank Math Enhanced Integration - Detailed logging and schema improvements for Rank Math

Changed

  • Description Handling - All integrations now use unified prepare_description method
  • Integration Base - Made prepare_description method public for better extensibility
  • Post Type Checking - Simplified post type validation across integrations
  • Description Trimming Logic - Improved character limit handling for SEO descriptions

Fixed

  • Debug Output - Removed debug output from standalone integration for cleaner code
  • Admin Debug Handling - Improved Yoast integration debug output for administrators only
  • AIOSEO Compatibility - Removed schema enhancement methods causing compatibility issues

Technical Improvements

  • Streamlined description assignment across all SEO plugin integrations
  • Enhanced AIOSEO podcast schema integration with improved hooks
  • Updated post type option name for consistency
  • Refactored integration classes to use parent methods for better code reuse

[1.0.2] - 2025-08-07

Added

  • Apple Podcasts App ID Setting - New setting for Apple Podcasts app deep linking
  • Podcast Player Settings - Additional configuration options for podcast players
  • Direct Meta Tag Output - Yoast integration now supports direct meta tag output method
  • Structured Schema Entities - Enhanced podcast episode schema with proper entity structuring

Changed

  • Meta Generator Improvements - Streamlined audio metadata handling and Twitter Card generation
  • Yoast Integration Enhancements - Improved schema generation and debugging capabilities
  • Existing Tag Detection - Better detection of existing meta tags from other SEO plugins

Fixed

  • Settings Form JavaScript - Removed inline JavaScript for cleaner code separation

Technical Improvements

  • Enhanced schema generation for podcast episodes with structured data entities
  • Improved meta tag detection to prevent duplication
  • Streamlined audio metadata processing

[1.0.1] - 2025-08-07

Added

  • Complete Class Architecture - Implemented full modular class-based system with 17 new classes
  • Activator Class - Handles plugin activation tasks and dependency validation
  • Deactivator Class - Manages cleanup tasks on plugin deactivation
  • Episode Helper - Retrieves and caches podcast episode data efficiently
  • License Checker - Validates license compatibility with 5-minute caching
  • Meta Generator - Creates Open Graph and Twitter Card meta tags
  • Performance Monitor - Tracks operation timing with sub-20ms targets
  • Schema Builder - Generates JSON-LD PodcastEpisode structured data
  • SEO Add-on Core - Main orchestration class for all SEO functionality
  • Settings Handler - Manages settings with REST API endpoints
  • Version Checker - Ensures compatibility with main PodcasterPlus plugin
  • WP-CLI Commands - Command-line tools for cache management and testing
  • Integration Manager - Central hub for SEO plugin detection and coordination
  • Yoast SEO Integration - Enhances Yoast with podcast-specific schema
  • Rank Math Integration - Adds podcast support to Rank Math
  • All in One SEO Integration - Podcast schema for AIOSEO
  • Standalone Integration - Complete SEO output when no plugin detected
  • Integration Base - Abstract foundation for all SEO plugin integrations

Changed

  • Unified Add-on Registration - Simplified registration by removing external/internal distinctions
  • Settings Navigation - Updated SEO settings links to use hash routing
  • Enhanced Error Logging - Improved logging clarity and functionality

Fixed

  • Namespace Compatibility - Fixed WP_Error instantiation to use proper namespace
  • Cache Management - Episode data caches now clear only when object caching available
  • Settings Links - Corrected navigation links in Integration Manager and Activator

Technical Improvements

  • Added .distignore file to exclude development artifacts from distribution
  • Enhanced file path resolution for class loading
  • Added translations template (.pot file) for internationalization
  • Created JavaScript for AJAX settings management
  • Updated package.json file exclusions for cleaner distribution
  • Added comprehensive documentation (CLAUDE.md and GEMINI.md)
  • Integrated Task Master AI configuration files
  • Improved IDE helper file management

[1.0.0] - 2025-08-06

Added

  • Namespace Support - Introduced proper PHP namespacing (Podcaster_PlusSEO) for better code organization
  • Settings Interface - Complete admin settings interface with schema and meta tag controls
  • AJAX Settings Management - Real-time settings saving with REST API integration
  • Performance Metrics Dashboard - Visual performance monitoring in admin settings
  • SEO Plugin Detection - Automatic detection and display of active SEO plugins
  • Schema Control - Toggle for PodcastEpisode schema generation
  • Meta Tags Control - Toggle for Open Graph and Twitter Card generation (standalone mode)
  • Description Length Setting - Customizable meta description character limit (50-300)
  • Debug Information Panel - Comprehensive debug info when WP_DEBUG is enabled

Changed

  • Enhanced Plugin Description - Updated to reflect "Smart SEO integration with automatic schema generation"
  • Text Domain Update - Changed from podcaster-plus-seo-addon to podcaster-plus-seo
  • Frontend Registration - Removed admin-only restriction to enable frontend schema output
  • Namespace Compatibility - Updated all WordPress function calls for namespace compatibility

Technical Improvements

  • Refactored codebase to use namespaced classes for better organization
  • Prepared architecture for modular class-based implementation
  • Added plugin basename constant for better path management
  • Implemented proper namespace prefixing for WordPress hooks
  • Enhanced class loading system for future extensibility
  • Added placeholder for Settings_Handler, Integration_Manager, and Performance_Monitor classes
  • Improved initialization sequence with proper dependency checking

[0.1.0] - 2025-06-03

Changed

  • Code Formatting Improvements - Enhanced code formatting throughout the main plugin file for better readability and consistency
  • Standardized Indentation - Converted spaces to tabs for consistent code style following WordPress coding standards

Technical Improvements

  • Improved code maintainability with consistent formatting
  • Better adherence to WordPress PHP coding standards

[0.0.4] - 2025-06-03

Added

  • Initial plugin concept and foundation
  • Basic project structure and configuration
  • Early development framework
  • License validation with 5-minute caching to prevent API abuse
  • Support for both internal add-on and external plugin deployment modes
  • Settings tab registration system
  • Basic admin interface with add-on information display