docs: update README and CHANGELOG for v1.0.0 release
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Blocked by required conditions
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Blocked by required conditions
Joomla: Extension CI / PHPStan Analysis (pull_request) Blocked by required conditions
Generic: Repo Health / Site Health (push) Has been skipped
Generic: Repo Health / Access control (push) Successful in 1s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Generic: Repo Health / Access control (pull_request) Successful in 1s
Joomla: Extension CI / Release Readiness Check (pull_request) Failing after 3s
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Successful in 4s
Joomla: Extension CI / Lint & Validate (pull_request) Failing after 5s
Universal: Auto Version Bump / Version Bump (push) Failing after 4s
Universal: PR Check / Validate PR (pull_request) Successful in 6s
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Blocked by required conditions
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Blocked by required conditions
Joomla: Extension CI / PHPStan Analysis (pull_request) Blocked by required conditions
Generic: Repo Health / Site Health (push) Has been skipped
Generic: Repo Health / Access control (push) Successful in 1s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Generic: Repo Health / Access control (pull_request) Successful in 1s
Joomla: Extension CI / Release Readiness Check (pull_request) Failing after 3s
Universal: Secret Scanning / Gitleaks Secret Scan (pull_request) Successful in 4s
Joomla: Extension CI / Lint & Validate (pull_request) Failing after 5s
Universal: Auto Version Bump / Version Bump (push) Failing after 4s
Universal: PR Check / Validate PR (pull_request) Successful in 6s
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Generic: Repo Health / Release configuration (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Authored-by: Moko Consulting Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
+31
-11
@@ -8,17 +8,37 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### Removed
|
||||
- Removed deploy-manual.yml workflow — switching to Joomla update server method for extension distribution
|
||||
### 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
|
||||
- Initial package structure with component, system plugin, and content plugin
|
||||
- Open Graph meta tag injection via system plugin (`onBeforeCompileHead`)
|
||||
- Twitter/X Card meta tag support (Summary and Summary with Large Image)
|
||||
- Per-article OG fields in the article editor
|
||||
- Per-menu-item OG fields in the menu item editor
|
||||
- Auto-generation of OG tags from article title, description, and images
|
||||
- Site-wide default OG title and description plugin parameters
|
||||
- Discord embed color via `theme-color` meta tag (color picker in plugin config)
|
||||
- LinkedIn article tags: `article:published_time`, `article:modified_time`, `article:author`
|
||||
- `og:image:width` and `og:image:height` for faster social preview rendering
|
||||
- `onMokoOGAfterRender` event 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, WebPage, BreadcrumbList schemas (#6)
|
||||
- Social platform debugger quick links (Facebook, LinkedIn, Google) (#9)
|
||||
- Content type adapter architecture for K2, VirtueMart, HikaShop (#5)
|
||||
- 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 for viewing all OG records
|
||||
- Facebook App ID support
|
||||
- Database table `#__mokoog_tags` for storing custom OG data
|
||||
- Admin tag manager component with filtering, search, and pagination
|
||||
- Facebook App ID and Telegram channel support
|
||||
- Database table `#__mokoog_tags` with multilingual unique key
|
||||
|
||||
### Removed
|
||||
- Removed deploy-manual.yml workflow — using Joomla update server for distribution
|
||||
|
||||
@@ -6,35 +6,64 @@ Open Graph, Twitter Card, and social sharing meta tag management for Joomla 4/5/
|
||||
|
||||
## Overview
|
||||
|
||||
MokoJoomOpenGraph gives you full control over how your Joomla content appears when shared on Facebook, Twitter/X, LinkedIn, WhatsApp, and other social platforms. Set custom titles, descriptions, and images per article and menu item — or let the extension auto-generate them from your existing content.
|
||||
MokoJoomOpenGraph gives you full control over how your Joomla content appears when shared on Facebook, Twitter/X, LinkedIn, Discord, WhatsApp, Telegram, and other social platforms. Set custom titles, descriptions, and images per article, menu item, and category — or let the extension auto-generate them from your existing content.
|
||||
|
||||
## Features
|
||||
|
||||
- **Open Graph tags** — `og:title`, `og:description`, `og:image`, `og:url`, `og:type`, `og:site_name`
|
||||
### Social Meta Tags
|
||||
- **Open Graph tags** — `og:title`, `og:description`, `og:image`, `og:url`, `og:type`, `og:site_name`, `og:locale`
|
||||
- **Twitter/X Cards** — Summary and Summary with Large Image card types
|
||||
- **Per-article control** — Custom OG fields in the article editor
|
||||
- **LinkedIn** — `article:published_time`, `article:modified_time`, `article:author`
|
||||
- **Discord** — Custom embed color via `theme-color` meta tag
|
||||
- **Telegram** — `telegram:channel` for link previews
|
||||
- **Facebook** — `fb:app_id` support, `og:image:width`/`og:image:height` for instant previews
|
||||
|
||||
### Content Management
|
||||
- **Per-article control** — Custom OG fields tab in the article editor
|
||||
- **Per-menu-item control** — Custom OG fields in the menu item editor
|
||||
- **Auto-generation** — Automatically builds tags from article content, title, and images
|
||||
- **Default fallback image** — Site-wide default when no article image exists
|
||||
- **Admin tag manager** — View and manage all OG records from a central dashboard
|
||||
- **Facebook App ID** — Optional `fb:app_id` meta tag support
|
||||
- **Joomla 4/5/6** — Modern DI container architecture, Joomla coding standards
|
||||
- **Per-category control** — Category-level OG tag overrides
|
||||
- **Multilingual support** — Per-language OG data with language-aware fallback
|
||||
- **Auto-generation** — Builds tags from article content, title, and images automatically
|
||||
- **Site-wide defaults** — Default OG title, description, and image for all pages
|
||||
|
||||
### SEO
|
||||
- **SEO title override** — Custom `<title>` tag per page
|
||||
- **Meta description** — Per-page meta description control
|
||||
- **Robots directive** — Per-page noindex/nofollow settings
|
||||
- **Canonical URL** — Custom canonical URL overrides
|
||||
- **JSON-LD structured data** — Article, WebPage, BreadcrumbList, Organization schemas
|
||||
|
||||
### Admin Tools
|
||||
- **Tag manager dashboard** — View and manage all OG records centrally
|
||||
- **Batch generation** — Auto-generate OG tags for all existing articles
|
||||
- **CSV import/export** — Bulk manage OG data via CSV files
|
||||
- **SEO health badges** — Visual indicators for missing descriptions, long titles, noindex
|
||||
- **Debug links** — Quick links to Facebook Debugger, LinkedIn Inspector, Google Rich Results
|
||||
- **Live preview** — Real-time Facebook and Twitter/X card preview in the editor
|
||||
|
||||
### Developer Features
|
||||
- **REST API** — Full CRUD via Joomla Web Services (`/api/v1/mokoog/tags`)
|
||||
- **Content type adapters** — Extensible architecture for K2, VirtueMart, HikaShop
|
||||
- **Plugin event** — `onMokoOGAfterRender` for third-party plugins to add custom social tags
|
||||
- **OG image generator** — Text overlay on template backgrounds with auto-resize to 1200x630
|
||||
|
||||
## Installation
|
||||
|
||||
1. Download the latest `pkg_mokoog-*.zip` from [Releases](https://git.mokoconsulting.tech/MokoConsulting/MokoJoomOpenGraph/releases)
|
||||
2. In Joomla Administrator → Extensions → Install → Upload Package File
|
||||
3. The system plugin is enabled automatically on install
|
||||
3. All plugins are enabled automatically on install
|
||||
|
||||
## Configuration
|
||||
|
||||
Navigate to **Extensions → Plugins → System - MokoJoomOpenGraph** to configure:
|
||||
- Site name override
|
||||
- Default OG title and description (site-wide fallback)
|
||||
- Default fallback image
|
||||
- Twitter Card type and @username
|
||||
- Facebook App ID
|
||||
- Auto-generation behavior
|
||||
- Description length limit
|
||||
- Discord embed color
|
||||
- Telegram channel
|
||||
- Auto-generation, image resize, JSON-LD, and description length settings
|
||||
|
||||
## License
|
||||
|
||||
|
||||
Reference in New Issue
Block a user