Izmerjeno s Chromium na zivem clanku (mobilni viewport 390 px):
ins 390x390, iframe 390x390, .ad-container samo 356 px
Z data-full-width-responsive=true AdSense enoto raztegne na celo sirino
zaslona (390) mimo vsebnika (356 = stran ima px-4), zato je oglas gledal cez
rob in ga je .ad-container z overflow:hidden odrezal - od tod odrezan MEXC.
Hkrati je izbiral kvadrat 390x390 tudi za vodoravno sidro in za enoto v
besedilu; kreativa je bila manjsa od kvadrata, ostanek pa prazen crn prostor.
Zdaj data-full-width-responsive=false na vseh enotah in brez width:100% v
inline stilu - enota se drzi sirine svojega vsebnika, Google pa visino izbere
po tej sirini. Poravnava visine na kreativo iz prejsnjega commita ostane.
AdSense odzivni enoti vnaprej doloci visino po sirini zaslona. Ce je
postrezena kreativa nizja, ostane pod njo prazen rezerviran pas znotraj
okvirja - to je bilo vidno na clanku pod DonCarlos oglasom.
- AdSense komponenta po zapolnitvi poravna visino <ins> na dejansko visino
oglasnega okvirja (ob 0/300/1000/2500 ms, ob vsaki spremembi DOM enote in
ob resize). Nic se ne odreze, visina je natanko taksna kot oglas.
MutationObserver zdaj tece tudi pri enotah brez onAdStatus.
- InArticleAd: odstranjen minHeight 260 px, ki je rezerviral prostor tudi ce
je bila kreativa nizja.
- MultiplexAd: odstranjen min-h-[250px] iz istega razloga.
Naslovnica je imela lastno kopijo zgornjega pasu s trdo visino 90 px in
responsive=false. Google je vanjo postavil 320x50 in okrog je ostal siv rob -
tako je izgledalo na telefonu. Zdaj uporablja skupno komponento TopBannerAd,
ki je format=auto z full-width-responsive: kreativa dobi celo sirino, prazna
enota se ne izrise. Isto velja za vse ostale strani, ki TopBannerAd ze
uporabljajo.
Lepljivemu pasu odstranjen overflow-hidden in maxHeight - oglas mora biti cel
viden, vodoravni format itak ne da vec kot 320x100.
Po podatkih AdSense (zadnjih 7 dni) prihodek nesejo folx.tv in-article
(98,93 EUR), Folx News In-Article = slot 4154017639 (82,45 EUR) in Multiplex
(63,59 EUR). Prejsnji commit je pri dveh od teh zmanjsal stevilo mest.
- odlozena zahteva (IntersectionObserver) NI vec privzeta: eager=true.
Odlozeno nalaganje dvigne vidnost, a znizza stevilo prikazov pri enotah
globlje na strani - in prav te nesejo denar. Pot ostaja v kodi za kasneje,
ko bomo ucinek lahko izmerili. Popravek 3-sekundnega odstevanja ostane.
- clanek: enota 4154017639 vrnjena na stran, a pod naslovom in tik pred
besedilom namesto kot pas nad naslovnico - isti prikazi, boljse mesto,
naslov ne pade pod pregib.
- PageSideAds: oba stolpca spet tu. Sirina se prilagodi zaslonu prek
--rail-w: 160x600 od 1536 px, 300x600 od 1700 px. Dodan onAdStatus, da
prazna enota ne pusti luknje.
- naslovnica dobi Multiplex, edina strana ga ni imela.
Skupaj na clanku (telefon): display pred besedilom, in-article za uvodom,
display na sredini (in vec pri dolgih), multiplex, lepljivi pas.
- vse enote se zahtevajo sele ~200 px pred vstopom v vidno polje
(IntersectionObserver); prej so se vse pushale ob nalaganju strani, tudi
tiste globoko spodaj, ki jih uporabnik ni nikoli videl. Odlocitev o praznosti
(3 s) tece sele od zahteve, ne od mounta.
- clanek: zgornji pas odstranjen (potiskal je naslovnico in naslov pod pregib,
placan pa je najslabse). Prvi oglas pride sele v besedilu.
- clanek: stevilo oglasov vezano na dolzino — 2 osnovna + 1 na vsakih 5 blokov
cez 10, strop 5. Mediana (9 blokov) ostane pri 2, dolgi clanki dobijo do 5.
Prvi je fluid in-article, vsi nadaljnji nov InContentDisplayAd (odzivni
display, visja kreativa).
- TopBannerAd na seznamih: odzivni namesto trdih 90 px.
- mobilni lepljivi pas: odzivni vodoravni (do 110 px) namesto trdih 320x50,
z onAdStatus — prazen se ne izrise.
- PageSideAds: en desni 300x600 sticky z onAdStatus namesto dveh 160x600 brez
zaznave (prazna je pustila luknjo); prikaze se od 1700 px navzgor.
- interstitial odstranjen s horoskopa (prekrivalo cez zaslon, zaklenilo scroll);
interstitial-ad.tsx in neuporabljen parallax-ad.tsx izbrisana.
CMP ostaja nedotaknjen po dogovoru.
Modify `PageSideAds` component to accept `contentHalfWidth` prop for dynamic ad placement based on content container width, and update specific pages (article, about, datenschutz, empfang, impressum, search) to pass the correct values.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 23852c00-4779-460a-9e0c-d09fee4b6c92
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: a7feb44f-676a-4a21-8ede-a392a39b3b56
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/f209e72a-0939-48fa-84fc-57854de71967/23852c00-4779-460a-9e0c-d09fee4b6c92/nlGTLC9
Replit-Helium-Checkpoint-Created: true
Introduce `PageSideAds` component and integrate it across various pages including Home, Article, Category, Videos, Gallery, Horoscope, Recipes, Search, About, Impressum, Datenschutz, and Empfang. This component displays vertical ads on screens wider than 2xl. Additionally, the Home page's existing ad implementation is refactored to use this new component.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 1f7e7e89-a520-4970-9645-37daadc466dc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 6355ba60-5043-4119-a09f-5437b272e829
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/f209e72a-0939-48fa-84fc-57854de71967/1f7e7e89-a520-4970-9645-37daadc466dc/zWnrdl3
Replit-Helium-Checkpoint-Created: true
Remove the `hidden` attribute from ad components and the `lg:block` condition from `ArtistPatternBg` to ensure a background pattern is always visible, even when ads fail to load.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 517dfa7b-26ac-463d-a6e1-a58c6df97188
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 3c78d37e-f103-4480-8bdf-e7de89079bb0
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/f209e72a-0939-48fa-84fc-57854de71967/517dfa7b-26ac-463d-a6e1-a58c6df97188/V5dWXpq
Replit-Helium-Checkpoint-Created: true
Fixes the "black spots" issue by ensuring that ad components are hidden when they fail to load, preventing visual clutter in the development environment. Updates are also made to gallery image URLs.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 517dfa7b-26ac-463d-a6e1-a58c6df97188
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 5ba6db93-b599-4f97-9ded-f81b616eb41d
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/f209e72a-0939-48fa-84fc-57854de71967/517dfa7b-26ac-463d-a6e1-a58c6df97188/V5dWXpq
Replit-Helium-Checkpoint-Created: true
Integrates an `ArtistPatternBg` component to wrap ad containers (`ArticleCardAd`, home page wide-picked ad section) with a decorative artist name pattern, enhancing visual appeal on desktop while leaving mobile unchanged.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 517dfa7b-26ac-463d-a6e1-a58c6df97188
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 7e26d45f-76ee-4e0c-8b18-8bffeb9e004b
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/f209e72a-0939-48fa-84fc-57854de71967/517dfa7b-26ac-463d-a6e1-a58c6df97188/jdAEdU5
Replit-Helium-Checkpoint-Created: true
Update the `ArticleCardAd` component in `client/src/components/adsense.tsx` to revert styling changes that caused a large black background and incorrect spacing for ads, ensuring a consistent grey appearance and proper layout.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 517dfa7b-26ac-463d-a6e1-a58c6df97188
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: bee731b1-1b40-43bc-9106-ad35855145d9
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/f209e72a-0939-48fa-84fc-57854de71967/517dfa7b-26ac-463d-a6e1-a58c6df97188/nFw7xof
Replit-Helium-Checkpoint-Created: true
Update AdSense component to accept an onAdStatus callback, allowing parent components to conditionally render ads based on their loaded status. The SidebarAd component now uses this callback to hide itself when no ad is available, preventing empty space and layout distortion.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 517dfa7b-26ac-463d-a6e1-a58c6df97188
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 7b04aa60-f1a0-418c-904a-d16b3954518f
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/f209e72a-0939-48fa-84fc-57854de71967/517dfa7b-26ac-463d-a6e1-a58c6df97188/ls5p9ni
Replit-Helium-Checkpoint-Created: true
Integrates a new `SidebarAd` component into the homepage layout, making it sticky and ensuring ad containers collapse when ads fail to load. Updates `AdSense` component to track ad loading status.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 517dfa7b-26ac-463d-a6e1-a58c6df97188
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 3321a963-9238-411a-b2fa-c960a9f73030
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/f209e72a-0939-48fa-84fc-57854de71967/517dfa7b-26ac-463d-a6e1-a58c6df97188/ls5p9ni
Replit-Helium-Checkpoint-Created: true