Feature #3879
open"What Links Here" in right hand column
0%
Description
Similar to Wikipedia, it'd be nice to have a list of all the wiki pages that link to the wiki page currently being viewed. For example, it could look like the following:
Wiki¶
- Start page
- Index by title
- Index by date
What Links Here¶
- Wiki Page 1
- Wiki Page 2
- ...
- Wiki Page N
Without this, it's hard to tell where to go for related information.
Related issues
Updated by Ben Oakes over 14 years ago
I thought about this with a colleague the other day. Here's a sketch of how it might work, if anyone wants to implement it.
Ingredients:
- A
page_links
join table (two columns, something like:source_page
andlinked_page
) - An observer on the wiki page model
- A method on the wiki page parser that gives an array of links
On save, the source page would delete all its rows in page_links
, parse the new page content for links, and update the join table with which pages are now linked.
To display "what links here", all that would be needed is a query to give all page_links
rows with a linked_page
of the currently viewed page. The pages that link to that page are the source_page
values in the result of that query.
Example:
page_links
has no rows.
I create a page called "foo" with this content:
This is a page about foo. Related topics: [[bar]], [[baz]].
page_links
then has:
source_page | linked_page |
---|---|
foo | bar |
foo | baz |
Then, I create a page named "bar":
This is a page about bar.
To find the pages that link to "bar", I query for page_links
with a linked_page
of "bar". Result:
source_page | linked_page |
---|---|
foo | bar |
So, "foo" is the only page that links to "bar".
Updated by Tiago Carvalho (LabOrders) over 9 years ago
+1
Please see also #16996 [Reciprocal links (or, "Related wiki pages")]
Updated by Toshi MARUYAMA over 9 years ago
- Related to Feature #16996: Reciprocal links (or, "Related wiki pages") added