Create CSS and JavaScript Tokens in QCDR

Reusable CSS/JavaScript output types, eligible output contexts, protected-area interaction, ordering, browser-side effects, and safe testing.

This guide follows the accepted QC Dynamic Replacer 1.1.05 implementation and applies to Max / All Access; token managers. Where older manuals or walkthrough wording differs from the current source or the accepted keyless-entitlement behavior, the current implementation takes precedence.

Before You Begin

  • Use a stable lowercase Token name and understand where the placeholder will appear.
  • Keep new or high-impact Tokens Draft/Disabled until tested.
  • Check dependency and tier requirements before nesting Tokens.

Step-by-Step Workflow

  1. Open Tokens and choose Create Token.
  2. Enter a stable Token name beginning with a letter and using lowercase letters/numbers/dots/underscores/hyphens.
  3. Add a Friendly name/description and keep the Token Draft or Disabled while building.
  4. Choose the output type and configure its purpose-built fields.
  5. Add targeting/schedule/technical gates only when the use case requires them.
  6. Save and test the {token.name} placeholder on a controlled frontend page.
  7. Enable the Token after output, targeting, tier, and dependency behavior are verified.

Current Token Capability Map

Token typePlanTypical use
Plain textBasicNames, labels, and reusable short messages.
HTML or formatted contentProTrusted reusable formatted output.
Image or mediaProJoomla Media/external image, alt text, dimensions/class/loading/link.
Link / button / URLProReusable destination with optional menu-item source and presentation.
Nested TokensProReuse supported Tokens inside another Token value.
Joomla content / dynamic dataMaxRequest-time site, menu, user, article, module, custom-field, and URL/context values.
CSSMaxReusable CSS output.
JavaScriptMaxReusable JavaScript output.
PHP codeMax + Manage PHP Tokens ACLServer-side PHP whose captured output becomes the Token value; no sandbox.

Reusable CSS/JavaScript output types

A current QCDR Rule can Replace, Remove, Insert Before, Insert After, Wrap using the required {match} placeholder, or Change a supported HTML attribute. Actions operate on the selected rendered match and inherit all page/audience/schedule/technical eligibility gates. Replacement output can be a direct value or an eligible QCDR Token. For Wrap and attribute changes especially, use private Preview on representative pages because malformed markup or an overly broad Find value can affect browser structure beyond the visually obvious text.

For Create CSS and JavaScript Tokens in QCDR, evaluate this against the exact frontend request that matters. A saved QCDR item can be valid in Administrator yet remain inactive because a different eligibility gate, dependency, permission, cache layer, or runtime safety boundary correctly prevents transformation. Keeping those concerns separate makes both testing and later support much easier.

Eligible output contexts

A current QCDR Rule can Replace, Remove, Insert Before, Insert After, Wrap using the required {match} placeholder, or Change a supported HTML attribute. Actions operate on the selected rendered match and inherit all page/audience/schedule/technical eligibility gates. Replacement output can be a direct value or an eligible QCDR Token. For Wrap and attribute changes especially, use private Preview on representative pages because malformed markup or an overly broad Find value can affect browser structure beyond the visually obvious text.

For Create CSS and JavaScript Tokens in QCDR, evaluate this against the exact frontend request that matters. A saved QCDR item can be valid in Administrator yet remain inactive because a different eligibility gate, dependency, permission, cache layer, or runtime safety boundary correctly prevents transformation. Keeping those concerns separate makes both testing and later support much easier.

Protected-area interaction

A current QCDR Rule can Replace, Remove, Insert Before, Insert After, Wrap using the required {match} placeholder, or Change a supported HTML attribute. Actions operate on the selected rendered match and inherit all page/audience/schedule/technical eligibility gates. Replacement output can be a direct value or an eligible QCDR Token. For Wrap and attribute changes especially, use private Preview on representative pages because malformed markup or an overly broad Find value can affect browser structure beyond the visually obvious text.

Ordering

A current QCDR Rule can Replace, Remove, Insert Before, Insert After, Wrap using the required {match} placeholder, or Change a supported HTML attribute. Actions operate on the selected rendered match and inherit all page/audience/schedule/technical eligibility gates. Replacement output can be a direct value or an eligible QCDR Token. For Wrap and attribute changes especially, use private Preview on representative pages because malformed markup or an overly broad Find value can affect browser structure beyond the visually obvious text.

Browser-side effects

A current QCDR Rule can Replace, Remove, Insert Before, Insert After, Wrap using the required {match} placeholder, or Change a supported HTML attribute. Actions operate on the selected rendered match and inherit all page/audience/schedule/technical eligibility gates. Replacement output can be a direct value or an eligible QCDR Token. For Wrap and attribute changes especially, use private Preview on representative pages because malformed markup or an overly broad Find value can affect browser structure beyond the visually obvious text.

How This Fits into QCDR

Tokens are reusable runtime values. When a Token is unavailable, QCDR intentionally preserves authored content rather than silently erasing it.

The safest operating pattern is to keep configuration narrow, use QCDR’s private diagnostics before broad activation when your tier permits them, and preserve Joomla Administrator as the recovery surface. Because QCDR changes the rendered response rather than source files, a correctly disabled or bypassed runtime path should expose the underlying Joomla output again without requiring a source-file rollback.

Verify the Result

  • The Token resolves where it is eligible and preserves authored content where it is intentionally unavailable.
  • Reference/dependency behavior is understood before deleting or downgrading a Token.
  • Reload the real frontend request instead of relying only on the saved Administrator form.
  • Check Joomla/CDN cache effects if the result is request-specific.

Common Mistakes to Avoid

  • Assuming an unavailable Token should become an empty string; QCDR often preserves the original placeholder or Rule match intentionally.
  • Trusting forwarded client-IP headers without restricting which proxy/CIDR is allowed to supply them.
  • Changing several gates at once during troubleshooting, which makes the actual cause difficult to identify.
  • Testing only while signed in as Super User when ordinary users/guests are the intended audience.
  • Skipping a recovery plan before enabling a site-wide HTML, JavaScript, protected-area, or PHP-backed change.

Troubleshooting

  • If nothing changes, confirm the package-owned System plugin is enabled, the relevant Live Processing switch is on, and the item is eligible for the current Effective tier.
  • If targeting appears wrong, inspect page/menu/URL, extension, audience, schedule, IP, technical conditions, and protected-region behavior as separate gates.
  • If a Token-backed Rule preserves the original match, troubleshoot the Token dependency/readiness before changing the Find value.
  • If behavior differs between browsers/users, clear or bypass relevant Joomla/full-page/CDN caches and compare request context.
  • If private Preview/Discovery fails, start a fresh authorized same-site session and confirm the Joomla ACL action as well as the product tier.

Operational Best Practice

Make runtime changes deliberately: use a narrow scope first, keep broad Rules Draft or Disabled until tested, preserve the independent Rule/Token emergency switches, and record the QCDR version plus the exact Rule/Token and affected URL when handing a problem to another administrator. For high-impact HTML, protected-region, JavaScript, dynamic-data, or PHP work, test representative anonymous and authenticated requests and review caching before expanding scope.


Community Discussion

Want to compare workflows, share practical examples, or discuss how other administrators use this QCDR feature? Visit the QC Dynamic Replacer Community. For private support, bug reports, account-specific entitlement problems, or feature requests, use the QuantaCade support system.