Contents
Overview
Refresh Article is an Article Generator feature that brings an existing Joomla article up to date for the current year. It works on articles you already have in Content > Articles — not new pieces — and is designed for evergreen content (how-tos, buying guides, comparisons, opinion pieces) that has aged.
The feature runs a five-stage pipeline: load the article, search the web for newer information, distil each source into key facts, ask the model to rework the article around those facts, and regenerate the banner. You see each stage live in an activity log. When the pipeline finishes, the preview pane shows the current and new banners side-by-side and loads the refreshed body into a full-width editor — tweak it, preview it as a page in a new tab, and apply when you’re happy.
Applying a refresh commits the change through Joomla’s ArticleModel, so every refresh creates a normal content-history version — you can roll back from the article’s Versions toolbar button at any time.
Live activity log
A sidebar log shows each pipeline stage as it runs, including per-source distillation, so you can see progress and diagnose stalls.

Preview before applying
Current and new banners shown side-by-side. The refreshed body loads into the standard Joomla editor and a one-click button opens it in a new tab styled like a page so you can sanity-check rendering.

Versioned + reversible
Apply commits through Joomla’s ArticleModel. Each refresh is a normal content-history entry; roll back from the article’s Versions button.

Before You Start
Refresh Article uses the same AI and search infrastructure as the rest of Article Generator. If you can already generate new articles, you can already refresh existing ones — no extra setup. If you are starting fresh, make sure the following are in place:
- Article Generator installed and configured. See Components > Article Generator > Options. You need:
- An OpenAI or Claude API key (for the model that does the actual rewriting).
- A search provider key (Serper, Tavily or Google Custom Search) so the pipeline can look up current sources.
- An article to refresh. Refresh works on any standard Joomla article — you do not need to have generated it with Article Generator first. The best candidates are evergreen pieces that mention dated material (old prices, retired products, “in 2023”-style framing, deprecated tools).
- A reasonable PHP execution window. Compose can take 60–240 seconds. If you are on shared hosting, check that PHP’s
max_execution_timeand your host’s FPMrequest_terminate_timeoutallow that long. See Troubleshooting below if you hit a server timeout.
Getting Started
Open Refresh Article
Navigate to Components > Article Generator > Refresh Article. Click the article picker and choose any article from your Joomla content — it uses the standard Joomla modal article picker.
The current title, banner controls and editor note fields load alongside the article body.

Generate the preview
Optionally add source URLs and an editor’s note (see Editor Controls below), then click Generate Preview. The activity log fills in stage by stage.
During the run the rest of the page collapses out of focus so you can watch the log. A “please wait” banner reminds you the call may take a minute or two.

Review and apply
The current and new banners appear side-by-side at the top of the preview pane. The refreshed body loads into the full-width Joomla editor below. Use Preview refreshed body to see the draft styled as a page in a new tab, or Open original article to compare against the live version. Click Apply refresh in the toolbar when you’re happy.
If you are not ready, click Save draft instead — the editor state is stored against the article and shown in the “Drafts in progress” list.

