Listing Orphan Wiki Pages
bryclev - September 17, 2008 - 18:43
| Project: | Wikitools |
| Version: | 6.x-1.0-beta1 |
| Component: | Code |
| Category: | feature request |
| Priority: | critical |
| Assigned: | Unassigned |
| Status: | active |
Jump to:
Description
How can I create a page or view showing a list of orphaned wiki pages, a la MediaWiki? My site is mainly being used for this feature, and I can't seem to get anywhere to create a page for this. Any thoughts? This should be part of the module itself.

#1
This is out of the scope of Wikitools. All Views based questions should be directed at them.
Maybe creating a view with a "Node: type" filter, select 'is none of' option and select all your content types. This might be able to help.
Otherwise maybe the Views developers can help.
#2
don't think so
besides "is none of" is a good starting point, it isn't maintainable when new possible values become available to the set, meaning that "is none of" have to be updated to take into account the new values.
It should be something like "is not present" (present, set, whatever) translating to SQL would be IS NULL in the LEFT JOIN (or RIGHT JOIN)
#3
Granted my solution would not be scalable (new content types wouldn't be added to the view), but could it work?
Now that I think about it, define an "orphaned" node? Is it a node that lacks a content type or one that lacks terms after a vocabulary has been edited (e.g making a vocab 'required' after previous content lacks any terms).
#4
mmm... my previous comment was for the "is none of" attempt, but certainly, that wouldn't solve the matter of the Wiki orphans which is more complex, since it's not a matter of nodereference being NULL or nothing like it.
Definitely not a matter of Views.
It comes to my mind a possible solution:
- A Wiki filter (say flexifilter or whaterver) but extended to manage it's own cached data.
- Every time the filter renders a wiki-link catches in DB the link as known (maybe in this step might go and check if target exist, maybe would be better later on for performance)
- Then the filter has it's own table where all rendered wiki-links are known (maybe without knowing if target exists)
- To know about every orphan content type X just have to look into it's table (if a wiki-link hasn't been rendered isn't known so don't need to perform an expensive cron job unless demanded to clear and rebuild it's cached table)
- To know about every missing target just have to look into it's table (this table has to be incrementally verified for possible new created targets, deleted & broken targets, etc, meaning cron job)
am I right?
#5
forgot the title