diff --git a/_includes/layouts/base.njk b/_includes/layouts/base.njk
index 5bc99b3..bc5278e 100644
--- a/_includes/layouts/base.njk
+++ b/_includes/layouts/base.njk
@@ -23,17 +23,11 @@
- {# Compute OG slug inline from page.url using string ops — avoid filter calls
- which may be affected by Eleventy 3.x parallel rendering race conditions.
- page.url is correct (verified via og:url), compute slug inline. #}
- {% set _urlParts = page.url.split('/') | reject("equalto", "") | list %}
- {% if _urlParts | length >= 5 %}
- {% set _ogSlug = _urlParts[1] + '-' + _urlParts[2] + '-' + _urlParts[3] + '-' + _urlParts[4] %}
- {% else %}
- {% set _ogSlug = _urlParts | last | default("") %}
- {% endif %}
+ {# Compute OG slug from page.url — NOT permalink or eleventyComputed values.
+ page.url may be false for pages with permalink:false (e.g., about.njk),
+ so guard with (page.url or ""). The ogSlug filter handles empty strings. #}
+ {% set _ogSlug = (page.url or "") | ogSlug %}
{% set _hasOg = _ogSlug | hasOgImage %}
-
{% if ogPhoto and ogPhoto != "" and (ogPhoto | length) > 10 %}
{% elif image and image != "" and (image | length) > 10 %}