A common idiom is to repeat the title of the page somewhere in the text, typically after the Therefore in the ThereforeBut?. Some pages, however, repeat the title LinkPattern over and over again. In a way, this facilitates the OralCulture of creating a LabelVocabulary? by reinforcing the token that represents the page in the mind of the reader. To that end, it's also common to repeat the same (non-title) LinkPattern over and over again on a page.
However, this creates angry link salad. A common solution is to split link patterns in the text body after their first use. After all, the link is there on the page available to the reader if she wants to follow it. Why beat her over the head? This solution creates a problem when reworking, however. When an editor applies ExtractPage to a section of text, split link patterns will not have a LinkPattern equivalent on the new page. The editor may not notice.
Another common solution is to override the LinkPattern with escape codes, such as
<nowiki>LinkPattern</nowiki>. This scheme is beneficial since it still reinforces the LinkPattern into the reader's memory. Further, it is less vulnerable to ExtractPage. However, this violates the PrincipleOfLeastSurprise? since the WikiEngine no longer appears consistent. Readers may wonder why the link is not a link in this context.
For the most part, though, just use the LinkPattern as you feel like, and then split link patterns where they become obnoxious.
See also AvoidClutterLinks.
A novel alternative is to have the WikiEngine automatically hide redundant LinkPatterns. While the first appearance of the link pattern appears as a normal link, but the rest of the links appear as normally styled text, free of ParaLanguage cues that signal it as a link. That is, use CascadingStyleSheets to quash the normal colour and underlining. On mouse over, one might want to make these reappear, but during normal reading the reader is not disturbed by angry link salad. Further, it is completely immune to ExtractPage.
Of course, for a page with multiple sections, a reader may jump to the section in the middle without noticing the first link. The engine might then render the first LinkPattern in each section (defined by HorizontalRule? or HeaderSyntax).
Partial solution: links to the current page don't become links. Wikipedia does this (it just bolds self-links). For extra marks do the same for links via PageRedirects etc).