Ignore:
Timestamp:
06/18/2026 07:50:13 AM (3 months ago)
Author:
roboburr <roboburr@…>
Branches:
main
Children:
03af7f8
Parents:
0dbb5c1
Message:

Admin: dedicated SEO page (/admin/seo) for advanced SEO

The <head> already consumed a rich SEO set (title_template, canonical,
default_description, og_image_default, og_locale, author, *_verification,
facebook_app_id, publisher_*/schema_type for JSON-LD), but many fields
had nowhere to be edited. New god-only page manages the full set for the
primary site, accessible via a 🔎 SEO button in /admin.

The old hidden SEO block in Appearance has been removed (+ its columns
from the appearance-save so saving no longer zeroes them out) and replaced
with a link to the new page — single source of truth.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/views/pages/admin-site-edit.ejs

    r0dbb5c1 r6623453  
    226226    </fieldset>
    227227
    228     <fieldset>
     228    <fieldset class="seo-pointer">
    229229      <legend>SEO &amp; social</legend>
    230       <label>
    231         <span>Titel-sjabloon (gebruik {title} en {site})</span>
    232         <input type="text" name="title_template" value="<%= site.title_template || '{title} — {site}' %>" maxlength="200">
    233       </label>
    234       <label>
    235         <span>Canonieke basis-URL (voor productie-HTTPS)</span>
    236         <input type="text" name="canonical" value="<%= site.canonical || '' %>" placeholder="https://jouw-domein.com">
    237       </label>
    238       <label>
    239         <span>Twitter / X-handle (met @)</span>
    240         <input type="text" name="twitter" value="<%= site.twitter || '' %>" placeholder="@jouwnaam" maxlength="64">
    241       </label>
    242       <details>
    243         <summary>Zoekmachine-verificatie</summary>
    244         <label>
    245           <span>Google site-verificatie</span>
    246           <input type="text" name="google_verification"    value="<%= site.google_verification    || '' %>" maxlength="200">
    247         </label>
    248         <label>
    249           <span>Bing (msvalidate.01)</span>
    250           <input type="text" name="bing_verification"      value="<%= site.bing_verification      || '' %>" maxlength="200">
    251         </label>
    252         <label>
    253           <span>Pinterest (p:domain_verify)</span>
    254           <input type="text" name="pinterest_verification" value="<%= site.pinterest_verification || '' %>" maxlength="200">
    255         </label>
    256         <label>
    257           <span>Yandex</span>
    258           <input type="text" name="yandex_verification"    value="<%= site.yandex_verification    || '' %>" maxlength="200">
    259         </label>
    260       </details>
     230      <p>Titel-sjabloon, canonical, deel-afbeelding, verificatie-metas en meer staan
     231        nu op een eigen pagina: <a href="/admin/seo">🔎 SEO &amp; vindbaarheid</a>.</p>
    261232    </fieldset>
    262233
Note: See TracChangeset for help on using the changeset viewer.