FG Joomla to WordPress


This plugin migrates sections, categories, posts, images, medias and tags from Joomla to WordPress.

It has been tested with Joomla versions 1.5 through 3.9 and WordPress 5.5 on huge databases. It is compatible with multisite installations.

Major features include:

  • migrates Joomla sections as categories
  • migrates categories as sub-categories
  • migrates Joomla posts (published, unpublished and archived)
  • migrates Joomla web links
  • uploads all the posts media in WP uploads directories (as an option)
  • uploads external media (as an option)
  • modifies the post content to keep the media links
  • resizes images according to the sizes defined in WP
  • defines the featured image to be the first post image
  • keeps the alt image attribute
  • keeps the image caption
  • modifies the internal links
  • migrates meta keywords as tags
  • migrates page breaks
  • can import Joomla articles as posts or pages

No need to subscribe to an external web site.

Premium version

The Premium version includes these extra features:

  • migrates authors and other users with their passwords
  • migrates the navigation menus
  • SEO: migrates the meta description and the meta keywords
  • SEO: keeps the Joomla articles IDs or redirects Joomla URLs to the new WordPress URLs
  • compatible with Joomla 1.0 and Mambo 4.5 and 4.6 (process {mosimages} and {mospagebreak})
  • migrates Joomla 1.0 static articles as pages
  • migrates Joomla 2.5+ featured images
  • migrates Joomla 3.1+ tags
  • migrates Mambo data
  • migrates Elxis data (Joomla 1.0 fork)
  • ability to run the import automatically from the cron

Μπορείτε να αποκτήσετε την έκδοση Premium απο εδώ: https://www.fredericgilles.net/fg-joomla-to-wordpress/


The Premium version allows the use of add-ons that enhance functionality:

  • K2
  • EasyBlog
  • Flexicontent
  • Zoo
  • Kunena forum
  • sh404sef
  • JoomSEF
  • OpenSEF
  • WP-PostViews (keep Joomla hits)
  • JComments
  • JomComment
  • JDownloads
  • Joomlatags
  • Attachments
  • Rokbox
  • RokGallery
  • JoomGallery
  • PhocaDownload
  • PhocaGallery
  • Joom!Fish translations to WPML
  • JEvents events
  • Contact Manager
  • Docman
  • Virtuemart
  • JReviews
  • Mosets Tree
  • User Groups
  • WPML
  • Simple Image Gallery & Simple Image Gallery Pro
  • RSGallery
  • Community Builder
  • RSBlog
  • AllVideos
  • HikaShop

These modules can be purchased on: https://www.fredericgilles.net/fg-joomla-to-wordpress/add-ons/



  • English (default)
  • French (fr_FR)
  • Spanish (es_ES)
  • Italian (it_IT)
  • German (de_DE)
  • Russian (ru_RU)
  • Polish (pl_PL)
  • Bulgarian (bg_BG)
  • Brazilian (pt_BR)
  • Greek (el_EL)
  • other can be translated


  • Parameters screen


  1. Install the plugin in the Admin => Plugins menu => Add New => Upload => Select the zip file => Install Now
  2. Activate the plugin in the Admin => Plugins menu
  3. Run the importer in Tools > Import > Joomla (FG)
  4. Configure the plugin settings. You can find the Joomla database parameters in the Joomla file configuration.php
    Hostname = $host
    Port = 3306 (standard MySQL port)
    Database = $db
    Username = $user
    Password = $password
    Joomla Table Prefix = $dbprefix

Συχνές Ερωτήσεις

