SEO polish: OG image, favicons, 404, article schema, image optimization

- Add branded 1200x630 og-default.jpg; article pages use their hero as
  og:image, others use the default
- Wire the existing (previously unlinked) favicon set into every page
- Add branded 404.html with root-absolute paths + noindex
- Emit Article + localized BreadcrumbList JSON-LD on all article pages
- Convert 74 heavy served photos to WebP (28MB -> 8.5MB, -70%), rewrite
  references, add loading=lazy/decoding=async to below-fold images and
  fetchpriority=high to heroes (protect LCP)
- Stop tracking images/original/ (458MB of unused source masters; kept on
  disk, gitignored) and ignore .playwright-mcp/

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
popovskikandClaude Opus 4.8 committed 2026-08-02 12:15:53 +02:00
1 parent b393859467
commit 314667f692
429 files changed
+2559 -1106

No files matched your search

+14 -9
View File
@@ -16,15 +16,20 @@
<meta property="og:title" content="Spoznaj Slovenijo - MSOS">
<meta property="og:description" content="Slovenija je na zemljevidu morda majhna, vendar se med Alpami, Jadransko obalo, zelenimi rekami, starimi mesti in mirnimi kotički skriva veliko. V teh zgodbah…">
<meta property="og:url" content="https://msosorg.com/si/get-to-know-slovenia/">
<meta property="og:image" content="https://msosorg.com/images/1-logo.png">
<meta property="og:image" content="https://msosorg.com/images/og-default.jpg">
<meta property="og:locale" content="sl_SI">
<meta property="og:locale:alternate" content="en_GB">
<meta property="og:locale:alternate" content="mk_MK">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Spoznaj Slovenijo - MSOS">
<meta name="twitter:description" content="Slovenija je na zemljevidu morda majhna, vendar se med Alpami, Jadransko obalo, zelenimi rekami, starimi mesti in mirnimi kotički skriva veliko. V teh zgodbah…">
<meta name="twitter:image" content="https://msosorg.com/images/1-logo.png">
<meta name="twitter:image" content="https://msosorg.com/images/og-default.jpg">
<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","name":"Makedonska študentska organizacija v Sloveniji","alternateName":"MSOS","url":"https://msosorg.com/si/","logo":"https://msosorg.com/images/1-logo.png","email":"info@msosorg.com","address":{"@type":"PostalAddress","streetAddress":"Masarykova cesta 24","postalCode":"1000","addressLocality":"Ljubljana","addressCountry":"SI"},"sameAs":["https://www.facebook.com/msos.org","https://www.instagram.com/msosorg_com","https://www.linkedin.com/company/msos-org","https://www.youtube.com/@msosorg"]}</script>
<link rel="icon" type="image/png" href="/favicon-96x96.png" sizes="96x96">
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
<link rel="shortcut icon" href="/favicon.ico">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="manifest" href="/site.webmanifest">
<!-- SEO:END -->
<!-- Google Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
@@ -196,7 +201,7 @@
<!-- Story: Dobrodošli v Sloveniji -->
<article class="post-card" data-category="identity">
<a href="welcome-to-slovenia/" class="post-link">
<img src="../../images/slovenia-welcome-hero.jpg" alt="Lake Jasna near Kranjska Gora, with mountain peaks reflected in the water" class="post-image">
<img loading="lazy" decoding="async" src="../../images/slovenia-welcome-hero.webp" alt="Lake Jasna near Kranjska Gora, with mountain peaks reflected in the water" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Ekipa • Ljudje in identiteta</p>
<h3 class="post-title">Dobrodošli v Sloveniji</h3>
@@ -207,7 +212,7 @@
<!-- Story: Ljubljana skozi naše oči -->
<article class="post-card" data-category="places">
<a href="ljubljana-through-our-eyes/" class="post-link">
<img src="../../images/slovenia-ljubljana-river-life-hero.jpg" alt="A crowd gathered along the Ljubljanica during an event in central Ljubljana" class="post-image">
<img loading="lazy" decoding="async" src="../../images/slovenia-ljubljana-river-life-hero.webp" alt="A crowd gathered along the Ljubljanica during an event in central Ljubljana" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Ekipa • Kraji in narava</p>
<h3 class="post-title">Ljubljana skozi naše oči</h3>
@@ -218,7 +223,7 @@
<!-- Story: Bled, več kot znameniti razgled -->
<article class="post-card" data-category="places">
<a href="lake-bled-beyond-the-famous-view/" class="post-link">
<img src="../../images/slovenia-bled-lakeside-walk-hero.jpg" alt="A walking path beside Lake Bled with the island and mountains in view" class="post-image">
<img loading="lazy" decoding="async" src="../../images/slovenia-bled-lakeside-walk-hero.webp" alt="A walking path beside Lake Bled with the island and mountains in view" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Ekipa • Kraji in narava</p>
<h3 class="post-title">Bled, več kot znameniti razgled</h3>
@@ -229,7 +234,7 @@
<!-- Story: Prvi okus slovenske kuhinje -->
<article class="post-card" data-category="food">
<a href="a-first-taste-of-slovenian-food/" class="post-link">
<img src="../../images/slovenia-food-regional-table-hero.jpg" alt="Several regional Slovenian dishes served together on a table" class="post-image">
<img loading="lazy" decoding="async" src="../../images/slovenia-food-regional-table-hero.webp" alt="Several regional Slovenian dishes served together on a table" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Ekipa • Hrana in okusi</p>
<h3 class="post-title">Prvi okus slovenske kuhinje</h3>
@@ -240,7 +245,7 @@
<!-- Story: Slovenske navade, ki vas lahko presenetijo -->
<article class="post-card" data-category="culture">
<a href="slovenian-habits-that-may-surprise-you/" class="post-link">
<img src="../../images/slovenia-habits-guest-slippers-hero.jpg" alt="A pair of slippers by the entrance of a Slovenian home" class="post-image">
<img loading="lazy" decoding="async" src="../../images/slovenia-habits-guest-slippers-hero.webp" alt="A pair of slippers by the entrance of a Slovenian home" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Ekipa • Kultura in tradicije</p>
<h3 class="post-title">Slovenske navade, ki vas lahko presenetijo</h3>
@@ -251,7 +256,7 @@
<!-- Story: Zgodbe Slovenije v kamnu in tradiciji -->
<article class="post-card" data-category="heritage">
<a href="slovenias-stories-in-stone-and-tradition/" class="post-link">
<img src="../../images/slovenia-heritage-plecnik-daily-life-hero.jpg" alt="A Plečnik-designed public space beside the Ljubljanica" class="post-image">
<img loading="lazy" decoding="async" src="../../images/slovenia-heritage-plecnik-daily-life-hero.webp" alt="A Plečnik-designed public space beside the Ljubljanica" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Ekipa • Zgodovina in dediščina</p>
<h3 class="post-title">Zgodbe Slovenije v kamnu in tradiciji</h3>
@@ -280,7 +285,7 @@
<div class="footer-main">
<div class="footer-info">
<div class="footer-logo">
<img src="../../images/13-whitelogo.png" alt="Logotip Makedonske študentske organizacije v Sloveniji">
<img loading="lazy" decoding="async" src="../../images/13-whitelogo.png" alt="Logotip Makedonske študentske organizacije v Sloveniji">
</div>
<p class="footer-legal-name">Društvo Makedonska Študentska Organizacija v Sloveniji za študentsko podporo in kulturno sodelovanje</p>
<p>