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

@@ -25,6 +25,13 @@
<meta name="twitter:description" content="Through honest first-hand stories, future students received support for their first step towards their new home.">
<meta name="twitter:image" content="https://msosorg.com/images/event3-photo-1.webp">
<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>
<script type="application/ld+json">{"@context":"https://schema.org","@type":"Article","headline":"Meet Student Slovenia 2023","description":"Through honest first-hand stories, future students received support for their first step towards their new home.","image":"https://msosorg.com/images/event3-photo-1.webp","inLanguage":"en","author":{"@type":"Organization","name":"Macedonian Student Organisation in Slovenia","url":"https://msosorg.com/en/"},"publisher":{"@type":"Organization","name":"Macedonian Student Organisation in Slovenia","logo":{"@type":"ImageObject","url":"https://msosorg.com/images/1-logo.png"}},"mainEntityOfPage":"https://msosorg.com/en/projects/meet-student-slovenia-2023/"}</script>
<script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://msosorg.com/en/"},{"@type":"ListItem","position":2,"name":"Events & projects","item":"https://msosorg.com/en/projects/"},{"@type":"ListItem","position":3,"name":"Meet Student Slovenia 2023","item":"https://msosorg.com/en/projects/meet-student-slovenia-2023/"}]}</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">
@@ -204,7 +211,7 @@
</header>
<figure class="article-main-image">
<img src="../../../images/event3-photo-1.webp" alt="Panel discussion at the 'Meet Student Slovenia 2023' event">
<img fetchpriority="high" src="../../../images/event3-photo-1.webp" alt="Panel discussion at the 'Meet Student Slovenia 2023' event">
</figure>
<div class="article-body">
@@ -214,7 +221,7 @@
<p>Instead of dry information, students had the opportunity to hear real stories, from those who are already walking the same path. Students from Ljubljana, Maribor, and Koper talked about their challenges, first impressions, funny situations, and moments when community support was crucial. And the audience? They absorbed everything with great attention, because exactly those questions that are never written in brochures, here they received honest answers.</p>
<figure class="article-inline-image">
<img src="../../../images/event3-photo-2.webp" alt="Participants of the panel discussion">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-2.webp" alt="Participants of the panel discussion">
<figcaption>Igor Arsov from the University of Primorska recounts his student experience at the Faculty of Management.</figcaption>
</figure>
@@ -222,12 +229,12 @@
<p>Our members Kiara Lazić, Angel Naumov, Klimentina Čapovska, and Igor Arsov appeared on stage, each with their own story, their own faculty, their own city. Together with moderator Leon Šumanski and host Vasil Hanџiski, they transformed the panel into a real conversation that felt more like a friendly get-together than a formal discussion. They talked about exams, new friendships, life in student dorms, and how important it is not to give up even when things seem hardest.</p>
<figure class="article-inline-image">
<img src="../../../images/event3-photo-3.webp" alt="Vasil Hanџiski at the opening of the event">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-3.webp" alt="Vasil Hanџiski at the opening of the event">
<figcaption>Photograph from the opening of the event with the host Vasil Hanџiski.</figcaption>
</figure>
<figure class="article-inline-image">
<img src="../../../images/event3-photo-4.webp" alt="The audience at the event">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-4.webp" alt="The audience at the event">
<figcaption>Photograph of the event participants. We were a little surprised by the interest, but somehow we managed to fit everyone!♡</figcaption>
</figure>
@@ -236,15 +243,15 @@
<p>At the event, we received significant support and assistance from Melita Sekulovska in organizing the space and Aleksandar Popovski in designing the organization's website. We sincerely thanked them for their dedicated work, as well as the event coordinator, Lea Janačkovska, who made this event extraordinary.</p>
<figure class="article-inline-image">
<img src="../../../images/event3-photo-5.webp" alt="Mr. Branko Gregović and H.E. Gregor Presker">
<img src="../../../images/event3-photo-6.webp" alt="Kristijan Popovski, Melita Sekulovska, Lea Janačkovska, Marija Koštrevska and Aleksandar Popovski with certificates of appreciation">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-5.webp" alt="Mr. Branko Gregović and H.E. Gregor Presker">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-6.webp" alt="Kristijan Popovski, Melita Sekulovska, Lea Janačkovska, Marija Koštrevska and Aleksandar Popovski with certificates of appreciation">
<figcaption>The top two pictures show Mr. Branko Greganović, Chairman of the Management Board of NLB Bank Skopje, and on the right is H.E. the Ambassador of the Republic of Slovenia in North Macedonia, Mr. Gregor Presker. The bottom pictures show the President Kristijan Popovski, Melita Sekulovska, Lea Janačkovska, Marija Koštrevska, and Aleksandar Popovski.</figcaption>
</figure>
<p>With the help of Dijag doo company, we prepared two plaques for the Embassy and NLB Bank as a sign of gratitude for all the help and support they provided.</p>
<figure class="article-inline-image">
<img src="../../../images/event3-photo-7.webp" alt="Plaques for NLB Bank Skopje and the Embassy of the Republic of Slovenia">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-7.webp" alt="Plaques for NLB Bank Skopje and the Embassy of the Republic of Slovenia">
<figcaption>Photograph of the plaques we presented to NLB Bank Skopje and the Embassy of the Republic of Slovenia in North Macedonia.</figcaption>
</figure>
@@ -252,7 +259,7 @@
<p>Because this event was not just another presentation. It was a hand extended to future students, a message that they are not alone, that a community is already waiting for them. Some left with new friends, others with concrete answers to questions that had bothered them for months. But everyone left with the same feeling: that Slovenia is no longer an unknown place, but a new home where they will be part of something bigger.</p>
<figure class="article-inline-image">
<img src="../../../images/event3-photo-8.webp" alt="Attendees at the event">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-8.webp" alt="Attendees at the event">
<figcaption>Photographs of the attendees at the event!</figcaption>
</figure>
@@ -265,7 +272,7 @@
<p>A special moment of the event was the address by the Consul of the Embassy of the Republic of Slovenia in North Macedonia, Mr. Martin Glazar. He briefly presented the most important steps of the process for obtaining a temporary residence permit, one of the biggest concerns and challenges for all foreign students in Slovenia. In this way, future students gained a clearer picture of what awaits them and how to more easily deal with administrative procedures.</p>
<figure class="article-inline-image">
<img src="../../../images/event3-photo-9.webp" alt="The Consul introducing students to the process of obtaining a temporary residence permit">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-9.webp" alt="The Consul introducing students to the process of obtaining a temporary residence permit">
<figcaption>Photograph of the consul introducing students in an interesting way to the process of obtaining a temporary residence permit!</figcaption>
</figure>
@@ -273,7 +280,7 @@
<p>Not everyone managed to be present in the hall, but that's why we made sure no one was left without this experience. We broadcast the event live through our Facebook page, and the recording is still available. If you want to experience the atmosphere and hear the stories first-hand, you can watch the entire event at this link here.</p>
<figure class="article-inline-image">
<img src="../../../images/event3-photo-10.webp" alt="Poster for the 'Meet Student Slovenia' event">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-10.webp" alt="Poster for the 'Meet Student Slovenia' event">
<figcaption>Photograph of the event poster!</figcaption>
</figure>
@@ -290,7 +297,7 @@
<p>Thanks to everyone who was part of this event, and to future students, we say: your story in Slovenia is just beginning, and we are here to be a part of it.</p>
<figure class="article-inline-image">
<img src="../../../images/event3-photo-11.png" alt="A small part of the MSOS team">
<img loading="lazy" decoding="async" src="../../../images/event3-photo-11.png" alt="A small part of the MSOS team">
<figcaption>Photo of a small part of the team because we forgot to take a group photo!&#129322;</figcaption>
</figure>
</div>
@@ -299,7 +306,7 @@
<hr>
<div class="author-share-section">
<div class="author-details">
<img src="../../../images/about_kristijan_min.webp" alt="Avatar of Kristijan Popovski">
<img loading="lazy" decoding="async" src="../../../images/about_kristijan_min.webp" alt="Avatar of Kristijan Popovski">
<div class="author-text">
<p class="author-name">Kristijan Popovski</p>
<p class="author-title">President and Founder</p>
@@ -339,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>