- Compatible XF 2.x versions
- 2.0
- 2.1
- 2.2
- Additional requirements
- Article Management System ("AMS") version 2.2.31+
This is a sub-add-on for Article Management System ("AMS") by @Bob. Without that add-on it won't do anything (and cannot be installed). It was tested with AMS version 2.2.31, so this is the minimum requirement (tough it may work with older versions as well, but you would have to edit the addon.json file).
The Problem with keeping article links up-to-date
You might have a big base of AMS articles and do a lot of cross-linking between articles. So, every time an article's title changes, links to that article get outdated (i.e. they still work, but with a 301 redirect). For best SEO results, you should update them. This can be a lot of work, when you you have to find and change dozens of links for each title change.
The solution: What "AMS Links Auto-Updater" does
This is a sub-add-on for AMS (it won't work without AMS). If you go to Admin CP -> AMS - Articles -> Find outdated article links (or directly to admin.php?nocte-ams-outdated-links/), you will find a list with all articles, that have outdated links. If you click on an article in the list, you will see a diff, that shows what changes would be made. You can then click on "Update outdated article links" to apply those changes to that article.
There is also a rebuild job, that updates all article at once. You find this also on Admin CP -> Tools -> Rebuild caches. It's called "AMS: Rebuild outdated article links".
For better traceability of changes, this add-on logs all changes to the article's change log ("History").
Screenshots
1. One article with title "TEST article" has outdated links:
2. Here you see the "diff". These are the changes, that would be applied, if you auto-update that article's links. You see 3 links. The last one is o.k., the other two need to be updated:
3. If you go to "update outdated article links", you will see this confirmation dialog:
4. You can do the auto-update. In the end the article will not show anymore as having outdated links:
Limitations
The Problem with keeping article links up-to-date
You might have a big base of AMS articles and do a lot of cross-linking between articles. So, every time an article's title changes, links to that article get outdated (i.e. they still work, but with a 301 redirect). For best SEO results, you should update them. This can be a lot of work, when you you have to find and change dozens of links for each title change.
The solution: What "AMS Links Auto-Updater" does
This is a sub-add-on for AMS (it won't work without AMS). If you go to Admin CP -> AMS - Articles -> Find outdated article links (or directly to admin.php?nocte-ams-outdated-links/), you will find a list with all articles, that have outdated links. If you click on an article in the list, you will see a diff, that shows what changes would be made. You can then click on "Update outdated article links" to apply those changes to that article.
There is also a rebuild job, that updates all article at once. You find this also on Admin CP -> Tools -> Rebuild caches. It's called "AMS: Rebuild outdated article links".
For better traceability of changes, this add-on logs all changes to the article's change log ("History").
Screenshots
1. One article with title "TEST article" has outdated links:
2. Here you see the "diff". These are the changes, that would be applied, if you auto-update that article's links. You see 3 links. The last one is o.k., the other two need to be updated:
3. If you go to "update outdated article links", you will see this confirmation dialog:
4. You can do the auto-update. In the end the article will not show anymore as having outdated links:
Limitations
- I am talking about "links," but basically this add-on searches for url's in the format https://www.yourdomain.com/ams/article-title.1/. It does not care about characters before or after the url and so it also updates plain text, that matches this "url" pattern, so it might be a good idea to check the diffs first. But I guess in 99% of use cases the script should work fine.
- This add-on will only work when "Use full friendly URLs" and "Romanize titles in URLs" are on. Otherwise you get an error message.
- If you use route filters: The add-on will not find links, that do not match the current route filter for ams/.