2.9 KiB
2.9 KiB
Changelog
All notable changes to MokoSuiteOpenGraph will be documented in this file.
The format is based on Keep a Changelog.
[Unreleased]
Security
- Fix JSON-LD XSS vulnerability via
</script>injection in content data (#34) - Add ACL permission checks to Batch and ImportExport controllers (#37)
- Add CSV import file type, MIME type, size, and content_type validation (#35)
- Fix multilingual data corruption in content plugin load/save (#41)
Added
- Site-wide default OG title and description plugin parameters
- Discord embed color via
theme-colormeta tag (color picker in plugin config) - LinkedIn article tags:
article:published_time,article:modified_time,article:author og:image:widthandog:image:heightfor faster social preview renderingonMokoOGAfterRenderevent for third-party plugin extensibility- Joomla Web Services API for OG tags — full CRUD at
/api/v1/mokoog/tags(#27) - Live social preview in article/menu editors (Facebook and Twitter/X card mockups) (#3)
- CSV import/export for bulk OG tag management (#12)
- OG image text overlay generator (#7)
- Multilingual OG tag support with per-language records (#11)
- JSON-LD structured data: Article, Product, WebPage, BreadcrumbList schemas (#6)
- Social platform debugger quick links (Facebook, LinkedIn, Google) (#9)
- MokoSuiteShop product OG tag support with pricing meta and JSON-LD Product schema (#53)
- WhatsApp and Telegram link preview optimization (#10)
- Category-level OG tag support (#4)
- Batch OG tag generation for existing articles (#1)
- Auto-resize OG images to 1200x630px with center crop (#2)
- SEO meta tag management: title, description, robots, canonical URL (#8)
- Per-article and per-menu-item OG fields in the editor
- Auto-generation of OG tags from article content, title, and images
- Default fallback image configuration
- Admin tag manager component with filtering, search, and pagination
- Facebook App ID and Telegram channel support
- Database table
#__mokoog_tagswith multilingual unique key
Changed
- Consolidated article DB queries into single cached lookup — 5 queries reduced to 1 (#38)
- Dynamic
og:image:width/og:image:heightfrom actual image dimensions instead of hardcoded (#39) - Replace GD
@error suppression withLog::add()warnings (#49) - TagTable::check() validates og_type, field lengths, canonical_url, robots directives (#43)
- CSV import/export now includes language column for multilingual support (#52)
- Batch process limit capped at 200 per request (#42)
- Canonical URL replacement uses public
getHeadData()/setHeadData()API (#39) - Language-aware queries on
loadOgDataByType()andloadOgDataByMenu()(#47)
Removed
- Removed dead ContentType adapters (K2, VirtueMart, HikaShop) — not targeting these platforms (#36)
- Removed
<updateservers>from package manifest — managed externally (#44) - Removed deploy-manual.yml workflow