recently a friends company website that is using Joomla was hacked. Since keeping the website always up to date is not of any priority, it ran an outdated version and I'd assume it could happen again in the future.

To make it less vulnerable I wondered if there is a way to generate static HTML out of a local Joomla installation? Reasoning behind it is, that the page is static anyway and the only reason for having a CMS seems to be to be able to change the content more easily.

Would this possible at all? Or would it be better to look at static html generators?


2 Answers 2


The "Static Content" project at: https://github.com/juliopontes/staticcontent does exactly what you are after although it looks like it may need to be updated for Joomla 3.5.

Alternatively, you could use Wget or HTTrack or similar to convert your Joomla website to HTML. Linux, Windows and OSX versions are available for both Wget and HTTrack. See the answers to https://serverfault.com/q/441584/270745 for more detailed instructions.

  • 1
    The 'static content' GitHub project has been 'In development' without a release for 5 years.
    – Robs
    Mar 30, 2018 at 8:45
  • 1
    Look at older commits. You'll see usable code there.
    – Mike
    Apr 30, 2018 at 18:50
  • Also see JoomlaPro Joom2Static commercial extension released in 2022 for Joomla 3 and Joomla 4. Dec 6, 2022 at 0:23

Following on from Neil's response I thought it might be worth including an example of using wget which has worked for me. Link to the approach documented here

wget \
 --recursive \
 --page-requisites \
 --html-extension \
 --convert-links \
 --restrict-file-names=windows \
 --domains your-domain.com \
  • 1
    Welcome to JSE and thank you for contributing. Having advice demonstrated/hardcoded into answers is valuable to researchers because it is not vulnerable to hyperlink-breakage and researchers don't have to leave this site to glean the information. Good on ya. Please take our tour and consider telling us about you and your Joomla journey in your Profile. Jun 17, 2020 at 22:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.