The Refresh Pipeline
Generate Preview runs five stages in sequence. Each stage updates the activity log as it completes; you can also open the Diagnostics disclosure to inspect what was sent and received.
- Load article — pulls the existing article from
#__content, includingintrotext,fulltextand the current banner preferences for this article. - Search for updates — runs a targeted web query ("{title} {year} latest") through your configured search provider. Anything you put in the source URLs field is treated as additional sources; if you supply enough URLs the pipeline can skip the search step entirely.
- Distil sources into facts — one AJAX call per source. For each, the model extracts a short KEY FACTS list of new model names, dated statistics, recent events and anything else worth pulling into the rewrite. Per-source calls mean you see progress instead of one long wait.
- Compose refreshed body — the main rewrite. The model receives the existing article, the distilled facts, and your editor’s note, and returns a substantially reworked HTML body with current framing, updated references and at least one section on recent developments.
- Regenerate banner — renders a new banner using the chosen icon and theme to a staged preview path. The live banner only updates when you click Apply refresh, at which point the staged file is simply promoted to the live path — no second AI call.
The activity log makes this distinction explicit: the preview pipeline shows Regenerate banner, and the apply pipeline shows Promote staged banner. Apply re-uses what was generated during preview; it does not re-run the model or re-render the banner.
Editor Controls
Reviewing the refreshed draft
Two buttons sit above the editor once the preview is ready:
- Open original article — opens the live Joomla article in a new tab. Useful for tab-to-tab comparison while the editor stays focused on the draft.
- Preview refreshed body — opens the current editor content (including any tweaks you have just made) in a new tab styled with Bootstrap typography. As close to “Joomla article preview” as we can get without saving the draft into
#__contentfirst — Joomla’s own preview can only render saved articles.
Source URLs
Paste one URL per line into the Source URLs textarea. The pipeline fetches each one and includes it in the distil stage alongside (or instead of) the automatic web search results. Use this when you know the canonical updated reference for a topic.
Editor’s note
A short free-text instruction passed to the Compose stage. Use it to steer the rewrite: “emphasise the price changes”, “remove references to the discontinued model”, “keep the tone informal”. Treat it as a one-line brief for the editor doing the rewrite, not a list of edits to make.
Banner icon and theme
Pick a Font Awesome icon and a colour theme for the new banner. Your choice is remembered per-article — the next refresh on the same article uses the previous selection automatically. Cancelling or discarding does not change the live banner; only Apply does.
Cheap summariser (optional)
In Components > Article Generator > Options, enable Cheap summariser to use a smaller, faster model (GPT-4o Mini for OpenAI, Claude Haiku for Claude) for the per-source distil stage. The main Compose call still uses your configured model. Typical savings: roughly 25% of a refresh’s time and cost.
Max tokens
If you regularly hit server-side timeouts, lower max_tokens in the provider settings (4000 is a good middle-ground; 8000 is the default and produces longer rewrites). This caps the rewrite length but is the most reliable way to keep Compose comfortably inside a shared host’s execution window.
Drafts & Versioning
Save draft
Click Save draft in the toolbar to persist the current editor state, banner choice and source-URL list against the article without touching the live content. Drafts appear in the Drafts in progress list on the Refresh view, so unfinished work is easy to find across articles.
Apply refresh
Apply commits the refreshed body through Joomla’s ArticleModel and promotes the staged banner to the live banner path. Two consequences worth knowing:
- Joomla creates a normal content-history version — roll back from the article’s Versions toolbar button.
- Standard content-save events fire, so any plugin that listens (SEO, sitemap regeneration, cache busting, social posters) runs normally.
Discard preview
Discards the staged preview and clears any draft for the article. The live article and banner are untouched.
New
Closes the current refresh and returns to the article picker so you can refresh a different article.
Tips for Better Refreshes
- Pick evergreen pieces, not news. Refresh works best on how-tos, buying guides, comparisons and opinion pieces. News stories that report a moment in time should be left alone or rewritten manually.
- Supply your own source URLs for technical topics. Web search can miss canonical updates (vendor changelogs, official documentation). Paste the URL of the current reference and Refresh treats it like a hand-picked source.
- Use the editor’s note to set direction, not detail. A short prompt (“focus on the iPad lineup, drop iPhone references”) shapes the whole rewrite. A long list of edits tends to be ignored or applied unevenly.
- Inspect the similarity figure. ≥97% means the model didn’t engage with the source material. ≤60% usually means it went too far — review carefully before applying.
- Keep one tab open and avoid navigating away during Compose. The activity log streams from the server; leaving the page mid-run cancels the stage you’re on (although the previous stages survive as a draft).
- Re-run after applying when needed. Refresh is non-destructive: you can refresh the same article again, and the second pass will see the now-current text. Useful when a big topic shift happens mid-year.
Troubleshooting
This means the server returned an HTML page instead of JSON — typically a server-level timeout or 500 error page. From version 3.4.5 onwards the activity log surfaces the real cause directly (“Server returned a non-JSON response (HTTP X)”) so you can act on it.
Most common fix: lower max_tokens in the AI provider settings to 4000. If you have shell access on the host, the proper fix is to raise PHP’s max_execution_time and the FPM request_terminate_timeout to at least 600 seconds. On shared hosting, contact your host with that wording.
images/banners/ and clear any front-end image cache.#__artigen_article_refresh_drafts and are tied to the article id. If a draft will not load, open the article picker, pick the article again, and either Discard preview to clear it or Generate Preview to overwrite it with a fresh run.Get support
Contact us
Questions, bug reports, feature requests — get in touch.
- Website: multizone.co.uk
- Email:
This email address is being protected from spambots. You need JavaScript enabled to view it. - In-app help: Each Multizone component has a setup checklist on its dashboard and contextual descriptions on every form field.
What support covers
All Multizone extensions are freely downloadable as trials.
- Trial — community support via the documentation and changelog.
- Standard / Premium / Enterprise — direct email support; response priority and depth scale with tier.
Documentation and changelogs for every extension live at multizone.co.uk/extensions.