I get the message: “[fg-joomla-to-wordpress] Couldn’t connect to the Joomla database. Please check your parameters. And be sure the WordPress server can access the Joomla database. SQLSTATE[28000] [1045] Access denied for user ‘xxx’@’localhost’ (using password: YES)”

  • First verify your login and password to the Joomla database.
    If Joomla and WordPress are not installed on the same host:
  • If you use CPanel on the Joomla server, a solution is to allow a remote MySQL connection.
    • go into the Cpanel of the Joomla server
    • go down to Database section and click “Remote MySQL”
    • There you can add an access host (WordPress host). Enter the access host as the SOME-WEBSITE-DOMAIN-OR-IP-ADDRESS and click add host.
  • Another solution is to copy the Joomla database on the WordPress database:
    • export the Joomla database to a SQL file (with phpMyAdmin for example)
    • import this SQL file on the same database as WordPress
    • run the migration by using WordPress database credentials (host, user, password, database) instead of the Joomla ones in the plugin settings.

I get this error when testing the connection: “SQLSTATE[HY000] [2002] Connection refused” or “SQLSTATE[HY000] [2002] No such file or directory”

  • This error happens when the host is set like localhost:/tmp/mysql5d.sock
    Instead, you must set the host to be localhost;unix_socket=/tmp/mysql5d.sock

The migration stops and I get the message: “Fatal error: Allowed memory size of XXXXXX bytes exhausted” or I get the message: “Internal server error”

  • First, deactivate all the WordPress plugins except the ones used for the migration
  • You can run the migration again. It will continue where it stopped.
  • You can add: define('WP_MEMORY_LIMIT', '512M'); in your wp-config.php file to increase the memory allowed by WordPress
  • You can also increase the memory limit in php.ini if you have write access to this file (ie: memory_limit = 1G). See the increase memory limit procedure.

I get a blank screen and the import seems to be stopped

  • Same as above

The media are not imported

  • Check the URL field that you filled in the plugin settings. It must be your Joomla home page URL and must start with http://

The media are not imported and I get the error message: “Warning: copy() [function.copy]: URL file-access is disabled in the server configuration”

  • The PHP directive “Allow URL fopen” must be turned on in php.ini to copy the medias. If your remote host doesn’t allow this directive, you will have to do the migration on localhost.

Nothing is imported at all

  • Check your Joomla version. The Joomla 1.0 database has got a different structure from the other versions of Joomla. Importing Joomla 1.0 database is a Premium feature.

All the posts are not migrated. Why ?

  • The posts put in trash are not migrated. But unpublished and archived posts are migrated as drafts.
  • Some users reported that the Zend Framework causes an incomplete import. So, if all the data is not migrated, consider deactivating the Zend Framework during the migration.

I get the message: “Fatal error: Class ‘PDO’ not found”

  • PDO and PDO_MySQL libraries are needed. You must enable them in php.ini on the WordPress host.
    Or on Ubuntu:
    sudo php5enmod pdo
    sudo service apache2 reload

I get this error: PHP Fatal error: Undefined class constant ‘MYSQL_ATTR_INIT_COMMAND’

  • You have to enable PDO_MySQL in php.ini on the WordPress host. That means uncomment the line extension=pdo_mysql.so in php.ini

Does the migration process modify the Joomla site it migrates from?

  • No, it only reads the Joomla database.

I get this error: Erreur !: SQLSTATE[HY000] [1193] Unknown system variable ‘NAMES’

  • It comes from MySQL 4.0. It will work if you move your database to MySQL 5.0 before running the migration.

I get this error “Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM”

  • You must use at least PHP 5.3 on your WordPress site.

I get this error: SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client

  • It is a compatibility issue with your version of MySQL.
    You can read this post to fix it: http://forumsarchive.laravel.io/viewtopic.php?id=8667

None image get transferred into the WordPress uploads folder. I’m using Xampp on Windows.

  • Xampp puts the htdocs in the applications folder which is write protected. You need to move the htdocs to a writeable folder.

How to import content from one section as posts and another section as pages?

  • You can use the Convert Post Types plugin after the migration.

Do I need to keep the plugin activated after the migration?

  • No, you can deactivate or even uninstall the plugin after the migration (for the free version only).

Is there a log file to show the information from the import?

  • Yes since version 1.45.0. First you must put these lines in wp-config.php:
    define(‘WP_DEBUG’, true);
    define(‘WP_DEBUG_LOG’, true);
    And the messages will be logged to wp-content/debug.log.

