Jump to content

Template:GuestbookWidget: Difference between revisions

From LovedForever
Replace VisualEditor entry link with the new custom single-form Guestbook widget
Detect /Stories by title text (main namespace has no subpages enabled on live)
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{#ifexist:{{FULLPAGENAME}}/Guestbook
<div class="guestbook-form-widget" data-guestbook-subpage="{{FULLPAGENAME}}"></div>{{#ifeq:{{#titleparts:{{PAGENAME}}|1|-1}}|Stories|[[Category:Stories|{{#titleparts:{{PAGENAME}}|-1}}]]}}
|{{:{{FULLPAGENAME}}/Guestbook}}
|''Be the first to share a memory.''
}}
 
<div class="guestbook-form-widget" data-guestbook-subpage="{{FULLPAGENAME}}/Guestbook"></div>
<noinclude>
<noinclude>
Drop <code><nowiki>{{GuestbookWidget}}</nowiki></code> into any memorial page's
Drop <code><nowiki>{{GuestbookWidget}}</nowiki></code> at the <strong>bottom</strong> of a
Guestbook section. It works on whichever page it's placed on — no page name to
memorial's own "PersonName/Stories" subpage, below any existing entries -- not the main
fill in — by transcluding "&lt;This page&gt;/Guestbook" and rendering a native
memorial page. Visitors read the existing stories first, then find the form last. It
submission form (built by <code>MediaWiki:Common.js</code>) instead of linking
renders a native submission form (built by <code>MediaWiki:Common.js</code>) that posts
out to a VisualEditor edit.
new entries onto *this* page as <code>{{Memory|...}}</code> entries, inserted directly
 
above this transclusion (not simply appended to the end of the page) so the form stays
Important: do NOT pre-create the "PersonName/Guestbook" subpage — leave it to
pinned at the bottom as more entries are added -- since the existing entries on the page
be created by the first real submission. The {{#ifexist:}} above shows a
are simply the rest of its wikitext, there is no separate storage subpage any more.
friendly placeholder instead of a redlink until then.


The visible form (name / message / a tribute-icon row / photo upload / submit)
A "Stories" tab pointing at this subpage is added automatically to the parent
is rendered client-side by <code>MediaWiki:Common.js</code> into the empty
memorial page (see the <code>SkinTemplateNavigation::Universal</code> hook in
<code>.guestbook-form-widget</code> div above, and submits via the Action API
<code>LocalSettings.php</code>) for every main-namespace page, as a redlink until
(<code>action=edit</code>, <code>appendtext</code>) directly onto this page's
its "/Stories" subpage actually exists.
"/Guestbook" subpage as a <code>{{Memory|...}}</code> entry — the same storage
format the old VisualEditor-based flow used, so this only changes how entries
are submitted, not how they're stored or rendered.


Posting requires being logged in — logged-out visitors see a "log in or
Posting is open to anyone, logged in or not -- anonymous visitors can post
create an account" prompt instead of the form fields.
text, but the photo-upload button is disabled for them (MediaWiki's default
permissions don't grant anonymous users the "upload" right).
</noinclude>
</noinclude>

Latest revision as of 02:19, 24 October 2026

Drop {{GuestbookWidget}} at the bottom of a memorial's own "PersonName/Stories" subpage, below any existing entries -- not the main memorial page. Visitors read the existing stories first, then find the form last. It renders a native submission form (built by MediaWiki:Common.js) that posts

new entries onto *this* page as

A Visitor



entries, inserted directly above this transclusion (not simply appended to the end of the page) so the form stays pinned at the bottom as more entries are added -- since the existing entries on the page are simply the rest of its wikitext, there is no separate storage subpage any more.

A "Stories" tab pointing at this subpage is added automatically to the parent memorial page (see the SkinTemplateNavigation::Universal hook in LocalSettings.php) for every main-namespace page, as a redlink until its "/Stories" subpage actually exists.

Posting is open to anyone, logged in or not -- anonymous visitors can post text, but the photo-upload button is disabled for them (MediaWiki's default permissions don't grant anonymous users the "upload" right).