WordPress.org

Ready to get started?Download WordPress

Forums

Multisite Language Switcher
[resolved] Feature Suggestion - Converting from WPML (7 posts)

  1. idealien
    Member
    Posted 1 year ago #

    Great plugin!!!

    I'm in the process of moving a site from WPML based to a MS / Network using this plugin. Everything is going pretty smooth so far, but a couple of features might make others path in this process a bit easier down the road. Also, if anyone has done this process and can suggest faster / better ways to handle the conversion I would be quite happy to know.

    1. Quick Edit Access to Language Dropdown
      Using the WP exporter (by post type) brings all of the posts into one XML file. I have to import that once into each language site and then delete the non-native posts. Once that is done, I need to identify what the translation is via the edit window. Would be faster to be able to do this via the quick edit panel instead of loading a new window each time.
    2. Link to translated versions
      From the list view of posts I can click to edit the translations that I have already defined. Is there or could there be a way to do this from the edit post view as well? Perhaps dynamic link based on what is populated in the select box MSLS currently.

    http://wordpress.org/extend/plugins/multisite-language-switcher/

  2. idealien
    Member
    Posted 1 year ago #

    • A method to filter admin list view (for post types) by non-translated entries.
    • Option to define what method sort is applied to in the drop-down list on edit page (By Title as currently the case, or by date of post).
  3. realloc
    Member
    Plugin Author

    Posted 1 year ago #

    Excellent input. I have also some feature-request here: https://github.com/lloc/Multisite-Language-Switcher/issues?direction=desc&sort=created&state=open

    Cheers,
    Dennis.

  4. idealien
    Member
    Posted 1 year ago #

    Thanks. Will continue this thread with a bit of a jump towards theories I am working through how to automate some parts of the process of converting a single site using WPML to a WPMS Network with 1 site for each language and MLSL.

    Manual Process

    1. Use WP Export and select a particular post type. This gives all of the CPT entries for all languages, without any identification of language in the XML aside from the actual text.
    2. Use WP Import into english site and then delete all french entries based on title language.
    3. Use WP Import into french site and delete english entries.
    4. Individually edit each english post and select the french translation for it. Update.

    Obviously this doesn't scale too well :)

    Thoughts on conversion strategy

    • A plugin to extend the WP exporter (or make a new variant) could add the language to the item XML. A plugin to extend the WP importer could then only import the items which match the new site language settings saving the manual delete from step 2 and 3 above.
    • WPML table icl_translations stores rows similar to what MLSL puts into the wp_options table. However, all entries are based on existing site Post IDs that are not maintained between export / import.

    But how to maintain / re-build the association between posts when the IDs are changing between import / export? Best theory I have atm:

    • Plugin / script to add a meta field with existing icl_translation details for each post. ID: _wpml2mlsl with array value of current post ID (en) and current translation id (fr).
    • WP Export / Import would include this meta field into the new site.
    • Plugin / script that then parses each post which has a _wpml2mlsl meta field. It would then have to find its corresponding post ID via meta field on other language site to get new post ID and generate one (or both) wp_options entries.
    • Optionally then delete the _wpml2mlsl meta field upon success.

    Does that seem ridiculous or a reasonable path?
    Any suggestions on ways to simplify that?
    Other strategies that I've missed which would suggest exploring?

  5. realloc
    Member
    Plugin Author

    Posted 1 year ago #

    I think a plugin which uses the functionality of the WP_Import-class can be a possible solution for that. In my opinion it could import all contents in one run and just switch between the blogs and create the relations in the wp_options-tables at the same time.

    Would be nice to have an export to play with...

  6. idealien
    Member
    Posted 1 year ago #

    Success! Storing source and destination language and post IDs as meta fields on each post before exporting provided enough data that on the WPMS sites I can then create the MSLS option records needed to match to new IDs and language formats.

    It's currently in PoC as a series of theme files, but I will clean that up in the next few days and release it as a plugin that others can test/use.

    Hopefully it will make the process for conversion as simple as:

    1. Install WPML2WPMSLS on your old WPML site
    2. Select which post type(s) you want to convert from WPML and submit form. This will store the values from icl_translations into a series of meta fields on each entry.
    3. Use standard WP export / import to your WPMS site
    4. Install WPML2WPMSLS on WPMS site
    5. Select which blog / language and post type(s) combination you want to match between. This will retrieve the values from meta fields on each entry, compare them to the new IDs and add option entries that MSLS uses to associate posts. Delete the meta values (setting on/off in the form)
    6. Uninstall WPML2WPMSLS
  7. realloc
    Member
    Plugin Author

    Posted 1 year ago #

    Great news!

    Cheers,
    Dennis.

Topic Closed

This topic has been closed to new replies.

About this Plugin

About this Topic

Tags

No tags yet.