Migrate Ning2
Categories
Component ID
Component name
Component type
Maintenance status
Development status
Component security advisory coverage
Component created
Component changed
Component body
It's a starter kit that might save some migration cost.
It might also be interesting for the sample data and
even for non Drupal destinations (although the generated
intermediate csv is strongly tailored against Drupal).
Destination System, Limitations:
The first draft is Ning 2 -> 8.1.10 .
Destination is pure Drupal 8 core, no whistles and bells at all.
Groups are only mapped to a site type node+forum, no ACL;
membership is conserved as multiple entity relationship.
Audio, Video are not handled. Blogs become a forum.
Users are migrated with profile questions (weird ning json ..).
Discussions, events, notes, pages become nodes.
Forum categories become taxonomy, just like the group forums.
Comments are migrated for all nodes. User profile comments
are not yet handled (missing: handle left/suspended:
that still confuses re-numbering of the comments:
renumbering is required, because Drupal cannot set cid).
Note:
That the migration is very unconventional
in that it does not use Ids generated by dependency
migrations and managed by the migrate module,
but instead uses a preprocessor (C++) which
transforms the Ning json (sometimes corrupt json)
to CSV, which is imported using migrate_source_csv:
the preprocessor does the bulk of the work:
it creates or renumbers ids where required/configures
and thus also can transform the html such that links
are relocated to drupal too: this is used for inline images
but also intra-content links. For comments, it uses a trick:
manipulate AUTO_INCREMENT to control id generation
(unfortunately the API does not support setting the comment id).
It also handles character encoding (ning encoding to utf8),
filtering of left/suspended users (content partially in ning dump).
The preprocessor has evolved from a json reader (check and
correct corrupt ning json export) and is a little complex,
but it has many configuration options and produces an
extensive error log.
This sandbox for now only contains the main migration module:
for the C++ preprocessor and additional resources, see also:
See also: https://www.drupal.org/node/2810683
