Update blog images, remove deleted posts, and configure rotating featured post

This commit is contained in:
MichalC
2026-07-19 19:40:14 +02:00
parent d545e7fdcc
commit 5c56c6b05a
78 changed files with 238 additions and 177 deletions
+3 -7
View File
@@ -1,6 +1,5 @@
import { Metadata } from 'next';
import { HeroSection } from '@/components/sections/HeroSection';
import { FeaturedPost } from '@/components/sections/FeaturedPost';
import { PostsGrid } from '@/components/sections/PostsGrid';
import { CtaBanner } from '@/components/sections/CtaBanner';
import { getPosts, getFeaturedPost } from '@/content/posts';
@@ -13,6 +12,8 @@ export const metadata: Metadata = {
}
};
export const revalidate = 86400; // Regenerate every 24 hours
export default function BlogPage() {
const allPosts = getPosts();
const featuredPost = getFeaturedPost();
@@ -34,12 +35,7 @@ export default function BlogPage() {
/>
<section className="py-16 md:py-24 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div className="mb-16">
<h2 className="text-2xl font-bold text-primary font-heading mb-8">Artykuł wyróżniony</h2>
<FeaturedPost post={featuredPost} />
</div>
<PostsGrid posts={remainingPosts} />
<PostsGrid posts={remainingPosts} featuredPost={featuredPost} />
</section>
<CtaBanner
+2 -2
View File
@@ -288,12 +288,12 @@ export function KalkulatorClient({ products }: Props) {
<p className="font-bold text-primary">Klimatyzacja</p>
<p className="text-xs text-text-muted mt-1">Chłodzenie latem, opcjonalne grzanie zimą</p>
</button>
{/* <button onClick={() => setDeviceType('pompa')}
<button onClick={() => setDeviceType('pompa')}
className={`p-5 rounded-xl border-2 text-left transition-all ${deviceType === 'pompa' ? 'border-accent bg-accent/5' : 'border-border hover:border-accent'}`}>
<span className="text-3xl mb-2 block">🔥</span>
<p className="font-bold text-primary">Pompa ciepła</p>
<p className="text-xs text-text-muted mt-1">Głównie ogrzewanie domu z niskim kosztem eksploatacji</p>
</button> */}
</button>
</div>
{deviceType === 'pompa' && !pumpFormSent && (
<div className="mt-4 p-5 bg-white border border-border rounded-2xl flex flex-col gap-4">
+11 -1
View File
@@ -6,9 +6,11 @@ import Image from 'next/image';
import { Post } from '@/types/types';
import { cn } from '@/lib/utils';
import { Calendar, ArrowRight, ChevronLeft, ChevronRight } from 'lucide-react';
import { FeaturedPost } from '@/components/sections/FeaturedPost';
interface PostsGridProps {
posts: Post[];
featuredPost?: Post;
}
const POSTS_PER_PAGE = 6;
@@ -20,7 +22,7 @@ const categories = [
{ id: 'porady', label: 'Porady' },
];
export function PostsGrid({ posts }: PostsGridProps) {
export function PostsGrid({ posts, featuredPost }: PostsGridProps) {
const [activeCategory, setActiveCategory] = useState('wszystkie');
const [currentPage, setCurrentPage] = useState(1);
@@ -45,6 +47,14 @@ export function PostsGrid({ posts }: PostsGridProps) {
return (
<div className="py-12">
{/* Artykuł Wyróżniony (tylko na 1 stronie) */}
{featuredPost && currentPage === 1 && (
<div className="mb-16">
<h2 className="text-2xl font-bold text-primary font-heading mb-8">Artykuł wyróżniony</h2>
<FeaturedPost post={featuredPost} />
</div>
)}
{/* Filtry */}
<div className="flex flex-wrap items-center gap-3 mb-12">
{categories.map((category) => (
+67 -167
View File
@@ -20,7 +20,7 @@ export const posts: Post[] = [
excerpt: 'Zastanawiasz się jaki klimatyzator wybrać do swojego mieszkania? Sprawdź nasz poradnik i poznaj różnice między systemami split i multisplit.',
date: '2026-01-05T10:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/jaki-klimatyzator-wybrac-do-mieszkania.webp',
featured: true,
content: `
<h2>Wybór odpowiedniego klimatyzatora to kluczowa decyzja</h2>
@@ -43,7 +43,7 @@ export const posts: Post[] = [
excerpt: 'Dowiedz się, ile kosztuje montaż klimatyzacji w 2026 roku. Sprawdź cennik usług, ukryte koszty i dowiedz się, jak mądrze porównywać oferty.',
date: '2026-01-12T10:00:00Z',
author: 'Janusz Nowak',
image: '',
image: '/images/blogs_images/ile-kosztuje-montaz-klimatyzacji.webp',
content: `
<h2>Koszty montażu klimatyzacji - co musisz wiedzieć?</h2>
<p>Ile kosztuje montaż klimatyzacji w 2026 roku? To zależy od wielu czynników. Sam zakup urządzenia to tylko część inwestycji. Standardowy montaż systemu typu split kosztuje zazwyczaj od 1200 zł do 2000 zł, natomiast przy bardziej skomplikowanych systemach multisplit cena rośnie i wynosi od 2500 zł do nawet 5000 zł.</p>
@@ -66,7 +66,7 @@ export const posts: Post[] = [
excerpt: 'Zastanawiasz się nad wykorzystaniem klimatyzacji do ogrzewania? Odkryj zalety pompy ciepła powietrze-powietrze i dowiedz się, czy to opłacalne.',
date: '2026-01-18T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/klimatyzacja-jako-ogrzewanie-zimowe.webp',
content: `
<h2>Czy klimatyzator sprawdzi się zimą?</h2>
<p>Klimatyzacja jako ogrzewanie zimowe staje się w Polsce coraz bardziej popularna. Wynika to z faktu, że nowoczesne klimatyzatory to tak naprawdę pompy ciepła typu powietrze-powietrze. Działają one na zasadzie odwróconego obiegu chłodniczego, pobierając darmowe ciepło z powietrza na zewnątrz i przekazując je do wnętrza.</p>
@@ -87,7 +87,7 @@ export const posts: Post[] = [
excerpt: 'Wybór między pompą ciepła a gazem to dylemat wielu inwestorów. Porównujemy koszty instalacji, eksploatacji i zwrot z inwestycji.',
date: '2026-01-25T10:00:00Z',
author: 'Janusz Nowak',
image: '',
image: '/images/blogs_images/pompa-ciepla-vs-gaz-co-wybrac.webp',
featured: true,
content: `
<h2>Odwieczny dylemat: Pompa ciepła czy gaz?</h2>
@@ -109,7 +109,7 @@ export const posts: Post[] = [
excerpt: 'Nie wiesz jaką moc powinien mieć Twój klimatyzator? Poznaj wzory obliczeniowe, współczynniki korekcyjne i zasady profesjonalnego doboru.',
date: '2026-02-08T10:00:00Z',
author: 'Janusz Nowak',
image: '',
image: '/images/blogs_images/jak-dobrac-moc-klimatyzatora.webp',
content: `
<h2>Moc chłodnicza a powierzchnia — podstawowa zasada</h2>
<p>Jak dobrać moc klimatyzatora? To jedno z najważniejszych pytań. Zbyt słaby klimatyzator będzie pracował bez przerwy (zużywając mnóstwo prądu), a zbyt mocny wychłodzi pokój za szybko, powodując dyskomfort i częste cykle włącz/wyłącz.</p>
@@ -132,7 +132,7 @@ export const posts: Post[] = [
excerpt: 'Split czy multisplit? Poznaj zalety i wady obu rozwiązań, porównaj koszty i zdecyduj, który system klimatyzacji będzie lepszy dla Twoich potrzeb.',
date: '2026-02-15T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/klimatyzator-split-czy-multisplit.webp',
content: `
<h2>Klimatyzacja do kilku pomieszczeń — co sprawdzi się lepiej?</h2>
<p>Wybierając klimatyzację do więcej niż jednego pokoju, stajesz przed dylematem: klimatyzator split czy multisplit? Oba rozwiązania mają swoje wyraźne plusy i minusy.</p>
@@ -154,7 +154,7 @@ export const posts: Post[] = [
excerpt: 'Regularny serwis klimatyzacji to gwarancja zdrowia i sprawnego działania. Dowiedz się, z czego składa się przegląd i jak często go wykonywać.',
date: '2026-02-22T10:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/serwis-klimatyzacji-co-i-kiedy.webp',
content: `
<h2>Dlaczego przeglądy klimatyzacji są konieczne?</h2>
<p>Regularny serwis klimatyzacji to nie tylko warunek utrzymania gwarancji producenta, ale przede wszystkim inwestycja w Twoje zdrowie. W wilgotnym środowisku wymiennika ciepła łatwo o rozwój grzybów, pleśni i bakterii.</p>
@@ -177,7 +177,7 @@ export const posts: Post[] = [
excerpt: 'Czy klimatyzacja osusza powietrze i powoduje przeziębienia? Obalamy mity i sprawdzamy, jak nowoczesne klimatyzatory poprawiają jakość powietrza.',
date: '2026-03-01T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/klimatyzacja-a-jakos-powietrza.webp',
content: `
<h2>Zdrowe powietrze w erze smogu</h2>
<p>Klimatyzacja a jakość powietrza to temat obrosły wieloma mitami. Wiele osób obawia się "klimatyzacyjnej anginy" czy wysuszonego powietrza. Tymczasem poprawnie używana klimatyzacja jest sprzymierzeńcem naszego zdrowia.</p>
@@ -198,7 +198,7 @@ export const posts: Post[] = [
excerpt: 'Poznaj zasadę działania pompy ciepła powietrze-woda. Dowiedz się, jakie warunki musi spełniać dom, aby to ekologiczne źródło ogrzewania było efektywne.',
date: '2026-03-05T10:00:00Z',
author: 'Janusz Nowak',
image: '',
image: '/images/blogs_images/pompa-ciepla-powietrze-woda-jak-dziala.webp',
content: `
<h2>Ekologiczne serce nowoczesnego domu</h2>
<p>Zasada działania pompy ciepła powietrze-woda jest zaskakująco prosta i przypomina działanie lodówki, tylko w odwrotną stronę. Zamiast wytwarzać ciepło (jak piec), pompa transportuje je ze środowiska (z chłodnego powietrza na zewnątrz) do instalacji C.O. w budynku.</p>
@@ -220,7 +220,7 @@ export const posts: Post[] = [
excerpt: 'Zapewnij komfort swoim pracownikom. Przegląd systemów klimatyzacji biurowej, od kasetonowych po kanałowe i VRF. Przepisy BHP a klimatyzacja.',
date: '2026-03-12T10:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/klimatyzacja-w-biurze-co-warto-wiedziec.webp',
content: `
<h2>Komfort pracy to wyższa wydajność</h2>
<p>Klimatyzacja w biurze to w obecnych czasach standard, a nie luksus. Zgodnie z kodeksem pracy, jeśli temperatura w biurze przekracza 28°C, pracodawca musi zapewnić chłodne napoje, a w skrajnych przypadkach skrócić czas pracy. Dlatego instalacja chłodzenia to inwestycja w ciągłość biznesową.</p>
@@ -239,7 +239,7 @@ export const posts: Post[] = [
excerpt: 'Chłodny dom bez wysokich rachunków. Zastosuj te proste triki i sposoby na ekonomiczne używanie klimatyzatora w czasie największych upałów.',
date: '2026-03-20T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/jak-oszczedzac-na-klimatyzacji.webp',
content: `
<h2>Komfort nie musi być drogi</h2>
<p>Jak oszczędzać prąd używając klimatyzacji latem? Nowoczesne klimatyzatory inwerterowe są bardzo energooszczędne, jednak złe nawyki mogą podwoić rachunki za prąd. Oto najważniejsze zasady.</p>
@@ -261,7 +261,7 @@ export const posts: Post[] = [
excerpt: 'Zrozum różnice między czynnikami chłodniczymi R32 i R410A. Dlaczego R32 staje się standardem i jakie to ma znaczenie dla Twojego portfela i środowiska?',
date: '2026-03-25T10:00:00Z',
author: 'Janusz Nowak',
image: '',
image: '/images/blogs_images/czynnik-chlodniczy-r32-r410a.webp',
content: `
<h2>Rewolucja w gazach chłodniczych</h2>
<p>Jeśli przeglądasz parametry klimatyzatorów, na pewno natknąłeś się na oznaczenie czynnika chłodniczego. Do niedawna królował R410A, jednak obecnie absolutnym standardem jest czynnik R32. Co to oznacza dla przeciętnego użytkownika?</p>
@@ -282,7 +282,7 @@ export const posts: Post[] = [
excerpt: 'Planujesz klimatyzację w bloku? Dowiedz się jak uzyskać zgodę spółdzielni, gdzie powiesić agregat i uniknąć konfliktów z sąsiadami.',
date: '2026-04-02T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/montaz-klimatyzacji-w-bloku.webp',
content: `
<h2>Klimatyzacja w bloku to nie samowolka</h2>
<p>Upały w mieszkaniach w bloku bywają nieznośne, a klimatyzacja jest jedynym ratunkiem. Zanim jednak zamówisz montaż, musisz zadbać o formalności. W większości przypadków elewacja budynku oraz płyta balkonu stanowią część wspólną nieruchomości.</p>
@@ -304,7 +304,7 @@ export const posts: Post[] = [
excerpt: 'Alergie na pyłki uciążliwe w domu? Odpowiednio dobrana klimatyzacja ze sterylizatorem i jonizacją może oczyścić powietrze z alergenów.',
date: '2026-04-08T10:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/klimatyzacja-dla-alergikow.webp',
content: `
<h2>Czyste powietrze w czasie pylenia</h2>
<p>Wiosna i lato to koszmar dla alergików. Otwieranie okien w celu przewietrzenia zaprasza pyłki do środka. Zamknięte okna i włączona klimatyzacja to świetne rozwiązanie, o ile wybierzesz model dedykowany osobom wrażliwym na alergeny.</p>
@@ -325,7 +325,7 @@ export const posts: Post[] = [
excerpt: 'Nie czekaj na lipcowe upały! Dowiedz się, dlaczego wiosna to najlepszy moment na zakup i montaż klimatyzacji we Wrocławiu i na Dolnym Śląsku.',
date: '2026-04-15T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/klimatyzacja-wroclaw-kiedy-montowac.webp',
content: `
<h2>Klimatyzacja we Wrocławiu: Bądź szybszy niż słońce</h2>
<p>Klimatyzacja Wrocław to hasło, które bije rekordy popularności w wyszukiwarkach za każdym razem, gdy słupki rtęci na Dolnym Śląsku przekraczają 30 stopni. Niestety, szukanie wykonawcy w środku fali upałów to błąd, który kosztuje czas i pieniądze.</p>
@@ -346,7 +346,7 @@ export const posts: Post[] = [
excerpt: 'Technologia inwerterowa zrewolucjonizowała rynek HVAC. Tłumaczymy przystępnie, jak płynna modulacja sprężarki obniża rachunki za prąd.',
date: '2026-04-20T10:00:00Z',
author: 'Janusz Nowak',
image: '',
image: '/images/blogs_images/jak-dziala-inwenter-klimatyzator.webp',
content: `
<h2>Koniec z szarpaniem energii</h2>
<p>Stare klimatyzatory (typu on/off) działały jak zwykła lodówka – włączały się na pełną moc (100%), chłodziły pomieszczenie z nadwyżką, wyłączały się całkowicie, a po podniesieniu temperatury proces zaczynał się od nowa. Powodowało to ogromne skoki napięcia, zużycie prądu i hałas. Dzisiejszy standard to klimatyzator inwerterowy.</p>
@@ -367,7 +367,7 @@ export const posts: Post[] = [
excerpt: 'Montaż klimatyzacji w Legnicy z ThermCool. Doświadczenie w blokach, kamienicach i domkach. Szybkie terminy i darmowa wycena na miejscu.',
date: '2026-05-02T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/klimatyzacja-legnica-montaz.webp',
content: `
<h2>Chłodna ulga na wyciągnięcie ręki w Legnicy</h2>
<p>Lato w mieście potrafi dać się we znaki. Prowadząc działalność na Dolnym Śląsku, Legnica to dla nas kluczowy rynek, gdzie regularnie montujemy systemy split i multisplit dla klientów indywidualnych i biznesowych.</p>
@@ -387,7 +387,7 @@ export const posts: Post[] = [
excerpt: 'Poznaj koszty i specyfikę instalacji klimatyzacji w Wałbrzychu. Górski klimat to doskonały powód, by używać klimatyzatora z funkcją grzania.',
date: '2026-05-08T10:00:00Z',
author: 'Janusz Nowak',
image: '',
image: '/images/blogs_images/klimatyzacja-walbrzych-ceny.webp',
content: `
<h2>Klimatyzacja nie tylko na lato</h2>
<p>Wałbrzych i jego górzyste okolice charakteryzują się nieco chłodniejszym klimatem i bardziej srogimi zimami niż reszta Dolnego Śląska. Dlatego klimatyzatory montowane w tym regionie niezwykle często służą jako efektywne źródło dogrzewania (pompy ciepła powietrze-powietrze) w sezonach przejściowych i zimą.</p>
@@ -409,7 +409,7 @@ export const posts: Post[] = [
excerpt: 'Masz dom z lat 70. lub 80.? Sprawdź, czy i na jakich warunkach instalacja pompy ciepła bez generalnego remontu elewacji ma sens.',
date: '2026-05-18T10:00:00Z',
author: 'Janusz Nowak',
image: '',
image: '/images/blogs_images/pompa-ciepla-stary-dom.webp',
content: `
<h2>Stary dom, nowa technologia grzewcza</h2>
<p>Wielu inwestorów uważa, że montaż pompy ciepła powietrze-woda ma sens wyłącznie w nowoczesnym budownictwie z ogrzewaniem podłogowym. Pompa ciepła w starym domu (tzw. "wampirze energetycznym") budzi obawy o horrendalne rachunki za prąd. Prawda leży jednak pośrodku.</p>
@@ -430,7 +430,7 @@ export const posts: Post[] = [
excerpt: 'Odbierasz klucze od dewelopera? Najlepszy czas na planowanie klimatyzacji to etap stanu deweloperskiego. Sprawdź dlaczego to takie ważne.',
date: '2026-05-22T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/klimatyzacja-nowe-mieszkanie-deweloper.webp',
content: `
<h2>Wczesne planowanie = ukryte instalacje</h2>
<p>Odbiór mieszkania od dewelopera to idealny moment na przygotowanie infrastruktury pod klimatyzację. Błędem jest czekanie do upalnego lata, gdy ściany są już pomalowane, a podłogi ułożone.</p>
@@ -450,7 +450,7 @@ export const posts: Post[] = [
excerpt: 'Darmowe ogrzewanie i chłodzenie? Tak, jeśli połączysz pompę ciepła z instalacją fotowoltaiczną. Tłumaczymy jak działa autokonsumpcja i dobór mocy.',
date: '2026-05-27T10:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/pompa-ciepla-fotowoltaika-synergia.webp',
featured: true,
content: `
<h2>Święty Graal energetyki domowej</h2>
@@ -465,28 +465,7 @@ export const posts: Post[] = [
<p>Program "Mój Prąd" mocno promuje instalacje hybrydowe (PV + Pompa + Magazyn). Chcesz maksymalnie obniżyć koszty życia w swoim domu na dekady? Wybierz inteligentny system zarządzania energią od ThermCool.</p>
`
},
{
slug: 'klimatyzacja-server-room',
title: 'Klimatyzacja serwerowni i szafy rack — wymagania i rozwiązania',
category: 'klimatyzacja',
excerpt: 'Bezpieczeństwo IT zależy od temperatury. Jak zaprojektować niezawodną klimatyzację precyzyjną do małej i średniej serwerowni.',
date: '2026-05-30T10:00:00Z',
author: 'Janusz Nowak',
image: '',
content: `
<h2>Chłodzenie IT nie uznaje kompromisów</h2>
<p>Zatrzymanie usług informatycznych na skutek przegrzania to dla firmy ogromne straty finansowe i wizerunkowe. Klimatyzacja serwerowni różni się drastycznie od klimatyzacji biurowej – musi pracować 24 godziny na dobę, 365 dni w roku, niezależnie od tego, czy za oknem jest +35°C, czy -25°C.</p>
<h3>Redundancja to absolutna podstawa</h3>
<p>W profesjonalnych projektach stosuje się systemy redundantne (tzw. praca naprzemienna 1+1 lub N+1). Polega to na zainstalowaniu dwóch niezależnych urządzeń współpracujących ze sobą przez specjalny sterownik (tzw. rotator). Jeśli jedno urządzenie ulegnie awarii, drugie natychmiast przejmuje pracę, zapobiegając usmażeniu sprzętu IT.</p>
<h3>Precyzyjna kontrola</h3>
<ul>
<li>Wymagany jest ciągły pomiar temperatury stref zimnych i ciepłych (idealnie 20-24°C).</li>
<li>Kontrola wilgotności – serwery nienawidzą przesuszonego powietrza (wyładowania elektrostatyczne), ani zbyt wilgotnego (zwarcia).</li>
<li>Praca całoroczna: jednostki zew. muszą być wyposażone w grzałki karteru i tacy ociekowej do zimowej pracy.</li>
</ul>
<p>Projektujemy i wykonujemy systemy chłodzenia IT gwarantujące 99,99% uptime. Zabezpiecz swoje dane z nami!</p>
`
},
{
slug: 'klimatyzacja-dom-jednorodzinny-system',
title: 'Klimatyzacja w domu jednorodzinnym — jaki system wybrać?',
@@ -494,7 +473,7 @@ export const posts: Post[] = [
excerpt: 'Budujesz dom? Sprawdź najpopularniejsze konfiguracje klimatyzacji kanałowej, VRF i Multisplit, aby zapewnić chłód w każdym pomieszczeniu.',
date: '2026-06-03T10:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/klimatyzacja-dom-jednorodzinny-system.webp',
content: `
<h2>Zintegrowane chłodzenie nowoczesnego domu</h2>
<p>Dom jednorodzinny daje największe pole do popisu przy projektowaniu systemów wentylacji i klimatyzacji. Montaż 4 oddzielnych klimatyzatorów Split z 4 agregatami psującymi elewację odchodzi do lamusa. Dziś stawia się na zintegrowane rozwiązania.</p>
@@ -516,7 +495,7 @@ export const posts: Post[] = [
excerpt: 'Chcesz oszczędzić na serwisie? Dowiedz się, które elementy klimatyzatora możesz wyczyścić bezpiecznie samodzielnie, a kiedy wezwać specjalistę.',
date: '2026-06-08T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/serwis-klimatyzacji-samemu-co-mozna.webp',
content: `
<h2>Samodzielny serwis – oszczędność czy ryzyko?</h2>
<p>Zlecanie kompleksowego serwisu zewnętrznej firmie raz do roku jest ważne, ale między przeglądami urządzenie szybko łapie kurz. Nie ze wszystkim musisz od razu dzwonić do firmy HVAC.</p>
@@ -537,7 +516,7 @@ export const posts: Post[] = [
excerpt: 'Cichy klimatyzator do sypialni – na co patrzeć w karcie katalogowej? Tłumaczymy skalę decybeli i sprawdzamy dlaczego jednostka zewnętrzna budzi sąsiadów.',
date: '2026-06-12T10:00:00Z',
author: 'Janusz Nowak',
image: '',
image: '/images/blogs_images/halas-klimatyzatora-jak-zmierzyc.webp',
content: `
<h2>Cisza to luksus. Jak jej nie zepsuć?</h2>
<p>Kupując klimatyzator, najczęściej patrzymy na moc, design i cenę. Hałas zauważamy dopiero, gdy urządzenie burzy nam sen w gorącą noc. Specyfikacje sprzętu wyrażają natężenie dźwięku w dB(A) (decybelach akustycznych), których skala jest logarytmiczna (każde 3 dB to podwojenie mocy dźwięku!).</p>
@@ -558,7 +537,7 @@ export const posts: Post[] = [
excerpt: 'Wszyscy mówią, że pompy ciepła są tanie, ale co to znaczy w praktyce? Rozbijamy na czynniki pierwsze roczne rachunki z realnych instalacji w 2026 r.',
date: '2026-06-15T10:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/pompa-ciepla-ile-kosztuje-eksploatacja.webp',
content: `
<h2>Realne koszty w miejsce marketingu</h2>
<p>Producenci w katalogach operują teoretycznymi wskaźnikami COP (często zbadanymi w laboratoryjnych +7°C). My spójrzmy na realne zużycie z instalacji, które wykonaliśmy dla naszych klientów.</p>
@@ -580,7 +559,7 @@ export const posts: Post[] = [
excerpt: 'Mylenie klimatyzacji z rekuperacją to częsty błąd. Wyjaśniamy dlaczego chłodzenie to nie oddychanie, i dlaczego najlepiej wdrożyć oba systemy naraz.',
date: '2026-06-20T10:00:00Z',
author: 'Marta Wiśniewska',
image: '',
image: '/images/blogs_images/klimatyzacja-vs-wentylacja-roznice.webp',
content: `
<h2>Chłodne, czy świeże powietrze?</h2>
<p>Klimatyzacja chłodzi, grzeje, osusza i filtruje. Czego jednak NIE ROBI standardowa klimatyzacja ścienna? <strong>Nie wymienia powietrza na nowe!</strong> Cały proces w systemach Split polega na "mieleniu" tego samego powietrza zamkniętego w Twoim pokoju. Bez przewietrzenia, w sypialni po paru godzinach zacznie drastycznie rosnąć stężenie CO2.</p>
@@ -603,7 +582,7 @@ export const posts: Post[] = [
excerpt: 'Koszt montażu klimatyzacji zależy od wielu czynników - mocy urządzenia, długości instalacji czy trudności dostępu do miejsca montażu. Sprawdzamy, z czego składa się cena i ile realnie trzeba zapłacić.',
date: '2026-07-20T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/ile-kosztuje-montaz-klimatyzacji-w-domu.webp',
featured: false,
content: `
<h2>Od czego zależy koszt montażu klimatyzacji</h2>
@@ -638,7 +617,7 @@ export const posts: Post[] = [
excerpt: 'Nie wiesz, czy lepiej zamontować kilka niezależnych jednostek split, czy jeden system multisplit? Sprawdzamy różnice w kosztach, wydajności i wygodzie użytkowania obu rozwiązań.',
date: '2026-07-21T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/split-czy-multisplit-ktora-klimatyzacja-lepsza.webp',
featured: false,
content: `
<h2>Czym różni się split od multisplit</h2>
@@ -666,7 +645,7 @@ export const posts: Post[] = [
excerpt: 'Zbyt słaby klimatyzator nie schłodzi pokoju, a zbyt mocny generuje niepotrzebne koszty i pracuje mniej komfortowo. Podpowiadamy jak dobrać moc klimatyzatora do pokoju 20 m².',
date: '2026-07-22T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/jaki-klimatyzator-do-pokoju-20-m2.webp',
featured: false,
content: `
<h2>Podstawowa zasada doboru mocy</h2>
@@ -700,7 +679,7 @@ export const posts: Post[] = [
excerpt: 'Miejsce montażu klimatyzacji wpływa na jej wydajność, głośność pracy i żywotność. Sprawdzamy, których lokalizacji lepiej unikać - zarówno dla jednostki wewnętrznej, jak i zewnętrznej.',
date: '2026-07-23T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/gdzie-nie-montowac-klimatyzacji-w-domu.webp',
featured: false,
content: `
<h2>Błędy w umiejscowieniu jednostki wewnętrznej</h2>
@@ -735,7 +714,7 @@ export const posts: Post[] = [
excerpt: 'Planujesz montaż klimatyzacji i chcesz wiedzieć, ile to potrwa? Sprawdzamy, ile realnie zajmuje instalacja jednej jednostki, systemu multisplit i co może wydłużyć czas realizacji.',
date: '2026-07-24T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/ile-trwa-montaz-klimatyzacji.webp',
featured: false,
content: `
<h2>Standardowy czas montażu jednej jednostki</h2>
@@ -770,7 +749,7 @@ export const posts: Post[] = [
excerpt: 'Klimatyzatory przenośne można zainstalować samodzielnie, ale montaż systemu split wymaga uprawnień i specjalistycznego sprzętu. Wyjaśniamy, gdzie przebiega granica między DIY a pracą fachowca.',
date: '2026-07-25T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/czy-mozna-zainstalowac-klimatyzator-samemu.webp',
featured: false,
content: `
<h2>Co można zainstalować samodzielnie</h2>
@@ -804,7 +783,7 @@ export const posts: Post[] = [
excerpt: 'Wybór klimatyzatora to więcej niż tylko marka i moc. Sprawdzamy, na jakie parametry techniczne warto zwrócić uwagę, żeby urządzenie działało sprawnie przez lata.',
date: '2026-07-26T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/na-co-zwrocic-uwage-przy-wyborze-klimatyzatora.webp',
featured: false,
content: `
<h2>Moc chłodnicza dopasowana do pomieszczenia</h2>
@@ -838,7 +817,7 @@ export const posts: Post[] = [
excerpt: 'Skropliny z klimatyzacji, źle odprowadzone, potrafią uszkodzić parapet i elewację. Sprawdzamy, skąd bierze się kondensacja i jak skutecznie się przed nią zabezpieczyć.',
date: '2026-07-27T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/jak-chronic-parapet-przed-kondensacja-z-klimatyzacji.webp',
featured: false,
content: `
<h2>Skąd bierze się kondensacja przy klimatyzacji</h2>
@@ -866,7 +845,7 @@ export const posts: Post[] = [
excerpt: 'Cena serwisu klimatyzacji to nie tylko stawka za roboczogodzinę. Sprawdzamy, z czego składa się ostateczny koszt wizyty technika i naprawy klimatyzacji.',
date: '2026-07-28T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/ile-kosztuje-godzina-pracy-technika-klimatyzacji.webp',
featured: false,
content: `
<h2>Z czego składa się cena wizyty serwisowej</h2>
@@ -900,7 +879,7 @@ export const posts: Post[] = [
excerpt: 'BTU, kW, SEER, SCOP - specyfikacje klimatyzatorów pełne są skrótów, które niewiele mówią bez kontekstu. Rozszyfrowujemy najważniejsze oznaczenia wydajności.',
date: '2026-07-29T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/oznaczenia-wydajnosci-klimatyzatorow.webp',
featured: false,
content: `
<h2>Moc chłodnicza: kW i BTU</h2>
@@ -928,7 +907,7 @@ export const posts: Post[] = [
excerpt: 'Zasada 5 minut to jeden z podstawowych standardów prawidłowego montażu instalacji chłodniczej. Wyjaśniamy, na czym polega i dlaczego jej pominięcie skraca żywotność klimatyzacji.',
date: '2026-07-30T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/zasada-5-minut-w-montazu-klimatyzacji.webp',
featured: false,
content: `
<h2>Na czym polega zasada 5 minut</h2>
@@ -956,7 +935,7 @@ export const posts: Post[] = [
excerpt: 'Jedna jednostka zewnętrzna obsługująca kilka pomieszczeń brzmi kusząco, ale opłacalność multisplit zależy od konkretnej sytuacji. Sprawdzamy, kiedy to rozwiązanie faktycznie się opłaca, a kiedy nie.',
date: '2026-07-31T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/czy-klimatyzacja-multisplit-jest-oplacalna.webp',
featured: false,
content: `
<h2>Od czego zależy opłacalność multisplit</h2>
@@ -984,7 +963,7 @@ export const posts: Post[] = [
excerpt: 'Wymiana starej klimatyzacji na nową zaczyna się od demontażu. Sprawdzamy, ile trwa ten etap, co obejmuje i na co zwrócić uwagę przy wymianie instalacji.',
date: '2026-08-01T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/ile-trwa-demontaz-starej-klimatyzacji.webp',
featured: false,
content: `
<h2>Ile realnie trwa demontaż</h2>
@@ -1012,7 +991,7 @@ export const posts: Post[] = [
excerpt: 'Salon to zwykle najbardziej wymagające pomieszczenie w domu - duży metraż, otwarta kuchnia, dużo szkła. Podpowiadamy, jak dobrać moc klimatyzatora do salonu 30 m².',
date: '2026-08-02T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/jaki-klimatyzator-do-salonu-30-m2.webp',
featured: false,
content: `
<h2>Punkt wyjścia: podstawowe wyliczenie mocy</h2>
@@ -1040,7 +1019,7 @@ export const posts: Post[] = [
excerpt: 'Większość osób myśli o klimatyzacji dopiero w trakcie upałów, ale to najgorszy moment na montaż. Sprawdzamy, kiedy najlepiej zaplanować instalację.',
date: '2026-08-03T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/kiedy-najlepiej-zainstalowac-klimatyzacje-w-domu.webp',
featured: false,
content: `
<h2>Dlaczego lato to najgorszy termin na montaż</h2>
@@ -1068,7 +1047,7 @@ export const posts: Post[] = [
excerpt: 'Nie musisz być fachowcem, żeby zauważyć, czy montaż klimatyzacji przebiega prawidłowo. Podpowiadamy, na co zwrócić uwagę podczas wizyty ekipy montażowej.',
date: '2026-08-04T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/jak-sprawdzic-czy-technicy-montuja-klimatyzacje-prawidlowo.webp',
featured: false,
content: `
<h2>Poziom i mocowanie jednostek</h2>
@@ -1096,7 +1075,7 @@ export const posts: Post[] = [
excerpt: 'Dobra lokalizacja jednostki zewnętrznej to nie kwestia estetyki, tylko realny wpływ na wydajność, hałas i żywotność klimatyzacji. Sprawdzamy techniczne wymogi prawidłowego montażu.',
date: '2026-08-05T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/gdzie-zamontowac-jednostke-zewnetrzna-klimatyzacji.webp',
featured: false,
content: `
<h2>Minimalne odległości od ścian i przeszkód</h2>
@@ -1124,7 +1103,7 @@ export const posts: Post[] = [
excerpt: 'Klimatyzacja do jednego pokoju to najprostszy i zwykle najtańszy wariant montażu. Sprawdzamy, z czego składa się cena i jakie są typowe warianty urządzeń.',
date: '2026-08-06T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/cena-klimatyzacji-do-pokoju.webp',
featured: false,
content: `
<h2>Dlaczego pojedynczy pokój to najprostszy wariant</h2>
@@ -1152,7 +1131,7 @@ export const posts: Post[] = [
excerpt: 'Standardowa oferta montażu klimatyzacji zwykle obejmuje określoną długość instalacji. Sprawdzamy, kiedy potrzebne jest jej przedłużenie i z czego wynika dodatkowy koszt.',
date: '2026-08-07T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/koszty-przedluzenia-rur-w-klimatyzacji.webp',
featured: false,
content: `
<h2>Dlaczego standardowa oferta ma limit długości rur</h2>
@@ -1171,62 +1150,7 @@ export const posts: Post[] = [
<p>Najlepszym sposobem na uniknięcie nieprzewidzianych kosztów jest ustalenie dokładnej trasy instalacji i lokalizacji obu jednostek jeszcze przed podpisaniem zlecenia - podczas bezpłatnej wizji lokalnej technik oceni odległość i od razu poinformuje, czy standardowa długość rur wystarczy. Orientacyjny koszt dla Twojej sytuacji możesz też wstępnie sprawdzić w naszym <a href="/kalkulator">kalkulatorze klimatyzacji</a>.</p>
`
},
{
slug: 'czy-warto-montowac-klimatyzacje-w-piwnicy',
title: 'Czy warto montować klimatyzację w piwniczce?',
metaTitle: 'Czy warto montować klimatyzację w piwnicy?',
metaDescription: 'Montaż klimatyzacji w pomieszczeniu piwnicznym – zalety, ograniczenia i na co zwrócić uwagę przy takiej instalacji.',
category: 'klimatyzacja',
excerpt: 'Piwnica rządzi się innymi prawami niż zwykłe pomieszczenie mieszkalne. Sprawdzamy, czy i kiedy warto montować w niej klimatyzację, oraz na jakie ograniczenia się przygotować.',
date: '2026-08-08T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
featured: false,
content: `
<h2>Kiedy klimatyzacja w piwnicy ma sens</h2>
<p>Montaż klimatyzacji w piwnicy ma sens przede wszystkim wtedy, gdy pomieszczenie pełni funkcję użytkową - domowe biuro, siłownia, pokój hobby, serwerownia czy pomieszczenie z winoteką wymagającą stabilnej temperatury. W przypadku typowej piwnicy gospodarczej, używanej sporadycznie, koszt takiej instalacji zwykle się nie zwraca.</p>
<h2>Wyzwanie numer jeden - brak okna</h2>
<p>Największym technicznym wyzwaniem przy montażu klimatyzacji w pomieszczeniu bez okna jest poprowadzenie instalacji chłodniczej i odprowadzenia skroplin na zewnątrz budynku - zwykle wymaga to przewiercenia ściany fundamentowej lub wykorzystania istniejącego kanału wentylacyjnego. To prace bardziej skomplikowane niż standardowy montaż przez ścianę zewnętrzną na parterze czy wyższej kondygnacji.</p>
<h2>Wilgoć w piwnicy a praca klimatyzacji</h2>
<p>Piwnice są zwykle bardziej wilgotne niż pomieszczenia nadziemne, co ma swoje plusy i minusy. Z jednej strony klimatyzacja w trybie chłodzenia dodatkowo osusza powietrze, co może być korzystne dla pomieszczenia narażonego na wilgoć. Z drugiej - wysoka wilgotność powietrza zasysanego przez jednostkę może przyspieszać osadzanie się kondensatu i wymagać częstszego czyszczenia filtrów.</p>
<h2>Gdzie umieścić jednostkę zewnętrzną przy montażu w piwnicy</h2>
<p>Jednostka zewnętrzna przy instalacji w piwnicy najczęściej montowana jest na poziomie gruntu, tuż przy budynku, w niewielkim zagłębieniu (studzience) prowadzącym do okienka piwnicznego, albo na ścianie budynku powyżej poziomu gruntu, z dłuższą trasą instalacji prowadzoną w dół. Wybór lokalizacji zależy od układu budynku i dostępności miejsca wokół niego.</p>
<h2>Alternatywy dla klasycznej klimatyzacji split</h2>
<p>W pomieszczeniach, gdzie poprowadzenie pełnej instalacji split jest bardzo utrudnione lub niemożliwe, alternatywą bywa klimatyzator przenośny z odprowadzeniem ciepła przez niewielki otwór w ścianie lub istniejący kanał wentylacyjny - to rozwiązanie tańsze we wdrożeniu, ale zwykle mniej wydajne i głośniejsze od systemu split. Jeśli rozważasz montaż klimatyzacji w piwnicy, najlepiej ocenić możliwości techniczne podczas wizji lokalnej - sprawdź naszą ofertę w <a href="/cennik">cenniku</a>.</p>
`
},
{
slug: 'klimatyzacja-w-starym-domu',
title: 'Czy można zainstalować klimatyzację w starym domu?',
metaTitle: 'Klimatyzacja w starym domu – czy to możliwe?',
metaDescription: 'Montaż klimatyzacji w starszym budynku wymaga innego podejścia. Sprawdź, jakie ograniczenia i rozwiązania warto znać.',
category: 'klimatyzacja',
excerpt: 'Starsze budynki rządzą się innymi prawami niż nowe budownictwo. Sprawdzamy, jakie wyzwania niesie montaż klimatyzacji w starym domu i jak sobie z nimi radzić.',
date: '2026-08-09T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
featured: false,
content: `
<h2>Grube ściany i konstrukcja</h2>
<p>Starsze budynki, zwłaszcza murowane z cegły pełnej, mają zwykle znacznie grubsze ściany niż nowe konstrukcje szkieletowe czy z pustaków. Przewiercenie takiej ściany pod instalację chłodniczą wymaga więcej czasu i mocniejszego sprzętu, ale technicznie jest w pełni wykonalne - nie jest to przeszkoda uniemożliwiająca montaż klimatyzacji, a jedynie czynnik wydłużający czas i nieznacznie podnoszący koszt tego etapu prac.</p>
<h2>Stara instalacja elektryczna</h2>
<p>W starszych domach częstym ograniczeniem jest stan instalacji elektrycznej - brak dedykowanego obwodu o odpowiednim przekroju, stare bezpieczniki topikowe zamiast wyłączników nadprądowych, czy ogólnie niewystarczająca moc przyłącza. Przed montażem klimatyzacji warto sprawdzić, czy instalacja elektryczna udźwignie dodatkowe obciążenie, a w razie potrzeby rozważyć jej częściową modernizację.</p>
<h2>Budynki zabytkowe i wymogi konserwatorskie</h2>
<p>W przypadku budynków wpisanych do rejestru zabytków lub znajdujących się w strefie ochrony konserwatorskiej, montaż jednostki zewnętrznej na elewacji frontowej może wymagać zgody konserwatora zabytków, a czasem także zastosowania rozwiązań maskujących urządzenie (np. montaż od podwórka, osłony w kolorze elewacji). Warto to sprawdzić jeszcze przed zamówieniem montażu, żeby uniknąć problemów formalnych.</p>
<h2>Docieplenie a montaż jednostki zewnętrznej</h2>
<p>Jeśli budynek nie jest ocieplony lub planowane jest docieplenie w najbliższej przyszłości, warto to uwzględnić przy planowaniu trasy instalacji - warstwa styropianu zmienia sposób mocowania wsporników jednostki zewnętrznej i długość potrzebnych kołków montażowych. Najlepiej zaplanować montaż klimatyzacji po dociepleniu elewacji, żeby uniknąć podwójnej pracy.</p>
<h2>Jak przygotować się do montażu w starym domu</h2>
<p>Przy starszym budownictwie kluczowa jest dokładna wizja lokalna, podczas której technik oceni grubość ścian, stan instalacji elektrycznej i ewentualne ograniczenia konserwatorskie. Dzięki temu wycena i termin montażu będą realistyczne, bez niespodzianek w trakcie prac. Sprawdź naszą ofertę w <a href="/cennik">cenniku</a> lub umów bezpłatną wycenę.</p>
`
},
{
slug: 'co-sprawdzic-przed-montazem-klimatyzacji',
title: 'Co sprawdzić przed montażem klimatyzacji?',
@@ -1236,7 +1160,7 @@ export const posts: Post[] = [
excerpt: 'Dobrze przygotowany dzień montażu to mniej stresu i krótszy czas realizacji. Sprawdzamy, co warto ustalić i przygotować, zanim ekipa montażowa pojawi się w Twoim domu.',
date: '2026-08-10T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/co-sprawdzic-przed-montazem-klimatyzacji.webp',
featured: false,
content: `
<h2>Ustalenie lokalizacji obu jednostek</h2>
@@ -1264,7 +1188,7 @@ export const posts: Post[] = [
excerpt: 'Klimatyzacja to urządzenie o realnym poborze mocy, które wymaga odpowiednio przygotowanej instalacji elektrycznej. Sprawdzamy, na co zwrócić uwagę przed montażem.',
date: '2026-08-11T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/wymogi-elektryczne-do-klimatyzacji.webp',
featured: false,
content: `
<h2>Dedykowany obwód elektryczny</h2>
@@ -1292,7 +1216,7 @@ export const posts: Post[] = [
excerpt: 'Wybór firmy montującej klimatyzację ma większy wpływ na trwałość instalacji niż sama marka urządzenia. Podpowiadamy, na co zwrócić uwagę przed podpisaniem zlecenia.',
date: '2026-08-12T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/jak-wybrac-firme-do-montazu-klimatyzacji.webp',
featured: false,
content: `
<h2>Certyfikat F-gazowy - podstawa, nie opcja</h2>
@@ -1320,7 +1244,7 @@ export const posts: Post[] = [
excerpt: 'Jedna jednostka zewnętrzna zamiast kilku brzmi jak oszczędność energii, ale rzeczywistość jest bardziej złożona. Sprawdzamy, jak multisplit zużywa prąd w porównaniu do niezależnych systemów split.',
date: '2026-08-13T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/czy-multisplit-oszczedza-prad.webp',
featured: false,
content: `
<h2>Jak działa sprężarka inwerterowa w multisplit</h2>
@@ -1348,7 +1272,7 @@ export const posts: Post[] = [
excerpt: 'Gwarancja na montaż to zupełnie inna sprawa niż gwarancja producenta na samo urządzenie. Wyjaśniamy, czym się różnią i czego możesz oczekiwać od firmy montażowej.',
date: '2026-08-14T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/gwarancja-na-montaz-klimatyzacji.webp',
featured: false,
content: `
<h2>Gwarancja na montaż a gwarancja na urządzenie</h2>
@@ -1376,7 +1300,7 @@ export const posts: Post[] = [
excerpt: 'Montaż jednostki wewnętrznej nad oknem to popularne rozwiązanie w małych pomieszczeniach, ale ma swoje ograniczenia. Sprawdzamy, kiedy to dobry pomysł, a kiedy lepiej poszukać innej lokalizacji.',
date: '2026-08-15T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/czy-mozna-montowac-klimatyzacje-nad-oknem.webp',
featured: false,
content: `
<h2>Kiedy montaż nad oknem ma sens</h2>
@@ -1404,7 +1328,7 @@ export const posts: Post[] = [
excerpt: 'Zanim zapadnie decyzja o montażu, warto wiedzieć, czy wstępna konsultacja i wizja lokalna są płatne. Wyjaśniamy, jak to zwykle wygląda w praktyce.',
date: '2026-08-16T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/koszt-konsultacji-przed-montazem-klimatyzacji.webp',
featured: false,
content: `
<h2>Wstępna wycena zdalna</h2>
@@ -1432,7 +1356,7 @@ export const posts: Post[] = [
excerpt: 'Uziemienie klimatyzacji to nie formalność, tylko podstawowy wymóg bezpieczeństwa. Wyjaśniamy, dlaczego jest konieczne i jak wygląda prawidłowo wykonana instalacja.',
date: '2026-08-17T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/czy-trzeba-uziemic-klimatyzacje.webp',
featured: false,
content: `
<h2>Dlaczego uziemienie jest konieczne</h2>
@@ -1460,7 +1384,7 @@ export const posts: Post[] = [
excerpt: 'Klimatyzator przenośny nie wymaga montażu i można go kupić od ręki, ale to rozwiązanie z wyraźnymi kompromisami. Sprawdzamy, kiedy faktycznie ma sens.',
date: '2026-08-18T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/czy-klimatyzacja-bez-montazu-warta-inwestycji.webp',
featured: false,
content: `
<h2>Jak działa klimatyzator przenośny</h2>
@@ -1488,7 +1412,7 @@ export const posts: Post[] = [
excerpt: 'Montaż klimatyzacji w biurze rządzi się nieco innymi zasadami niż w mieszkaniu - inne wymogi, inny harmonogram prac. Sprawdzamy, na co zwrócić uwagę i z czego wynika cena.',
date: '2026-08-19T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/cena-montazu-klimatyzacji-w-biurze.webp',
featured: false,
content: `
<h2>Czym różni się montaż komercyjny od mieszkaniowego</h2>
@@ -1516,7 +1440,7 @@ export const posts: Post[] = [
excerpt: 'Czyste filtry to podstawa sprawnie działającej klimatyzacji. Pokazujemy krok po kroku, jak samodzielnie czyścić filtry i jak często warto to robić.',
date: '2026-08-20T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/jak-czyscic-filtry-w-klimatyzacji.webp',
featured: false,
content: `
<h2>Gdzie znajdują się filtry w jednostce wewnętrznej</h2>
@@ -1544,7 +1468,7 @@ export const posts: Post[] = [
excerpt: 'Montaż klimatyzacji w większości przypadków nie wymaga pozwolenia na budowę, ale bywają wyjątki. Sprawdzamy, kiedy i jakie formalności mogą być konieczne.',
date: '2026-08-21T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/czy-instalacja-klimatyzacji-wymaga-pozwolenia.webp',
featured: false,
content: `
<h2>Domy jednorodzinne - zwykle bez formalności</h2>
@@ -1572,7 +1496,7 @@ export const posts: Post[] = [
excerpt: 'Gwarancja producenta na klimatyzator to nie zawsze ta sama liczba lat - zależy od marki, modelu i spełnienia warunków przeglądów. Sprawdzamy, jak to wygląda w praktyce.',
date: '2026-08-22T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/okres-gwarancji-na-klimatyzacje.webp',
featured: false,
content: `
<h2>Standardowy okres gwarancji producenta</h2>
@@ -1600,7 +1524,7 @@ export const posts: Post[] = [
excerpt: 'Wybór marki klimatyzatora to jedna z ważniejszych decyzji przy zakupie. Porównujemy najpopularniejsze marki dostępne na polskim rynku pod kątem niezawodności i serwisu.',
date: '2026-08-23T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/ranking-marek-klimatyzacji.webp',
featured: false,
content: `
<h2>Na czym opierać porównanie marek</h2>
@@ -1628,7 +1552,7 @@ export const posts: Post[] = [
excerpt: 'Nie każda usterka klimatyzacji objawia się od razu brakiem chłodzenia. Sprawdzamy najczęstsze sygnały awarii, które warto rozpoznać zawczasu.',
date: '2026-08-24T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/objawy-uszkodzonej-klimatyzacji.webp',
featured: false,
content: `
<h2>Klimatyzacja nie chłodzi wcale lub słabo</h2>
@@ -1656,7 +1580,7 @@ export const posts: Post[] = [
excerpt: 'Hałas z klimatyzacji, szczególnie od jednostki zewnętrznej, bywa źródłem konfliktów sąsiedzkich. Sprawdzamy obowiązujące normy i sposoby na ograniczenie hałasu.',
date: '2026-08-25T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/halas-z-klimatyzacji-normy.webp',
featured: false,
content: `
<h2>Dopuszczalny poziom hałasu w porze dziennej i nocnej</h2>
@@ -1684,7 +1608,7 @@ export const posts: Post[] = [
excerpt: 'Wokół klimatyzacji krąży wiele mitów zdrowotnych. Sprawdzamy, co w nich jest prawdą, a co wynika raczej z niewłaściwego użytkowania niż samego urządzenia.',
date: '2026-08-26T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
image: '/images/blogs_images/klimatyzacja-a-zdrowie-mity-i-prawda.webp',
featured: false,
content: `
<h2>Mit: klimatyzacja zawsze przeziębia</h2>
@@ -1703,34 +1627,7 @@ export const posts: Post[] = [
<p>Bezpieczne korzystanie z klimatyzacji sprowadza się do kilku prostych zasad: rozsądna różnica temperatur względem otoczenia, unikanie kierowania strumienia powietrza bezpośrednio na siebie, oraz regularne czyszczenie filtrów. Przy tych zasadach klimatyzacja jest komfortowym i bezpiecznym rozwiązaniem dla większości domowników.</p>
`
},
{
slug: 'jak-rozliczyc-wymiane-klimatyzacji-podatkowo',
title: 'Jak rozliczyć wymianę klimatyzacji podatkowo?',
metaTitle: 'Jak rozliczyć wymianę klimatyzacji podatkowo?',
metaDescription: 'Ulga termomodernizacyjna a klimatyzacja – sprawdź, czy i jak można rozliczyć wymianę klimatyzacji w podatku.',
category: 'klimatyzacja',
excerpt: 'Ulga termomodernizacyjna kojarzy się głównie z ociepleniem domu, ale w niektórych przypadkach obejmuje też urządzenia grzewczo-chłodzące. Sprawdzamy ogólne zasady - i dlaczego warto to zweryfikować indywidualnie.',
date: '2026-08-27T09:00:00Z',
author: 'Tomasz Kowalski',
image: '',
featured: false,
content: `
<h2>Czym jest ulga termomodernizacyjna</h2>
<p>Ulga termomodernizacyjna to odliczenie od podatku dochodowego przysługujące właścicielom domów jednorodzinnych, którzy ponieśli wydatki na przedsięwzięcia termomodernizacyjne - między innymi wymianę źródła ciepła na bardziej efektywne energetycznie. Najczęściej kojarzona jest z dociepleniem budynku, wymianą okien czy montażem pompy ciepła.</p>
<h2>Kiedy klimatyzacja może się kwalifikować</h2>
<p>Klimatyzatory typu split z funkcją grzania (czyli technicznie pompy ciepła powietrze-powietrze) mogą w pewnych okolicznościach kwalifikować się jako element inwestycji termomodernizacyjnej, o ile spełniają określone parametry techniczne i pełnią funkcję źródła ciepła, a nie wyłącznie chłodzenia. Standardowa klimatyzacja montowana wyłącznie dla komfortu chłodzenia latem zwykle nie mieści się w katalogu wydatków objętych ulgą.</p>
<h2>Warunki formalne odliczenia</h2>
<p>Odliczenie w ramach ulgi termomodernizacyjnej wymaga spełnienia konkretnych warunków formalnych - posiadania faktury imiennej, realizacji przedsięwzięcia w budynku, którego właścicielem lub współwłaścicielem jest podatnik, oraz mieszczenia się w katalogu wydatków określonym w przepisach wykonawczych do ustawy o PIT.</p>
<h2>Dlaczego warto skonsultować się z doradcą podatkowym</h2>
<p>Przepisy dotyczące ulgi termomodernizacyjnej i katalog kwalifikujących się wydatków bywają aktualizowane, a kwalifikacja konkretnego urządzenia zależy od jego parametrów technicznych i sposobu wykorzystania w budynku. Nie jesteśmy doradcą podatkowym, dlatego w kwestii możliwości i sposobu rozliczenia wymiany klimatyzacji rekomendujemy konsultację z księgowym lub doradcą podatkowym, który oceni Twoją indywidualną sytuację.</p>
<h2>Gdzie szukać aktualnych informacji</h2>
<p>Aktualny katalog wydatków objętych ulgą termomodernizacyjną publikowany jest w rozporządzeniu Ministra Inwestycji i Rozwoju oraz na stronie Ministerstwa Finansów - warto sprawdzić najnowszą wersję przepisów przed rozliczeniem, ponieważ szczegółowe warunki mogą się zmieniać z roku na rok.</p>
`
},
{
slug: 'czy-warto-remontowac-stara-klimatyzacji',
title: 'Czy warto remontować starą klimatyzację?',
@@ -1770,7 +1667,10 @@ export const getPostsByCategory = (category: string) => activePosts.filter((p) =
export const getRecentPosts = (limit = 6) => [...activePosts].sort((a, b) => new Date(b.date).getTime() - new Date(a.date).getTime()).slice(0, limit);
// Dodane z powrotem funkcje wywoływane w komponentach, które nie zostały uwzględnione w prompcie:
export const getFeaturedPost = () => activePosts.find((p) => p.featured) || activePosts[0];
export const getFeaturedPost = () => {
const dayIndex = Math.floor(Date.now() / (1000 * 60 * 60 * 24));
return activePosts[dayIndex % activePosts.length] || activePosts[0];
};
export const getLatestPosts = (limit = 3) => getRecentPosts(limit);
export const getRelatedPosts = (slug: string, category: string, limit = 2) => {
return activePosts.filter(p => p.slug !== slug && p.category === category).slice(0, limit);
Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 230 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 209 KiB

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 654 KiB

After

Width:  |  Height:  |  Size: 388 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 330 KiB

After

Width:  |  Height:  |  Size: 288 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 203 KiB

After

Width:  |  Height:  |  Size: 205 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 257 KiB

After

Width:  |  Height:  |  Size: 258 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 327 KiB

After

Width:  |  Height:  |  Size: 325 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 KiB

After

Width:  |  Height:  |  Size: 202 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 799 KiB

After

Width:  |  Height:  |  Size: 657 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 268 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 232 KiB

+155
View File
@@ -0,0 +1,155 @@
const fs = require('fs');
const path = require('path');
const mapping = {
'img_6a5d04a21372a8.20397387.webp': 'klimatyzacja-wroclaw-kiedy-montowac',
'img_6a5d04a231dac2.11355832.webp': 'cena-klimatyzacji-do-pokoju',
'img_6a5d04a25e4b98.52144832.webp': 'klimatyzacja-a-jakos-powietrza',
'img_6a5d04a27a2a42.56795579.webp': 'montaz-klimatyzacji-w-bloku',
'img_6a5d04a2a89295.39636622.webp': 'czynnik-chlodniczy-r32-r410a',
'img_6a5d04a2ce3596.67627277.webp': 'jaki-klimatyzator-do-salonu-30-m2',
'img_6a5d04a30d2c52.62595133.webp': 'klimatyzacja-w-biurze-co-warto-wiedziec',
'img_6a5d04a32a8e24.64727858.webp': 'pompa-ciepla-powietrze-woda-jak-dziala',
'img_6a5d04a354c369.35471968.webp': 'klimatyzacja-dla-alergikow',
'img_6a5d04a3772ec5.39684638.webp': 'serwis-klimatyzacji-samemu-co-mozna',
'img_6a5d04a3a0ad91.92196165.webp': 'klimatyzator-split-czy-multisplit',
'img_6a5d04a3beba26.98450615.webp': 'jak-dobrac-moc-klimatyzatora',
'img_6a5d04a3ec8671.37520426.webp': 'pompa-ciepla-vs-gaz-co-wybrac',
'img_6a5d04a41b3d33.17571060.webp': 'klimatyzacja-jako-ogrzewanie-zimowe',
'img_6a5d04a441d4a9.95117803.webp': 'jaki-klimatyzator-do-pokoju-20-m2',
'img_6a5d04a464d615.75587080.webp': 'jaki-klimatyzator-wybrac-do-mieszkania',
'img_6a5d04be52b442.44314731.webp': 'ranking-marek-klimatyzacji',
'img_6a5d04be6fdb26.32043683.webp': 'gdzie-zamontowac-jednostke-zewnetrzna-klimatyzacji',
'img_6a5d04beb3c1f3.98136765.webp': 'co-sprawdzic-przed-montazem-klimatyzacji',
'img_6a5d04bed08665.86887655.webp': 'gdzie-nie-montowac-klimatyzacji-w-domu',
'img_6a5d04bf25e550.89462427.webp': 'kiedy-najlepiej-zainstalowac-klimatyzacje-w-domu',
'img_6a5d04bf45cf49.82956577.webp': 'jak-dziala-inwenter-klimatyzator',
'img_6a5d04bf71f7e2.14009785.webp': 'gwarancja-na-montaz-klimatyzacji',
'img_6a5d04bfa28c35.65238690.webp': 'klimatyzacja-vs-wentylacja-roznice',
'img_6a5d04bfc11633.69161886.webp': 'pompa-ciepla-ile-kosztuje-eksploatacja',
'img_6a5d04bfef7be1.18184702.webp': 'halas-klimatyzatora-jak-zmierzyc',
'img_6a5d04c02261f0.29970552.webp': 'serwis-klimatyzacji-co-i-kiedy',
'img_6a5d04c04b87f9.58656333.webp': 'klimatyzacja-walbrzych-ceny',
'img_6a5d04c073be83.21304683.webp': 'klimatyzacja-dom-jednorodzinny-system',
'img_6a5d04c09d68c3.59447568.webp': 'pompa-ciepla-fotowoltaika-synergia',
'img_6a5d04c0c8c1c6.48575540.webp': 'klimatyzacja-nowe-mieszkanie-deweloper',
'img_6a5d04c1067c12.79554682.webp': 'pompa-ciepla-stary-dom',
'img_6a5d04c12da0c8.50905305.webp': 'ile-kosztuje-godzina-pracy-technika-klimatyzacji',
'img_6a5d04c159bcd6.32914629.webp': 'ile-trwa-montaz-klimatyzacji',
'img_6a5d04e0bf2493.80472628.webp': 'jak-oszczedzac-na-klimatyzacji',
'img_6a5d04e0dd6821.27388481.webp': 'czy-mozna-zainstalowac-klimatyzator-samemu',
'img_6a5d04e1172f78.91797716.webp': 'halas-z-klimatyzacji-normy',
'img_6a5d04e1319575.94343123.webp': 'objawy-uszkodzonej-klimatyzacji',
'img_6a5d04e15a8ce7.38987392.webp': 'okres-gwarancji-na-klimatyzacje',
'img_6a5d04e175b984.69402532.webp': 'jak-wybrac-firme-do-montazu-klimatyzacji',
'img_6a5d04e1a97cf7.04175498.webp': 'czy-instalacja-klimatyzacji-wymaga-pozwolenia',
'img_6a5d04e1cb3269.84592063.webp': 'jak-czyscic-filtry-w-klimatyzacji',
'img_6a5d04e2003b93.75200105.webp': 'cena-montazu-klimatyzacji-w-biurze',
'img_6a5d04e2233561.05897034.webp': 'czy-klimatyzacja-bez-montazu-warta-inwestycji',
'img_6a5d04e25dba63.60274799.webp': 'czy-multisplit-oszczedza-prad',
'img_6a5d04e27f4308.72545903.webp': 'ile-kosztuje-montaz-klimatyzacji',
'img_6a5d04e2ac7600.19211261.webp': 'czy-mozna-montowac-klimatyzacje-nad-oknem',
'img_6a5d04e2ce4529.48716501.webp': 'oznaczenia-wydajnosci-klimatyzatorow',
'img_6a5d04e309b541.63791762.webp': 'split-czy-multisplit-ktora-klimatyzacja-lepsza',
'img_6a5d04e32f8533.44864660.webp': 'czy-klimatyzacja-multisplit-jest-oplacalna',
'img_6a5d04e35a77b6.58886578.webp': 'ile-trwa-demontaz-starej-klimatyzacji',
'img_6a5d04e385e4f5.96931089.webp': 'wymogi-elektryczne-do-klimatyzacji',
'img_6a5d04e3a4d1e7.98716793.webp': 'ile-kosztuje-montaz-klimatyzacji-w-domu',
'img_6a5d04e3ced574.69087334.webp': 'zasada-5-minut-w-montazu-klimatyzacji',
'img_6a5d04e4016424.10906606.webp': 'koszt-konsultacji-przed-montazem-klimatyzacji',
'img_6a5d04e4315737.26878013.webp': 'klimatyzacja-legnica-montaz',
'img_6a5d04e4523360.78733262.webp': 'jak-sprawdzic-czy-technicy-montuja-klimatyzacje-prawidlowo',
'img_6a5d04e47b4101.45444854.webp': 'czy-warto-remontowac-stara-klimatyzacje',
'img_6a5d04e4978d12.59948415.webp': 'klimatyzacja-a-zdrowie-mity-i-prawda',
'img_6a5d04e4c0ab90.56512395.webp': 'koszty-przedluzenia-rur-w-klimatyzacji',
'img_6a5d04e4e23ca4.33276359.webp': 'czy-trzeba-uziemic-klimatyzacje',
'img_6a5d04e518a696.65815784.webp': 'na-co-zwrocic-uwage-przy-wyborze-klimatyzatora',
'img_6a5d04e5377e23.67377862.webp': 'jak-chronic-parapet-przed-kondensacja-z-klimatyzacji'
};
const imagesDir = path.join(__dirname, 'public/images/blogs_images');
const postsPath = path.join(__dirname, 'content/posts.ts');
let postsContent = fs.readFileSync(postsPath, 'utf-8');
const missingFiles = [];
const missingSlugs = [];
const processedSlugs = new Set();
// Ensure the directory exists
if (!fs.existsSync(imagesDir)) {
console.log('Error: Directory ' + imagesDir + ' does not exist.');
process.exit(1);
}
for (const [filename, slug] of Object.entries(mapping)) {
const oldPath = path.join(imagesDir, filename);
const newFilename = `${slug}.webp`;
const newPath = path.join(imagesDir, newFilename);
if (!fs.existsSync(oldPath) && !fs.existsSync(newPath)) {
missingFiles.push(`${filename} => ${slug}`);
continue;
}
// Find slug in posts.ts
const slugRegex = new RegExp(`slug:\\s*['"]${slug}['"]`);
if (!slugRegex.test(postsContent)) {
missingSlugs.push(`${filename} => ${slug}`);
continue;
}
// Rename file if not already renamed
if (fs.existsSync(oldPath)) {
fs.renameSync(oldPath, newPath);
}
// Update postsContent
// The structure is roughly:
// slug: 'slug-name',
// title: '...',
// category: '...',
// excerpt: '...',
// date: '...',
// author: '...',
// image: '',
// We need to replace image: '' with image: '/images/blogs_images/slug.webp' for this specific object.
// A safe way is to find the object block containing the slug, and replace the image field inside it.
// We'll split the content by objects or just use a replace with a function.
// A simple way is to find the index of the slug, then find the next `image: '',` and replace it.
const slugIndex = postsContent.indexOf(`slug: '${slug}'`);
if (slugIndex === -1) {
missingSlugs.push(`${filename} => ${slug}`);
continue;
}
const nextImageIndex = postsContent.indexOf(`image: ''`, slugIndex);
if (nextImageIndex !== -1 && nextImageIndex < slugIndex + 1000) { // arbitrary limit to ensure we are in the same object
postsContent = postsContent.slice(0, nextImageIndex) + `image: '/images/blogs_images/${newFilename}'` + postsContent.slice(nextImageIndex + 9);
processedSlugs.add(slug);
} else {
// maybe it already has a value or spacing is different
const nextImageRegex = /image:\s*['"][^'"]*['"]/;
const substr = postsContent.substring(slugIndex, slugIndex + 1000);
const match = substr.match(nextImageRegex);
if (match) {
const matchIndex = slugIndex + match.index;
postsContent = postsContent.slice(0, matchIndex) + `image: '/images/blogs_images/${newFilename}'` + postsContent.slice(matchIndex + match[0].length);
processedSlugs.add(slug);
} else {
console.log('Could not find image field for slug: ' + slug);
}
}
}
fs.writeFileSync(postsPath, postsContent);
console.log('Successfully updated posts.ts and renamed images.');
if (missingFiles.length > 0) {
console.log('\\nBrakujące pliki w folderze public/images/blogs_images:');
missingFiles.forEach(f => console.log(f));
}
if (missingSlugs.length > 0) {
console.log('\\nSlugi usunięte z posts.ts lub nieistniejące:');
missingSlugs.forEach(s => console.log(s));
}