link_magician
Link Magician scans for faulty/hardcoded links or improperly linked/referenced files and images (found in 'rich text'). Hardcoded links are converted to LinkIt-compatible entity links and files which are referenced directly (unmanaged files) are converted to media entities and linked properly. Just as important, Link Magician also provides extensive logging showing every change it makes and keeping track of faulty things it can't fix so that those may be processed manually.
Features
- Batching. (a necessity for lots of content, but you'll appreciate the ability to specify batch sizes and limits if you need to 'babysit' the process.)
- Extensive logging ("Tracking")
- Includes optional sub-modules that add support for:
- Layout Builder
- Paragraphs
Installation
Install as you would normally install a contributed Drupal module. For further information, see Installing Drupal Modules.
Post-Installation
(Optional) Install sub modules.
To enable Paragraphs support
drush pm:e link_magician_paragraphs
To enable Layout Builder support
drush pm:e link_magician_layout_builder
Configuration
At a minimum, update the Base URI and Additional Host settings on the configuration page (/admin/config/system/link_magician).
note the configuration and settings for Link Magician need some work (issue #3584762)
Base URI
This main URL the site; this is used in the logic that checks for redirects that may be redirected by something other than Drupal.
On a production site, this should be the same as the url that users access the site with (ie, https://www.example.com/).
On a development sandbox/server, it would be the address you access the development server at (ie, http://example.ddev.site/)
Additional Hosts
Add any hosts to treat as being on this site. (ie. 'www.example.com'/'example.com')
Additional Requirements
Recommended modules/libraries
Usage
Out of the box, you'll have a few Drush commands available
backstop
Useful for comparing before/after (see testing.md)
drush link_magician:backstop {batchid} > backstoplinks.json
purge
Truncate the Link Magician tables in the database.
drush link_magician:purge
tidy
This is where the magic happens, run the tidy process. The help option is your friend.
drush link_magician:tidy --help