Changeset bbf9d1a in Klonkt for src/views/pages/admin-seo.ejs


Ignore:
Timestamp:
06/21/2026 02:32:39 PM (3 months ago)
Author:
roboburr <roboburr@…>
Branches:
main
Children:
4885eab
Parents:
929d98d
Message:

feat(i18n phase 5): all admin sub-pages translated (NL/EN/DE)

settings, site-edit, seo, google, audio, stats, playlists, users, sites,
comments, circle, shows, newsletter, updates, epk, help. ~520 new keys
per language. Loop-shadowing of t() resolved by fetching before the loop. 709
view-keys cross-checked against the dictionary (0 missing).

Co-Authored-By: Claude <noreply@…>

File:
1 edited

Legend:

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

    r929d98d rbbf9d1a  
    11<div class="container admin-site-edit-page">
    2   <p><a href="/admin" class="btn">&larr; Beheer</a></p>
    3   <h1>SEO &amp; vindbaarheid</h1>
    4   <p class="admin-tagline">Geavanceerde SEO van <strong><%= site.title %></strong> — hoe je site in zoekmachines en bij het delen op social media verschijnt.</p>
     2  <p><a href="/admin" class="btn">&larr; <%= t('aseo.back') %></a></p>
     3  <h1><%= t('aseo.title') %></h1>
     4  <p class="admin-tagline"><%= t('aseo.tagline_pre') %> <strong><%= site.title %></strong> <%= t('aseo.tagline_post') %></p>
    55
    66  <% if (typeof success !== 'undefined' && success) { %><div class="audio-flash audio-flash--ok"><%= success %></div><% } %>
     
    1010
    1111    <fieldset>
    12       <legend>Indexeren</legend>
     12      <legend><%= t('aseo.index_legend') %></legend>
    1313      <label class="cb">
    1414        <input type="checkbox" name="robots_index" value="1" <%= site.robots_index ? 'checked' : '' %>>
    15         <span>Zoekmachines mogen deze site indexeren <small class="form-hint-inline">— uit = <code>noindex</code> + sitemap.xml verborgen</small></span>
     15        <span><%= t('aseo.index_label') %> <small class="form-hint-inline">— <%= t('aseo.index_hint_pre') %> <code>noindex</code> <%= t('aseo.index_hint_post') %></small></span>
    1616      </label>
    1717    </fieldset>
    1818
    1919    <fieldset>
    20       <legend>Titel &amp; omschrijving</legend>
     20      <legend><%= t('aseo.title_legend') %></legend>
    2121      <label>
    22         <span>Titel-sjabloon <small class="form-hint-inline">— gebruik <code>{title}</code> en <code>{site}</code></small></span>
     22        <span><%= t('aseo.title_template') %> <small class="form-hint-inline">— <%= t('aseo.title_template_hint_pre') %> <code>{title}</code> <%= t('aseo.title_template_hint_and') %> <code>{site}</code></small></span>
    2323        <input type="text" name="title_template" value="<%= site.title_template || '{title} — {site}' %>" maxlength="200" placeholder="{title} — {site}">
    2424      </label>
    2525      <label>
    26         <span>Standaard-omschrijving <small class="form-hint-inline">— meta description / og:description als een pagina er geen heeft</small></span>
    27         <textarea name="default_description" rows="2" maxlength="500" placeholder="Korte omschrijving van je site (max ~160 tekens werkt het best)"><%= site.default_description || '' %></textarea>
     26        <span><%= t('aseo.default_desc') %> <small class="form-hint-inline">— <%= t('aseo.default_desc_hint') %></small></span>
     27        <textarea name="default_description" rows="2" maxlength="500" placeholder="<%= t('aseo.default_desc_ph') %>"><%= site.default_description || '' %></textarea>
    2828      </label>
    2929      <label>
    30         <span>Canonieke basis-URL <small class="form-hint-inline">— de productie-HTTPS-URL, voorkomt dubbele-content-straf</small></span>
     30        <span><%= t('aseo.canonical') %> <small class="form-hint-inline">— <%= t('aseo.canonical_hint') %></small></span>
    3131        <input type="text" name="canonical" value="<%= site.canonical || '' %>" placeholder="https://jouw-domein.com" maxlength="200">
    3232      </label>
    3333      <label>
    34         <span>Auteur <small class="form-hint-inline">— meta author-tag</small></span>
    35         <input type="text" name="author" value="<%= site.author || '' %>" maxlength="120" placeholder="Jouw naam">
     34        <span><%= t('aseo.author') %> <small class="form-hint-inline">— <%= t('aseo.author_hint') %></small></span>
     35        <input type="text" name="author" value="<%= site.author || '' %>" maxlength="120" placeholder="<%= t('aseo.author_ph') %>">
    3636      </label>
    3737    </fieldset>
    3838
    3939    <fieldset>
    40       <legend>Delen op social media</legend>
     40      <legend><%= t('aseo.social_legend') %></legend>
    4141      <label>
    42         <span>Standaard deel-afbeelding (URL) <small class="form-hint-inline">— og:image / Twitter-card; ~1200×630px</small></span>
     42        <span><%= t('aseo.og_image') %> <small class="form-hint-inline">— <%= t('aseo.og_image_hint') %></small></span>
    4343        <input type="text" name="og_image_default" value="<%= site.og_image_default || '' %>" placeholder="https://jouw-domein.com/share.jpg" maxlength="500">
    4444      </label>
    4545      <label>
    46         <span>Taal-locale <small class="form-hint-inline">— og:locale, bv. <code>nl_NL</code> of <code>en_US</code></small></span>
     46        <span><%= t('aseo.og_locale') %> <small class="form-hint-inline">— <%= t('aseo.og_locale_hint_pre') %> <code>nl_NL</code> <%= t('aseo.og_locale_hint_or') %> <code>en_US</code></small></span>
    4747        <input type="text" name="og_locale" value="<%= site.og_locale || '' %>" placeholder="nl_NL" maxlength="32">
    4848      </label>
    4949      <label>
    50         <span>Twitter / X-handle <small class="form-hint-inline">— met @</small></span>
     50        <span><%= t('aseo.twitter') %> <small class="form-hint-inline">— <%= t('aseo.twitter_hint') %></small></span>
    5151        <input type="text" name="twitter" value="<%= site.twitter || '' %>" placeholder="@jouwnaam" maxlength="64">
    5252      </label>
    5353      <label>
    54         <span>Facebook App-ID <small class="form-hint-inline">— fb:app_id (optioneel)</small></span>
     54        <span><%= t('aseo.fb_app') %> <small class="form-hint-inline">— <%= t('aseo.fb_app_hint') %></small></span>
    5555        <input type="text" name="facebook_app_id" value="<%= site.facebook_app_id || '' %>" maxlength="64">
    5656      </label>
     
    5858
    5959    <fieldset>
    60       <legend>Uitgever (JSON-LD / rich results)</legend>
     60      <legend><%= t('aseo.publisher_legend') %></legend>
    6161      <label>
    62         <span>Type</span>
     62        <span><%= t('aseo.type') %></span>
    6363        <select name="schema_type">
    64           <option value="Person" <%= site.schema_type === 'Organization' ? '' : 'selected' %>>Persoon</option>
    65           <option value="Organization" <%= site.schema_type === 'Organization' ? 'selected' : '' %>>Organisatie / bedrijf</option>
     64          <option value="Person" <%= site.schema_type === 'Organization' ? '' : 'selected' %>><%= t('aseo.type_person') %></option>
     65          <option value="Organization" <%= site.schema_type === 'Organization' ? 'selected' : '' %>><%= t('aseo.type_org') %></option>
    6666        </select>
    6767      </label>
    6868      <label>
    69         <span>Naam <small class="form-hint-inline">— valt terug op de site-titel</small></span>
     69        <span><%= t('aseo.publisher_name') %> <small class="form-hint-inline">— <%= t('aseo.publisher_name_hint') %></small></span>
    7070        <input type="text" name="publisher_name" value="<%= site.publisher_name || '' %>" maxlength="200">
    7171      </label>
    7272      <label>
    73         <span>URL</span>
     73        <span><%= t('aseo.publisher_url') %></span>
    7474        <input type="text" name="publisher_url" value="<%= site.publisher_url || '' %>" placeholder="https://jouw-domein.com" maxlength="200">
    7575      </label>
    7676      <label>
    77         <span>Logo (URL)</span>
     77        <span><%= t('aseo.publisher_logo') %></span>
    7878        <input type="text" name="publisher_logo" value="<%= site.publisher_logo || '' %>" placeholder="https://jouw-domein.com/logo.png" maxlength="500">
    7979      </label>
     
    8181
    8282    <fieldset>
    83       <legend>Zoekmachine-verificatie</legend>
     83      <legend><%= t('aseo.verify_legend') %></legend>
    8484      <label>
    85         <span>Google site-verificatie</span>
     85        <span><%= t('aseo.verify_google') %></span>
    8686        <input type="text" name="google_verification" value="<%= site.google_verification || '' %>" maxlength="200">
    8787      </label>
    8888      <label>
    89         <span>Bing <small class="form-hint-inline">— msvalidate.01</small></span>
     89        <span><%= t('aseo.verify_bing') %> <small class="form-hint-inline">— <%= t('aseo.verify_bing_hint') %></small></span>
    9090        <input type="text" name="bing_verification" value="<%= site.bing_verification || '' %>" maxlength="200">
    9191      </label>
    9292      <label>
    93         <span>Pinterest <small class="form-hint-inline">— p:domain_verify</small></span>
     93        <span><%= t('aseo.verify_pinterest') %> <small class="form-hint-inline">— <%= t('aseo.verify_pinterest_hint') %></small></span>
    9494        <input type="text" name="pinterest_verification" value="<%= site.pinterest_verification || '' %>" maxlength="200">
    9595      </label>
    9696      <label>
    97         <span>Yandex</span>
     97        <span><%= t('aseo.verify_yandex') %></span>
    9898        <input type="text" name="yandex_verification" value="<%= site.yandex_verification || '' %>" maxlength="200">
    9999      </label>
    100100    </fieldset>
    101101
    102     <button type="submit" class="btn btn-primary">SEO opslaan</button>
     102    <button type="submit" class="btn btn-primary"><%= t('aseo.save') %></button>
    103103  </form>
    104104</div>
Note: See TracChangeset for help on using the changeset viewer.