How does the plugin handle Weblinks?

  • The plugin imports the Joomla web links to WordPress links managed by the Link Manager plugin: https://wordpress.org/plugins/link-manager/

My screen hangs because of a lot of errors in the log window

  • You can stop the log auto-refresh by unselecting the log auto-refresh checkbox

Don’t hesitate to let a comment on the forum or to report bugs if you found some.


14 Αυγούστου 2020
I purchased the premium version. After a few issues due to my lack of experience running a wordpress install on localhost, I managed to migrate a huge news magazine Joomla to WordPress. The customer support was outstanding. They followed me step by step with super detailed instructions. I totally recommend. Worth every penny.
10 Αυγούστου 2020
An absolutely good and usable plugin. The support is just great. I can only recommend the developer.
24 Ιουνίου 2020
Great plugin and better technical support. That saved me a lot of time.
11 Ιουνίου 2020
After tested and tried to migrated a joomla 2.5 to wordpress the only thing that happened was a real mess!!!!!! A)Products not appears at all nor pictures-information-titles-prices e.t.c. nothing at all the only thing that hapened is to create in woocomerce->products as much entries as in virtuemart with no information. B)Menus are not in right place but in a massive mess with articles from joomla and wordpress C)Articles and other information total mess. I didn't have many expectations from a free plugin but this is an insult, I was willing to buy the premium version if it was making at least a good jop.
1 Ιουνίου 2020
Highly recommend this plugin. I wanted to migrate about 85 articles and images from Joomla. The plugin is flexible enough that it allowed me to import just the content I needed. It has saved me countless hours of work. The support I received from the developer was top class and way above and beyond what I expected. Thorough, knowledgeable and very patient. Thanks
6 Μαΐου 2020
I was a bit dubious about how good this plugin would be but it worked brilliantly. No problems migrating an old (Joomla 2.5) website over to wordpress. Would recommend highly
Ανάγνωση όλων των 244 κριτικών

Συνεισφέροντες & Προγραμματιστές

“FG Joomla to WordPress” είναι λογισμικό ανοιχτού κώδικα. Οι παρακάτω έχουν συνεισφέρει στη δημιουργία του.


“FG Joomla to WordPress” έχει μεταφραστεί σε 1 γλώσσα. Thank you to the translators for their contributions.

Μεταφράστε το “FG Joomla to WordPress” στην γλώσσα σας.

Interested in development?

Περιηγηθείτε στον κώδικα , ανατρέξτε στο αποθετήριο SVN ή εγγραφείτε στο αρχείο καταγραφής αλλαγών μέσω RSS .

