All checks were successful
Deploy to production / deploy (push) Successful in 2m1s
- Added moderationRouter to handle moderation-related API routes. - Introduced new methods in AdminController for fetching all regions, region types, and creating regions. - Enhanced adminRouter with routes for moderation reports and status updates. - Updated navigationController to include moderation reports in the admin menu. - Implemented frontend components for reporting messages in the forum and managing moderation reports. - Added internationalization support for moderation-related texts in multiple languages.
90 lines
3.9 KiB
Markdown
90 lines
3.9 KiB
Markdown
# AdSense Readiness Checkliste
|
|
|
|
Diese Checkliste hilft, YourPart vor und nach der AdSense-Anmeldung policy-sicher zu betreiben.
|
|
|
|
## 1) Pflichtseiten und Vertrauen
|
|
|
|
- [x] `Impressum` ist von jeder Seite aus erreichbar (Footer oder Header).
|
|
- [x] `Datenschutzerklaerung` ist von jeder Seite aus erreichbar.
|
|
- [x] `Kontakt` ist klar sichtbar (Formular oder E-Mail).
|
|
- [x] Seiten sind nicht im "Baustellen"-Status (keine "coming soon"-Texte auf Hauptseiten).
|
|
- [x] Navigation ist konsistent und fuehrt auf reale Inhalte.
|
|
|
|
## 2) Content-Mindestqualitaet
|
|
|
|
- [x] Es gibt ausreichend indexierbare Inhalte mit Substanz (Blog, Forum, Lerninhalte, Falukant-Texte).
|
|
- [x] Landing-Pages enthalten mehr als nur kurze Marketingtexte.
|
|
- [x] Keine duennen Seiten mit nur 1-2 Zeilen Text.
|
|
- [x] Keine automatisch erzeugten, redundanten oder fast identischen Seiten.
|
|
- [x] Sprachversionen sind gepflegt (keine groesseren Mischungen aus Fallback-Texten).
|
|
|
|
## 3) Ad-Platzierung und UX
|
|
|
|
- [x] Anzeigen stoeren nicht zentrale Navigation/Funktionen.
|
|
- [x] Im Header bleibt genug Abstand zu interaktiven Elementen (z. B. Sprachwahl).
|
|
- [x] Auf kleinen Screens bleibt die Anzeige responsive ohne Layout-Bruch.
|
|
- [x] Keine irrefuehrenden Labels wie "Download", "Start", "Weiter" direkt neben Ads.
|
|
- [x] Keine Anzeige auf Seiten mit sehr wenig Content.
|
|
|
|
## 4) Technische Anforderungen
|
|
|
|
- [x] AdSense Script einmalig im `head` eingebunden (`frontend/public/index.html`).
|
|
- [ ] `ads.txt` unter `https://www.your-part.de/ads.txt` erreichbar.
|
|
- [x] AdSlot-ID ist gesetzt (`VITE_ADSENSE_HEADER_SLOT`).
|
|
- [x] In Produktion wird nur mit echter Slot-ID ausgeliefert.
|
|
- [x] Keine JS-Fehler durch wiederholtes `adsbygoogle.push`.
|
|
|
|
## 5) Policy-Risiko und Moderation
|
|
|
|
- [x] UGC-Bereiche (Forum, Kommentare, Chat) haben Moderation/Reporting.
|
|
- [x] Erotik-/18+-Bereiche sind klar getrennt und nicht AdSense-besetzt.
|
|
- [x] Keine Anzeigen auf Seiten mit potentiell problematischem Inhalt.
|
|
- [x] Keine gekauften Klicks/Traffic-Anreize auf Anzeigen.
|
|
- [x] Kein "Klick auf Werbung, um zu unterstuetzen"-Wording.
|
|
|
|
## 6) SEO und Crawling-Basis
|
|
|
|
- [x] `robots.txt` blockiert nicht versehentlich wichtige Content-Seiten.
|
|
- [x] `sitemap.xml` ist aktuell und liefert relevante URLs.
|
|
- [x] Canonical-Tags sind auf Kernseiten korrekt gesetzt.
|
|
- [x] Titles/Descriptions sind sinnvoll und nicht generisch leer.
|
|
|
|
## 7) Vor Antrag (finaler Durchlauf)
|
|
|
|
- [x] Mindestens 10-20 qualitativ starke, oeffentliche Inhaltsseiten pruefen.
|
|
- [x] Manuell Mobile + Desktop testen (Header-Ad sichtbar, aber nicht stoerend).
|
|
- [x] Kein sichtbarer Platzhaltertext in Kernbereichen.
|
|
- [x] Impressum/Datenschutz/Kontakt von Startseite in max. 1 Klick erreichbar.
|
|
- [ ] `ads.txt` im Browser geoeffnet und korrekt.
|
|
|
|
## 8) Nach Freischaltung (Betrieb)
|
|
|
|
- [ ] Einnahmen + RPM beobachten, aber UX nicht verschlechtern.
|
|
- [ ] Ads nur auf Seiten mit ausreichend Inhalt ausrollen.
|
|
- [ ] Regelmaessig Policy Center in AdSense pruefen.
|
|
- [ ] Bei neuen Features vor Livegang kurz gegen diese Liste testen.
|
|
|
|
---
|
|
|
|
## Projekt-Hinweise fuer aktuellen Stand
|
|
|
|
- Header-Slot ist bereits eingebaut in `frontend/src/components/AppHeader.vue`.
|
|
- Script ist in `frontend/public/index.html` eingebunden.
|
|
- `ads.txt` liegt unter `frontend/public/ads.txt`.
|
|
- Der Header-Slot wird aktuell nur auf inhaltlich staerkeren Routen angezeigt und benoetigt `VITE_ADSENSE_HEADER_SLOT`.
|
|
|
|
## Ergebnis dieser Pruefung (heute)
|
|
|
|
### Erfuellt
|
|
|
|
- Footer verlinkt `Impressum`, `Datenschutz`, `Kontakt` global (`frontend/src/components/AppFooter.vue`).
|
|
- AdSense Script ist im Head eingebunden (`frontend/public/index.html`).
|
|
- `ads.txt` ist im Repo vorhanden (`frontend/public/ads.txt`).
|
|
- Header-Ad ist zwischen Logo und Sprachwahl und route-gebunden eingebaut (`frontend/src/components/AppHeader.vue`).
|
|
- Slot-Init ist gegen mehrfaches Push abgesichert (`adInitialized`-Guard).
|
|
|
|
### Offen vor Antrag
|
|
|
|
- Deployment-Check: `https://www.your-part.de/ads.txt` oeffnen und Inhalt verifizieren.
|
|
- Deployment-Check der produktiven ENV-Variablen nach Rollout.
|