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

+17 -12
View File
@@ -16,15 +16,20 @@
<meta property="og:title" content="Projects - Macedonian Student Organisation in Slovenia">
<meta property="og:description" content="The events, projects and moments that bring the Macedonian student community in Slovenia together.">
<meta property="og:url" content="https://msosorg.com/en/projects/">
<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="en_GB">
<meta property="og:locale:alternate" content="mk_MK">
<meta property="og:locale:alternate" content="sl_SI">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Projects - Macedonian Student Organisation in Slovenia">
<meta name="twitter:description" content="The events, projects and moments that bring the Macedonian student community in Slovenia together.">
<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":"Macedonian Student Organisation in Slovenia","alternateName":"MSOS","url":"https://msosorg.com/en/","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">
@@ -202,7 +207,7 @@
<!-- Project: Humanitarian Sports Tournament in Maribor -->
<article class="post-card" data-category="events" data-subcategory="sports">
<a href="humanitarian-tournament-in-maribor/" class="post-link">
<img src="../../images/maribor-tournament-1.png" alt="Humanitarian Sports Tournament in Maribor" class="post-image">
<img loading="lazy" decoding="async" src="../../images/maribor-tournament-1.webp" alt="Humanitarian Sports Tournament in Maribor" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Team • 5 Apr 2025 • Event</p>
<h3 class="post-title">Humanitarian Sports Tournament in Maribor</h3>
@@ -213,7 +218,7 @@
<!-- Project: In Memory of the Kochani Victims -->
<article class="post-card" data-category="events">
<a href="in-memory-of-the-kochani-victims/" class="post-link">
<img src="../../images/kochani-1.png" alt="In Memory of the Kochani Victims" class="post-image">
<img loading="lazy" decoding="async" src="../../images/kochani-1.webp" alt="In Memory of the Kochani Victims" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Team • 21 Mar 2025 • Event</p>
<h3 class="post-title">In Memory of the Kochani Victims</h3>
@@ -224,7 +229,7 @@
<!-- Project: Paint &amp; Wine at Sunset -->
<article class="post-card" data-category="events" data-subcategory="cultural">
<a href="paint-and-wine-at-sunset/" class="post-link">
<img src="../../images/paint-wine-1.jpg" alt="Paint &amp; Wine at Sunset" class="post-image">
<img loading="lazy" decoding="async" src="../../images/paint-wine-1.webp" alt="Paint &amp; Wine at Sunset" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Team • 8 Mar 2025 • Event</p>
<h3 class="post-title">Paint &amp; Wine at Sunset</h3>
@@ -235,7 +240,7 @@
<!-- Project: In Memory of Frosina Kulakova -->
<article class="post-card" data-category="events">
<a href="in-memory-of-frosina-kulakova/" class="post-link">
<img src="../../images/frosina-1.png" alt="In Memory of Frosina Kulakova" class="post-image">
<img loading="lazy" decoding="async" src="../../images/frosina-1.webp" alt="In Memory of Frosina Kulakova" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Team • 8 Feb 2025 • Event</p>
<h3 class="post-title">In Memory of Frosina Kulakova</h3>
@@ -246,7 +251,7 @@
<!-- Project: Watching Handball Together in Slovenia -->
<article class="post-card" data-category="events" data-subcategory="sports">
<a href="watching-handball-together-in-slovenia/" class="post-link">
<img src="../../images/handball-2025-1.png" alt="Watching Handball Together in Slovenia" class="post-image">
<img loading="lazy" decoding="async" src="../../images/handball-2025-1.webp" alt="Watching Handball Together in Slovenia" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Team • 25 Jan 2025 • Event</p>
<h3 class="post-title">Watching Handball Together in Slovenia</h3>
@@ -257,7 +262,7 @@
<!-- Project: Meet Student Slovenia 2024 -->
<article class="post-card" data-category="events" data-subcategory="educational">
<a href="meet-student-slovenia-2024/" class="post-link">
<img src="../../images/event4-img-1.webp" alt="A group of students at the 'Meet Student Slovenia 2024' event" class="post-image">
<img loading="lazy" decoding="async" src="../../images/event4-img-1.webp" alt="A group of students at the 'Meet Student Slovenia 2024' event" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Team • 16 Sep 2024 • Event</p>
<h3 class="post-title">Meet Student Slovenia 2024</h3>
@@ -268,7 +273,7 @@
<!-- Project: Morning Coffee in front of CTK, 2024 -->
<article class="post-card" data-category="student-life">
<a href="morning-coffee-in-front-of-ctk/" class="post-link">
<img src="../../images/event4-image1.webp" alt="Students enjoying coffee and burek in front of CTK library" class="post-image">
<img loading="lazy" decoding="async" src="../../images/event4-image1.webp" alt="Students enjoying coffee and burek in front of CTK library" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Team • 8 Jun 2024 • Student Life</p>
<h3 class="post-title">Morning Coffee in front of CTK, 2024</h3>
@@ -279,7 +284,7 @@
<!-- Project: Meet Student Slovenia 2023 -->
<article class="post-card" data-category="events" data-subcategory="educational">
<a href="meet-student-slovenia-2023/" class="post-link">
<img src="../../images/event3-photo-1.webp" alt="Panel discussion at the 'Meet Student Slovenia 2023' event" class="post-image">
<img loading="lazy" decoding="async" src="../../images/event3-photo-1.webp" alt="Panel discussion at the 'Meet Student Slovenia 2023' event" class="post-image">
<div class="post-content">
<p class="post-meta">MSOS Team • 18 Sep 2023 • Event</p>
<h3 class="post-title">Meet Student Slovenia 2023</h3>
@@ -290,7 +295,7 @@
<!-- Project: Macedonian Student Night -->
<article class="post-card" data-category="events" data-subcategory="entertainment">
<a href="macedonian-student-night-in-ljubljana/" class="post-link">
<img src="../../images/msnl-1.webp" alt="Atmosphere from the Macedonian Student Night in Ljubljana" class="post-image">
<img loading="lazy" decoding="async" src="../../images/msnl-1.webp" alt="Atmosphere from the Macedonian Student Night in Ljubljana" class="post-image">
<div class="post-content">
<p class="post-meta">Kristijan Popovski • 8 Oct 2022 • Event</p>
<h3 class="post-title">Macedonian Student Night in Ljubljana</h3>
@@ -341,7 +346,7 @@
<div class="footer-main">
<div class="footer-info">
<div class="footer-logo">
<img src="../../images/13-whitelogo.png" alt="Macedonian Student Organisation in Slovenia Logo">
<img loading="lazy" decoding="async" src="../../images/13-whitelogo.png" alt="Macedonian Student Organisation in Slovenia Logo">
</div>
<p class="footer-legal-name">Društvo Makedonska Študentska Organizacija v Sloveniji za študentsko podporo in kulturno sodelovanje</p>
<p>