Jump to content

Template:ReturnToParent: Difference between revisions

From Kid Dancers Wiki
No edit summary
No edit summary
Line 21: Line 21:
* <code><nowiki>{{Return to parent|Help}}</nowiki></code>
* <code><nowiki>{{Return to parent|Help}}</nowiki></code>
* <code><nowiki>{{Return to parent|parent=Portal:Contents|text=← Back to Contents}}</nowiki></code>
* <code><nowiki>{{Return to parent|parent=Portal:Contents|text=← Back to Contents}}</nowiki></code>
== Lua Module ==
This template requires '''Module:ParentPage'''. Create it with the following code:
<syntaxhighlight lang="lua">
local p = {}
function p.getParent(frame)
    local pagename = frame.args[1] or mw.title.getCurrentTitle().fullText
    local parent = pagename:match("^(.+)/[^/]+$")
   
    if parent then
        return parent
    else
        return ""
    end
end
function p.getParentName(frame)
    local pagename = frame.args[1] or mw.title.getCurrentTitle().fullText
    local parent = pagename:match("^(.+)/[^/]+$")
   
    if parent then
        -- Remove namespace prefix for display
        local displayName = parent:match("^[^:]+:(.+)$") or parent
        return displayName
    else
        return ""
    end
end
return p
</syntaxhighlight>


[[Category:Navigation templates]]
[[Category:Navigation templates]]
Line 30: Line 63:
|{{#if:{{{1|}}}
|{{#if:{{{1|}}}
|[[{{{1}}}|← Return to {{{1}}}]]
|[[{{{1}}}|← Return to {{{1}}}]]
|{{#ifexist:{{BASEPAGENAME}}
|{{#if:{{#invoke:ParentPage|getParent}}
|[[{{BASEPAGENAME}}|← Return to {{BASEPAGENAME}}]]
|[[{{#invoke:ParentPage|getParent}}|← Return to {{#invoke:ParentPage|getParentName}}]]
|{{#ifexist:{{NAMESPACE}}:{{BASEPAGENAME}}
|[[{{NAMESPACE}}:{{BASEPAGENAME}}|← Return to {{BASEPAGENAME}}]]
|<span class="error">This is not a subpage</span>
|<span class="error">This is not a subpage</span>
}}
}}
}}
}}
}}
}}</includeonly>
}}</includeonly>

Revision as of 03:46, 30 November 2025

This template creates a link to return to the parent page.

Usage

Automatic parent detection
{{Return to parent}}
Automatically detects the parent page from the current page name.
Example: On "Paige Hyland/Gallery" it displays "Return to Paige Hyland"
Specify custom parent page
{{Return to parent|CustomPage}}
Links to the specified page instead.
Example: {{Return to parent|Main Page}}
Custom link text
{{Return to parent|parent=Help|text=Back to Help}}
Allows customizing both the parent page and the link text.

Examples

  • {{Return to parent}}
  • {{Return to parent|Help}}
  • {{Return to parent|parent=Portal:Contents|text=← Back to Contents}}

Lua Module

This template requires Module:ParentPage. Create it with the following code:

<syntaxhighlight lang="lua"> local p = {}

function p.getParent(frame)

   local pagename = frame.args[1] or mw.title.getCurrentTitle().fullText
   local parent = pagename:match("^(.+)/[^/]+$")
   
   if parent then
       return parent
   else
       return ""
   end

end

function p.getParentName(frame)

   local pagename = frame.args[1] or mw.title.getCurrentTitle().fullText
   local parent = pagename:match("^(.+)/[^/]+$")
   
   if parent then
       -- Remove namespace prefix for display
       local displayName = parent:match("^[^:]+:(.+)$") or parent
       return displayName
   else
       return ""
   end

end

return p </syntaxhighlight>