Changelog

[Unreleased]

Added

  • Instagram carousel: Multi-image/video posts via Meta carousel container flow (up to 10 items)
  • Instagram Reels: Short-form video publishing via REELS media type
  • Instagram Stories: Image and video story publishing via STORIES media type
  • Instagram alt text: Alt text support for image containers
  • Nostr plugin: Full NIP-01 WebSocket relay publishing with BIP-340 Schnorr signatures (pure PHP, requires ext-gmp)
  • Nostr: Publishes kind-1 text note events to multiple relays with automatic failover
  • Nostr: Raw WebSocket client using stream_socket_client (no external dependencies)
  • Nostr: Public key derivation and event signing via secp256k1 elliptic curve math
  • Threads carousel: Support up to 20-item carousel posts via Threads API multi-container flow
  • Threads polls: Poll creation support via poll_options parameter (2-4 options)
  • Threads spoiler tags: Content warning / spoiler flag support for Threads posts
  • Threads text-only optimization: Simplified single-step flow for text-only posts without media

Fixed

  • Webservices plugin Joomla 6 compatibility — onBeforeApiRoute receives BeforeApiRouteEvent object, extract router via $event->getRouter()

[01.07.00] --- 2026-06-23

[01.07.00] --- 2026-06-23

Added

  • Full ACL system: 12 granular permissions in access.xml with permissions fieldset in config.xml
  • ACL enforcement: All controllers and views check permissions before allowing actions
  • MokoSuiteCrossHelper::getActions(): Centralized ACL helper for toolbar and view logic

Fixed

  • License warning: Removed duplicate from system plugin (install script already shows it)
  • Content plugin: Fixed func_get_arg crash when non-article content is saved (e.g. update sites, installer)

[01.05.00] --- 2026-06-23

[01.05.00] --- 2026-06-23

Added

  • Instagram plugin: Cross-post to Instagram via Meta Content Publishing API (2-step container flow)
  • YouTube plugin: Cross-post to YouTube via Data API v3 channel bulletins
  • Share Content panel: Per-article editor panel with platform-specific share text fields
  • New placeholders: {social}, {short}, {chat}, {email_subject}, {email_body} for platform-optimized templates
  • Share image control: Choose intro image, fulltext image, custom image, or no image per article
  • Mailchimp templates: Support Mailchimp saved templates with section injection, plus responsive email wrapper fallback
  • Delete from platforms: New MokoSuiteCrossDeleteInterface for removing cross-posted content from remote platforms
  • Delete support: Twitter, Mastodon, Bluesky, Facebook, LinkedIn, Telegram, Discord (7 of 38 plugins)
  • Auto-delete on unpublish: Component config option to delete from platforms when articles are unpublished or trashed
  • UTM auto-tagging: Append utm_source, utm_medium, utm_campaign to shared URLs with {platform} token support
  • Caption rotation: {random:opt1|opt2|opt3} placeholder picks a random option per post
  • {url_raw} placeholder: Clean article URL without UTM parameters
  • Mastodon enhancements: Visibility levels, content warnings, scheduled posts, polls, language tags
  • Bluesky threads: Auto-split long messages into reply chains at sentence boundaries
  • Bluesky link cards: External link card embeds with article title and description
  • Ntfy default server: Default server changed to ntfy.mokoconsulting.tech with configurable plugin params

Changed

  • Default templates: Updated to use platform-specific placeholders (social/short/chat/email) with graceful fallback

Fixed

  • Mailchimp: Fixed broken namespace placeholder in XML manifest
  • ConvertKit: Removed duplicate curl_setopt_array with undefined $token
  • Brevo: Removed duplicate curl_setopt_array with undefined $token and wrong auth header
  • Constant Contact: Removed duplicate curl_setopt_array
  • Mailchimp: Fixed campaign creation checking HTTP 200 instead of 2xx range
  • Medium: Fixed getUserId() returning array instead of string on error
  • Bluesky: Replaced md5() with hash('sha256', ...) for cache key
  • ServiceController: Exception details no longer exposed to client
  • License warning: Removed duplicate from system plugin -- install script already shows it with direct edit link

[01.04.01] --- 2026-06-21

[01.04.01] --- 2026-06-21

[01.04.00] --- 2026-06-21

Fixed

  • Package manifest: Added missing plg_system_mokosuitecross_events and plg_system_mokosuitecross_gallery to pkg_mokosuitecross.xml — these system plugins were not installed with the package
  • Cleanup: Removed old src/ directory (pre-rename cruft with mokojoomcross files)

[01.03.00] --- 2026-06-21

All notable changes to MokoSuiteCross will be documented in this file.

The format is based on Keep a Changelog.

S
Description
Cross-posting Joomla content to social media, email marketing, and chat platforms
https://mokoconsulting.tech/support/products/mokosuitecross Readme
14 MiB
Languages
PHP 98.5%
HTML 1.5%