Σύνοψη αλλαγών


  • New: Check if we need the RokGallery add-on
  • Tested with WordPress 5.5.1


  • Compatible with WordPress 5.5
  • Fixed: Timezone was not the same between the start and the end time in the logs
  • Fixed: Links pointing to weblinks were wrong after modifying the internal links


  • New: Add an option to not generate the images thumbnails
  • New: Make the max_allowed_packet human readable
  • Change: Set the default media timeout to 20 seconds


  • New: Check if we need the PhocaDownload add-on


  • New: Display the PHP errors in the logs
  • New: Check if the Simple Image Gallery Pro plugin is used on Joomla
  • Tested with WordPress 5.4.2


  • Tested with WordPress 5.4.1


  • New: Check if the “Simple Image Gallery” plugin is installed
  • Fixed: Logs were not displayed
  • Tested with WordPress 5.4


  • Fixed: Media links with arguments were not imported


  • New: Add allow_url_fopen in the Debug Info
  • Fixed: Notice: Undefined index: REQUEST_SCHEME


  • Fixed: Prevent WordPress from breaking links containing ‘:’


  • Fixed: Logs were not displayed due to mod_security


  • New: Modify internal links which contain
  • Tweak: Add $image_description argument in the insert_attachment() method


  • New: Modify internal links which contain underscores
  • Fixed: Notice: date_default_timezone_set(): Timezone ID ” is invalid


  • Fixed: Some internal links containing anchors were badly modified


  • Tested with WordPress 5.3.2


  • Fixed: Featured images not imported


  • Tested with WordPress 5.3


  • Fixed: Wrong number of imported media displayed
  • Fixed: Wrong number of imported tags displayed
  • Tested with WordPress 5.2.4


  • New: Check if JDownloads is used
  • Tweak: Refactoring


  • Fixed: Logs were not displayed if the URL is wrong in the WordPress general settings


  • New: Download the media even if they are redirected
  • Fixed: Warning: Invalid argument supplied for foreach()
  • Fixed: Copying to clipboard wasn’t working if something was already selected


  • New: Add the max_allowed_packet in the Debug Info tab


  • New: Add an help tab
  • New: Add a debug info tab
  • Tested with WordPress 5.2.3


  • Fixed: [ERROR] Error:SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘c.state’ in ‘where clause’
  • Fixed: Update the pt_BR translation


  • Fixed: Notice: Undefined variable: sql
  • Fixed: the featured image was not removed from the content on Mambo databases


  • Tested with WordPress 5.2.2


  • Tested with WordPress 5.2.1



  • Tested with WordPress 5.1.1


  • Tested with WordPress 5.0.3


  • New: Allow to download media from sites with a non valid SSL certificate
  • Fixed: Some NGINX servers were blocking the images downloads
  • Tested with WordPress 5.0.2


  • New: Cache database results to improve import speed
  • New: Add hooks
  • Tested with WordPress 5.0


  • Fixed: Images with HTML entities in the scr attribute were not imported


  • Tested with Joomla 3.9


  • New: Generate the audio and video meta data (ID3 tag, featured image)


  • Tweak: Rename WPML by Internationalization


  • Tested with WordPress 4.9.8


  • Fixed: Images not imported when the “data-src” attribute is used


  • Tweak: Add the function wc_upload_dir()
  • Tested with WordPress 4.9.6


  • New translation: Greek (thanks to Kostas A.)
  • Fixed: The media containing “+” in their filename were not imported


  • Fixed: Notice: Undefined index: date


  • New: Check if Community Builder 2.x is installed
  • Tested with WordPress 4.9.5


  • New: Check if we need the HikaShop module
  • Change the URL of the WP Filesystem SSH2 plugin
  • Tweak: Change the scope of the upload_dir() method


  • New: Add the “fgj2wp_pre_modify_link” filter hook


  • New: Allow the SFTP connection. It requires the plugin “WP Filesystem SSH2”.


  • New: Check if we need the plugins RSGallery, Simple Image Gallery, Simple Image Gallery Pro, Rokbox, AllVideos
  • Update the Spanish translations


  • New: Add the get_params() method (used in the Simple Image Gallery add-on)


  • Fixed: Notice: Undefined index: date
  • Tested with WordPress 4.9.4


  • New: Import the images embedded in the categories description
  • New: Allow HTML tags in categories description
  • Fixed: Links modified with wrong value


  • Tweak: Use WP_IMPORTING
  • Tested with WordPress 4.9.2


  • Fixed: Media containing “&” were not imported
  • Tested with WordPress 4.9.1


  • Tested with WordPress 4.9


  • Fixed: The width in the image caption was sometimes missing
  • Tested with WordPress 4.8.3


  • Fixed: Sanitize the file names with spaces
  • Tested with Joomla 3.8
  • Tested with WordPress 4.8.2


  • New: Check if we need the RSBlog module


  • Νέο: Έλεγχος λειτουργίας του πρόσθετου Falang στο Joomla
  • Fixed: Security cross-site scripting (XSS) vulnerability in the Ajax importer
  • Tested with WordPress 4.8.1


  • New: Import the image caption in the media attachment page


  • Νέο: Τροποποίηση εσωτερικών συνδέσμων στα πρόχειρα


  • New: Block the import if the URL field is empty and if the media are not skipped
  • Νέο: Εισαγωγή μηνυμάτων λάθους και πληροφορίες


  • New: Add the percentage in the progress bar
  • New: Display the progress and the log when returning to the import page
  • Change: Restyling the progress bar
  • Fixed: Typo – replace “complete” by “completed”
  • Tested with WordPress 4.8


  • Compatible with Joomla 3.7
  • Tested with WordPress 4.7.4


  • Tested with WordPress 4.7.3


  • Fixed: Images not imported on some servers
  • Tested with WordPress 4.7.1


  • Tweak: Code refactoring


  • Tweak: Code refactoring


  • New: Add an option to remove the accents from the medias (useful on Windows)
  • Tested with WordPress 4.7


  • Fixed: Existing images attached to imported posts were removed when deleting the imported data
  • Fixed: Typo in Italian translation


  • Fixed: Images not imported on HTTPS sites: Warning: fsockopen(): unable to connect to https::80 (php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known)


  • Fixed: Wrong progress bar color


  • Fixed: The progress bar didn’t move during the first import
  • Fixed: The log window was empty during the first import


  • New: Check if the Community Builder module is required
  • Fixed: The “IMPORT COMPLETE” message was still displayed when the import was run again


  • Fixed: The images protected by a user agent protection were not imported


  • Tweak: Code refactoring


  • Fixed: Database passwords containing “<” were not accepted


  • New: Modify the tags links in the post content


  • New: Authorize the connections to Web sites that use invalid SSL certificates
  • Tweak: If the import is blocked, stop sending AJAX requests


  • Fixed: Review link broken
  • Fixed: Imported tags were not removed when removing imported data only


  • Fixed: Missing link between the post and its featured image
  • Fixed: Wrong number of comments displayed
  • Tested with WordPress 4.6.1


  • New: Display the number of data found in the Joomla database before importing
  • New: Display the needed modules as warnings before importing
  • Tested with WordPress 4.6


  • Tweak: Code optimization


  • Fixed: the “Modify internal links” function could break some links


  • Fixed: Internal links like catid=XXX&id=YYY were not modified
  • Tweak: Speed up and reduce the memory consumed by the modification of the internal links


  • New translation: Italian


  • New: Compatible with Joomla 3.6


  • Fixed: Display an error message when the process hangs
  • Tweak: Increase the speed of counting the terms


  • Tested with WordPress 4.5.3


  • Fixed: Don’t import the introtext in the post content if it is marked as hidden on Joomla


  • New: Compatibility between the Joom!Fish and Docman add-ons
  • Fixed: Wrong redirect when an attachment has the same name as a post


  • Fixed: Rewrite the function to delete only the imported data
  • Fixed: Categories import can hang if the import counter was resetted and the imported categories were not deleted


  • New: Option to import the featured images only


  • Fixed: The message “[ERROR] The import process is still running. Please wait before running it again.” sometimes appears after the process has crashed, and it prevents the import process to resume
  • FAQ updated


  • New: Add some hooks
  • Tweak: Code optimization
  • FAQ updated


  • Fixed: Images with line breaks inside the tag were not imported
  • Tested with WordPress 4.5.2


  • New: Allow image filenames starting with //


  • Tweak: Add functions useful for add-ons
  • Tested with WordPress 4.5.1


  • New: Ability to stop the log window auto-refresh


  • Tested with WordPress 4.5


  • New: Compatible with Joomla 3.5
  • Fixed: Images without slashes in their path were not imported


  • Fixed: Import stopped when a post has no title or no content
  • Fixed: The first image was not removed from the content when used both in the intro text and in the full text


  • Fixed: Notice: Undefined variable: imported_tags
  • Fixed: the progress bar was resetted when resuming the import


  • New: Modify the first image options
  • Tweak: Code refactoring


  • Fixed: Error :SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘c.extension’ in ‘where clause’


  • New: Use the WordPress FTP API instead of the phpseclib library
  • New: Better handle the progress bar
  • New: Don’t log the [COUNT] data in the log window
  • Fixed: Browser tab crashed when too much data was displayed in the log window


  • New: Modify the Joomla SEF links


  • New: Brazilian translation added
  • Fixed: When choosing “Import first image as featured only”, the first image was not removed from content if it was surrounded by a hyperlink


  • Fixed: Articles got the unassigned category when the category is a duplicate


  • Fixed: Infinite loop when some categories have duplicate names


  • Fixed: After a resume, the posts were imported as uncategorized
  • Tested with WordPress 4.4.2


  • New: Run the import in AJAX
  • New: Add a progress bar
  • New: Add a logger frame to see the logs in real time
  • New: Ability to stop the import
  • New: Compatible with PHP 7


  • Fixed: Medias with relative paths were not uploaded to the right folder when not using month- and year-based folders


  • New: For the articles and categories whose alias is a date, the imported slug will be the title and not the alias


  • New: Keep the Joomla media folder tree when the uploads are not organized into month- and year-based folders


  • Fixed: Featured image issue


  • Tested with WordPress 4.4.1


  • Fixed: Categories with null description were not imported


  • Tweak: Use the WordPress 4.4 term metas: performance improved, nomore need to add a category prefix
  • Tweak: Optimize code
  • Fixed: The notices and errors were sometimes displayed before the header is sent
  • Fixed: Categories with duplicated names were not imported
  • Fixed: The cache for the taxonomies different from category was not cleaned


  • Tested with WordPress 4.4


  • New: Add SFTP protocol
  • New: Import the {audio} tag
  • New: Add a link to the FAQ in the connection error message


  • New: Add an Import link on the plugins list page


  • Tweak: Code refactoring for unit tests


  • New: Add the hook ‘fgj2wp_get_wp_post_from_joomla_url’
  • Tweak: Code refactoring


  • Fixed: Don’t display the warning about WPML if JoomFish is used
  • Tweak: Change the range of the get_wp_post_id_from_joomla_id() function to be available for add-ons


  • New: Add the FTP settings (used for Simple Image Gallery add-on)


  • New: Make the platform more accessible to more languages
  • Update all the translations


  • New: Check if we need the WPML module


  • Tested with WordPress 4.3.1


  • Fixed some translations
  • New add-on: WPML to move the multilingual content


  • New: Add an anti-duplicate test if the user runs another import process again while one is still running
  • Fixed: Solve conflicts between FG plugins by limiting the Javascript scope


  • Fixed: Some medias with accents were not imported
  • Tested with WordPress 4.3


  • Tested with WordPress 4.2.4


  • Tested with WordPress 4.2.3


  • New: Change the video links {“video”} to WordPress video tags


  • Fixed: Fatal error: Call to a member function fetch() on a non-object


  • Tested with WordPress 4.2.2


  • Tested with WordPress 4.2.1


  • Tested with WordPress 4.2


  • Tweak: Restructure and optimize the images import functions
  • Tweak: Move the suspend cache functions into the dispatch method


  • Restructure the whole code using the BoilerPlate foundation
  • FAQ updated


  • Fixed: Remove duplicate hook in weblinks.php
  • New add-on: User Groups


  • New: Compatible with Joomla 3.4 (ignore weblinks)


  • New: Log the messages to wp-content/debug.log
  • Tweak: Code optimization
  • FAQ updated


  • Fixed: Import images even when there are linefeeds in the img tags


  • Fixed: Don’t import the posts as duplicates if the categories are duplicated on Joomla


  • Tested with WordPress 4.1.1


  • Fixed: the joomla_query() function was returning only one row
  • Update the German translation (thanks to Tobias C.)
  • Update the Spanish translation (thanks to Jacob R.)


  • Fixed: Multisite: Links that contain “:” were corrupted
  • FAQ updated


  • Tweak: Add hooks in the modify_links functions


  • FAQ updated
  • Tested with WordPress 4.1


  • Tweak: Don’t display the timeout field if the medias are skipped


  • New: Keep the anchor link when modifying the internal links
  • Tested with WordPress 4.0.1


  • Update the German translation (thanks to Tobias C.)


  • Update the Spanish translation (thanks to Bradis García L.)


  • Fixed: Allow backslashes in the articles content


  • Fixed: Remove extra slashes in the media filenames


  • Tweak: Simplify the posts count function


  • New: Add a timeout option


  • Fixed: Some image captions were not imported


  • Fixed: The media filename was empty on the attachment page
  • Tested with WordPress 4.0


  • New: Help screen


  • New: Functions to get the Joomla imported posts, categories and users
  • New add-on: JReviews


  • New: Function to get the Joomla installation language
  • New add-on: Virtuemart to WooCommerce
  • Tested with WordPress 3.9.2


  • Fixed: Define the width and the height of the images only if it isn’t defined yet


  • New: Modify the internal links for both posts, pages and custom post types


  • New: Add option to automatically remove the WordPress content before each import


  • New: Display the number of Joomla articles, categories, users and web links during the database connection test
  • New: Compatibility with Joomla 3.3


  • Fixed: Warning: Creating default object from empty value


  • Fixed: “Fatal error: Call to a member function fetch() on a non-object” for versions of MySQL < 5.0.3


  • New add-on: Docman
  • Tested with WordPress 3.9.1


  • New: Add a parameter to force the external media import


  • New: Import Web links


  • Tested with WordPress 3.9


  • New: Change the visibility of some methods to use them in add-ons
  • Fixed: Notice: Undefined index: width
  • Fixed: Notice: Undefined index: height


  • Fixed: Was displaying the warning “Your version of Joomla (probably 1.0) is not supported by this plugin.” when both the Premium and the free versions were activated
  • Tested with WordPress 3.8.2


  • New: Change the visibility of some methods to use them in add-ons


  • Fixed: Fatal error: Call to a member function fetch() on a non-object


  • New: The required modules are listed when testing the connection to Joomla


  • New: Nomore need to choose the Joomla version ; it is guessed by the plugin.
  • New: Add a message when trying to import a Joomla 1.0 database


  • New: Minor internal changes
  • FAQ updated


  • New: Add hooks
  • Fixed: Notice Undefined offset


  • Fixed: Don’t add the <!–more–> tag if the introtext is empty
  • Tested with WordPress 3.8.1


  • Fixed: Syntax error with parse_ini_string
  • Fixed: Images containing “%20” were not imported into the post content
  • FAQ updated


  • New: Compatibility with Joomla 3.2
  • New translation: Bulgarian (thanks to Hristo P.)


  • Fixed: The «Remove only new imported posts» option was not removing anything
  • Tested with WordPress 3.8


  • Fixed: Archived posts were always imported as drafts in Joomla 2.5


  • New: Display error message if PDO is not enabled


  • New: Display SQL errors in debug mode
  • Description updated


  • New: Check if the upload directory is writable
  • Tested with WordPress 3.7.1


  • Fixed: Import the categories even when the articles are imported as pages
  • Tested with WordPress 3.7


  • Fixed: “Warning: sprintf(): Too few arguments” message for image captions with %


  • New translation: Spanish (thanks to Bradis García L.)


  • Fixed: Use the modified post date if the creation date is empty
  • Fixed: Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object


  • Fixed: Some spaces were removed (due to the extra newlines removal)
  • Fixed: Better rule for the convert_post_attribs_to_array function
  • Fixed: “WordPress database error Field ‘post_content’ doesn’t have a default value”


  • New: Import the page breaks
  • New: Option to import the Joomla introtext in the post and in the excerpt
  • New: Use the show_intro article parameter to import the introtext in the content or not
  • Tested with WordPress 3.6.1


  • New: Compatibility with Joomla 3.1
  • Fixed: Remove extra newlines


  • New: Add automatically http:// at the beginning of the URL if it is missing
  • New: Option for the first image import
  • FAQ updated


  • Fixed: syntax error, “unexpected ‘<‘” in version 1.16.0


  • New: Option to import images with duplicate names
  • New translation: Polish (Thanks to Łukasz Z.)
  • FAQ updated


  • Optimize the Joomla connection


  • New: Option to not import archived posts or to import them as drafts or as published posts


  • New: Import archived posts as drafts
  • Tested with WordPress 3.6


  • Fixed: The HTML classes were lost in the a-href and img tags
  • Unset by default the checkbox «Import the text above the “read more” to the excerpt»


  • Fixed: The caption shortcode is imported twice if the image has a link a-href pointing to a different image


  • New: Import images captions
  • Improve speed of processing the image links
  • Update the FAQ


  • Tested with WordPress 3.5.2
  • New: Add a button to save the settings
  • New: Improve the speed of emptying the WordPress content


  • Fixed: Replaces the publication date by the creation date as Joomla uses the creation date for sorting articles


  • New: Add a button to remove the categories prefixes
  • New: Option to not use the first post image as the featured image


  • New: Import external media (as an option)
  • New translation: Russian (Thanks to Julia N.)


  • Fixed: Categories hierarchy lost when parent categories had an id greater than their children


  • Fixed: Posts were not imported when the skip media option was off


  • Fixed: Categories hierarchy lost when parent categories had an id greater than their children (Joomla 1.6+)
  • New: Add hooks for extra images and after saving options


  • Tested with WordPress 3.5.1
  • New: Add hooks in the modify_links method


  • New: Add a hook for extra options
  • Fixed: Move the fgj2wp_post_empty_database hook
  • FAQ updated


  • New: Compatibility with Joomla 3.0
  • New: Option to delete only new imported posts without deleting the whole database


  • Fixed: the internal links where not modified on pages


  • Tested with WordPress 3.5
  • New: Button to test the database connection
  • New: Improve the user experience by displaying explanations on the parameters and error messages
  • New: get_categories hook modified


  • New: Option to not import already imported medias


  • FAQ updated


  • Fixed: Cache flushed after the migration
  • Fixed: Compatibility issue with WordPress < 3.3


  • New: Better compatibility for copying media: uses the WordPress HTTP API


  • New: Better compatibility for copying media: uses the copy function if cURL is not loaded


  • New: Compatibility with PHP 5.1 (thanks to dmikam)
  • New: Compatibility with WordPress 3.0 (thanks to dmikam)
  • New: Better compatibility for copying media (uses cURL) (thanks to dmikam)


  • FAQ updated


  • New: Compatibility with Joomla 2.5


  • New hooks added
  • Description updated


  • FAQ updated


  • Fixed: clean the cache after emptying the database
  • Fixed: the categories slugs were not imported if they had no alias


  • New: Compatibility with Joomla 1.6 and 1.7


  • New: Can import posts as pages (thanks to LWille)
  • Translation: German (thanks to LWille)


  • Tested with WordPress 3.4


  • Add “c” in the category slug to not be in conflict with the Joomla URLs
  • FAQ and description updated


  • New: Option to import meta keywords as tags


  • New: Deactivate the cache during the migration for improving speed


  • New: Modify posts internal links using WordPress permalinks setup
  • Fixed: Exhausted memory issue


  • Fixed: Don’t import HTML links as medias
  • FAQ updated


  • New: Get the post creation date when the publication date is empty
  • Fixed: Accept categories with spaces in alias


  • New: Import all media
  • Fixed: Do not reimport already imported categories
  • Fixed: Update categories cache
  • Fixed: Issue with media containing spaces
  • Fixed: Original images sizes are kept in post contents


  • New: Manage sections and categories duplicates
  • Fixed: Wrong categorization of posts


  • Update the FAQ
  • New: Can restart an import where it left after a crash (for big databases)
  • New: Display the number of categories, posts and images already imported
  • Fixed: Issue with categories with alias but no name
  • Fixed: Now import only post categories, not all categories (ie modules categories, …)


  • Fixed: The images with absolute links were not imported.
  • New: Option to skip the images import
  • New: Skip external images


  • Fixed: The content was not imported in the post content for the posts without a “Read more” link.
  • New: Option to choose to import the Joomla introtext in the excerpt or in the post content with a «Read more» tag.


  • Initial version: Import Joomla 1.5 sections, categories, posts and images