bug: evergreen re-shares use incomplete template rendering -- missing placeholders #231

Open
opened 2026-06-29 14:20:11 +00:00 by jmiller · 1 comment
Owner

Description

QueueProcessor::renderEvergreenMessage() has its own template rendering implementation that duplicates CrossPostDispatcher::renderTemplate() but is missing several placeholders that were added later:

Missing from evergreen rendering:

  • {social} -- platform-optimized social text
  • {short} -- short-form text for Twitter/Bluesky
  • {chat} -- chat platform text
  • {email_subject} -- email subject line
  • {email_body} -- email body
  • {url_raw} -- clean URL without UTM
  • {url_short} -- shortened URL via Bitly/Rebrandly/YOURLS
  • {platform} -- service type token (for UTM)
  • {random:...} -- caption rotation
  • UTM auto-tagging

Also missing:

  • Does not use per-service templates from #__mokosuitecross_templates -- only uses the component-level default template
  • Does not apply link shortening
  • Does not apply UTM tagging

Fix

renderEvergreenMessage() should call CrossPostDispatcher::buildArticleMeta() and CrossPostDispatcher::renderTemplate() instead of duplicating the logic. This would automatically get all current and future placeholders.

Impact

  • Severity: Medium -- evergreen re-shares produce degraded messages compared to initial cross-posts
  • Affected file: source/packages/com_mokosuitecross/src/Helper/QueueProcessor.php
  • Affected method: renderEvergreenMessage() (lines 488-575)
## Description `QueueProcessor::renderEvergreenMessage()` has its own template rendering implementation that duplicates `CrossPostDispatcher::renderTemplate()` but is missing several placeholders that were added later: ### Missing from evergreen rendering: - `{social}` -- platform-optimized social text - `{short}` -- short-form text for Twitter/Bluesky - `{chat}` -- chat platform text - `{email_subject}` -- email subject line - `{email_body}` -- email body - `{url_raw}` -- clean URL without UTM - `{url_short}` -- shortened URL via Bitly/Rebrandly/YOURLS - `{platform}` -- service type token (for UTM) - `{random:...}` -- caption rotation - UTM auto-tagging ### Also missing: - Does not use per-service templates from `#__mokosuitecross_templates` -- only uses the component-level default template - Does not apply link shortening - Does not apply UTM tagging ## Fix `renderEvergreenMessage()` should call `CrossPostDispatcher::buildArticleMeta()` and `CrossPostDispatcher::renderTemplate()` instead of duplicating the logic. This would automatically get all current and future placeholders. ## Impact - **Severity**: Medium -- evergreen re-shares produce degraded messages compared to initial cross-posts - **Affected file**: `source/packages/com_mokosuitecross/src/Helper/QueueProcessor.php` - **Affected method**: `renderEvergreenMessage()` (lines 488-575)
Author
Owner

Branch created: feature/231-bug-evergreen-re-shares-use-incomplete-t

git fetch origin
git checkout feature/231-bug-evergreen-re-shares-use-incomplete-t
Branch created: [`feature/231-bug-evergreen-re-shares-use-incomplete-t`](https://git.mokoconsulting.tech/MokoConsulting/MokoSuiteCross/src/branch/feature/231-bug-evergreen-re-shares-use-incomplete-t) ```bash git fetch origin git checkout feature/231-bug-evergreen-re-shares-use-incomplete-t ```
Sign in to join this conversation.
No labels
Priority Medium
Type Feature
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: MokoConsulting/MokoSuiteCross#231