| Server IP : 202.61.199.114 / Your IP : 216.73.217.139 Web Server : nginx/1.22.1 System : Linux de.arni-solutions.de 6.1.0-49-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64 User : web20 ( 1018) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/clients/client2/web20/web/wp-content/plugins/dgt-verkehrsmonitor/includes/ |
Upload File : |
<?php
/**
* SEO: Meta-Tags, Open Graph, Twitter Cards, Keywords & Schema.org (JSON-LD).
*
* @package dgt-verkehrsmonitor
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
define( 'DGT_VM_OG_IMAGE', 'https://www.drogentest-online.de/wp-content/uploads/2026/06/profil-verkehrsmonitor-deutschland.webp' );
define( 'DGT_VM_FB_PROFILE', 'https://www.facebook.com/profile.php?id=61590466511052' );
/* Theme-SEO wird für VM-Seiten in inc/seo.php übersprungen (dgt_vm Query-Var-Check). */
/* ─── SEO-Daten pro Seitentyp ─────────────────────────── */
function dgt_vm_seo_data() {
$view = get_query_var( 'dgt_vm' );
if ( ! $view ) {
return null;
}
$seo = array(
'title' => '',
'description' => '',
'keywords' => '',
'url' => '',
'image' => DGT_VM_OG_IMAGE,
'type' => 'website',
);
switch ( $view ) {
case 'hub':
$seo['title'] = 'Polizeimeldungen zu Alkohol & Drogen am Steuer';
$seo['description'] = 'Tagesaktuelle Polizeimeldungen zu Alkohol- und Drogenfahrten in Deutschland. KI-analysiert, nach Bundesland, Substanz und Delikt filterbar. Täglich neue Fälle.';
$seo['keywords'] = 'Verkehrsmonitor, Alkohol am Steuer, Drogen am Steuer, Polizeimeldungen, Verkehrsdelikte Deutschland, Trunkenheitsfahrt, Drogenfahrt, KI-Analyse';
$seo['url'] = dgt_vm_url();
break;
case 'report_heute':
$seo['title'] = 'Tagesreport – ' . date_i18n( 'j. F Y' );
$seo['description'] = 'Tagesreport Verkehrsmonitor: Alle Polizeimeldungen zu Alkohol und Drogen am Steuer vom ' . date_i18n( 'j. F Y' ) . '. Fallzahlen, Bundesländer und Substanzen im Überblick.';
$seo['keywords'] = 'Tagesreport, Verkehrsmonitor, Polizeimeldungen heute, Alkohol am Steuer aktuell, Drogen am Steuer heute, Verkehrsdelikte';
$seo['url'] = dgt_vm_report_url( 'heute' );
$seo['type'] = 'article';
break;
case 'report':
$d = get_query_var( 'dgt_vm_date' );
$d_label = dgt_vm_format_date( $d );
$seo['title'] = 'Tagesreport – ' . $d_label;
$seo['description'] = 'Polizeimeldungen zu Alkohol- und Drogendelikten im Straßenverkehr vom ' . $d_label . '. Alle Fälle mit Bundesland, Substanzen und Polizeibehörde.';
$seo['keywords'] = 'Tagesreport ' . $d_label . ', Verkehrsmonitor, Polizeimeldungen, Alkohol am Steuer, Drogen am Steuer';
$seo['url'] = dgt_vm_report_url( $d );
$seo['type'] = 'article';
break;
case 'statistiken':
$seo['title'] = 'Statistiken – Alkohol & Drogen am Steuer in Deutschland';
$seo['description'] = 'Statistiken zu Alkohol- und Drogenfahrten in Deutschland: Bundesland-Vergleich, Substanz-Ranking, Wochentag-Verteilung und Trends. Datenbasiert und tagesaktuell.';
$seo['keywords'] = 'Statistiken, Alkohol am Steuer Zahlen, Drogen am Steuer Statistik, Verkehrsdelikte Deutschland, Bundesland-Vergleich, Trunkenheitsfahrten';
$seo['url'] = dgt_vm_statistiken_url();
break;
case 'archiv':
$year = get_query_var( 'dgt_vm_year' );
$month = get_query_var( 'dgt_vm_month' );
if ( $year && $month ) {
$m_label = date_i18n( 'F Y', strtotime( $year . '-' . $month . '-01' ) );
$seo['title'] = 'Archiv ' . $m_label . ' – Polizeimeldungen';
$seo['description'] = 'Alle Polizeimeldungen zu Alkohol und Drogen am Steuer aus ' . $m_label . '. Archiv des Verkehrsmonitor Deutschland.';
$seo['keywords'] = 'Archiv ' . $m_label . ', Verkehrsmonitor, Polizeimeldungen, Alkohol am Steuer, Drogen am Steuer';
} elseif ( $year ) {
$seo['title'] = 'Archiv ' . $year . ' – Polizeimeldungen Deutschland';
$seo['description'] = 'Alle Polizeimeldungen zu Alkohol und Drogen am Steuer aus dem Jahr ' . $year . '. Monatsweise durchsuchbar.';
$seo['keywords'] = 'Archiv ' . $year . ', Verkehrsmonitor, Polizeimeldungen, Alkohol am Steuer, Drogen am Steuer';
} else {
$seo['title'] = 'Archiv – Alle Polizeimeldungen Deutschland';
$seo['description'] = 'Durchsuchbares Archiv aller Polizeimeldungen zu Alkohol- und Drogendelikten im Straßenverkehr. Nach Datum, Monat und Jahr filterbar.';
$seo['keywords'] = 'Archiv, Verkehrsmonitor, Polizeimeldungen, Alkohol am Steuer, Drogen am Steuer, Verkehrsdelikte';
}
$seo['url'] = dgt_vm_archiv_url( $year ?: '', $month ?: '' );
break;
case 'kategorie':
$kat = get_query_var( 'dgt_vm_kat' );
$kat_seo = array(
'alkohol-am-steuer' => array(
'title' => 'Alkohol am Steuer – Aktuelle Polizeimeldungen Deutschland',
'desc' => 'Alle aktuellen Polizeimeldungen zu Trunkenheitsfahrten in Deutschland. Promillewerte, Unfälle, Führerscheinentzug – täglich aktualisiert vom Verkehrsmonitor.',
'kw' => 'Alkohol am Steuer, Trunkenheitsfahrt, Polizeimeldungen, Promille, Führerscheinentzug, Verkehrsdelikt, Alkoholfahrt Deutschland',
),
'drogen-am-steuer' => array(
'title' => 'Drogen am Steuer – Aktuelle Polizeimeldungen Deutschland',
'desc' => 'Alle aktuellen Polizeimeldungen zu Drogenfahrten in Deutschland. Cannabis, Kokain, Amphetamin – täglich aktualisiert vom Verkehrsmonitor.',
'kw' => 'Drogen am Steuer, Drogenfahrt, Cannabis am Steuer, Kokain am Steuer, Amphetamin, Polizeimeldungen, Verkehrsdelikt Deutschland',
),
'unfaelle' => array(
'title' => 'Verkehrsunfälle unter Alkohol- & Drogeneinfluss – Deutschland',
'desc' => 'Aktuelle Verkehrsunfälle unter Substanzeinfluss in Deutschland. Polizeimeldungen zu Unfällen mit Alkohol und Drogen am Steuer – täglich aktualisiert.',
'kw' => 'Verkehrsunfälle, Unfall Alkohol am Steuer, Unfall Drogen am Steuer, Substanzeinfluss, Polizeimeldungen, Verkehrsmonitor',
),
);
if ( isset( $kat_seo[ $kat ] ) ) {
$seo['title'] = $kat_seo[ $kat ]['title'];
$seo['description'] = $kat_seo[ $kat ]['desc'];
$seo['keywords'] = $kat_seo[ $kat ]['kw'];
}
$seo['url'] = dgt_vm_kategorie_url( $kat );
break;
case 'substanz':
$sub = get_query_var( 'dgt_vm_sub' );
$label = dgt_vm_substanz_label( $sub );
$sub_seo = array(
'cannabis' => array(
'desc' => 'Aktuelle Polizeimeldungen zu Cannabis am Steuer in Deutschland. THC-Fahrten, Grenzwerte, Führerscheinfolgen – täglich aktualisiert.',
'kw' => 'Cannabis am Steuer, THC Fahrt, Kiffen und Autofahren, Polizeimeldungen Cannabis, Führerschein THC, Drogenfahrt Cannabis',
),
'kokain' => array(
'desc' => 'Aktuelle Polizeimeldungen zu Kokain am Steuer in Deutschland. Drogenfahrten, Polizeiberichte und Konsequenzen – täglich aktualisiert.',
'kw' => 'Kokain am Steuer, Kokain Fahrt, Polizeimeldungen Kokain, Drogenfahrt, Verkehrsdelikt Kokain',
),
'amphetamin' => array(
'desc' => 'Aktuelle Polizeimeldungen zu Amphetamin und Speed am Steuer in Deutschland. Drogenfahrten mit Amphetaminen – täglich aktualisiert.',
'kw' => 'Amphetamin am Steuer, Speed am Steuer, Polizeimeldungen Amphetamin, Drogenfahrt, Verkehrsdelikt Amphetamine',
),
'mischkonsum' => array(
'desc' => 'Polizeimeldungen zu Mischkonsum am Steuer: Alkohol und Drogen kombiniert. Fälle aus ganz Deutschland – täglich aktualisiert.',
'kw' => 'Mischkonsum am Steuer, Alkohol und Drogen, Polizeimeldungen Mischkonsum, Drogenfahrt, Mehrfachsubstanz Verkehr',
),
'medikamente' => array(
'desc' => 'Polizeimeldungen zu Medikamenten am Steuer in Deutschland. Fahruntüchtigkeit durch Medikamenteneinfluss – täglich aktualisiert.',
'kw' => 'Medikamente am Steuer, Medikamenteneinfluss Fahren, Polizeimeldungen, Fahruntüchtigkeit Medikamente, Verkehrsdelikt',
),
);
$seo['title'] = $label . ' am Steuer – Polizeimeldungen & Statistiken Deutschland';
if ( isset( $sub_seo[ $sub ] ) ) {
$seo['description'] = $sub_seo[ $sub ]['desc'];
$seo['keywords'] = $sub_seo[ $sub ]['kw'];
} else {
$seo['description'] = 'Aktuelle Polizeimeldungen zu ' . $label . ' am Steuer in Deutschland. Täglich aktualisiert vom Verkehrsmonitor.';
$seo['keywords'] = $label . ' am Steuer, Drogenfahrt, Polizeimeldungen, Verkehrsmonitor';
}
$seo['url'] = home_url( '/verkehrsmonitor/' . $sub . '/' );
break;
case 'bundesland':
case 'stadt':
$bl_slug = get_query_var( 'dgt_vm_bl' );
$bl = dgt_vm_bundesland_name( $bl_slug );
$stadt = get_query_var( 'dgt_vm_stadt' );
if ( $stadt ) {
$stadt_label = ucfirst( str_replace( '-', ' ', $stadt ) );
$seo['title'] = $stadt_label . ' – Polizeimeldungen Alkohol & Drogen';
$seo['description'] = 'Aktuelle Polizeimeldungen zu Alkohol und Drogen am Steuer in ' . $stadt_label . ' (' . $bl . '). Alle Fälle im Überblick.';
$seo['keywords'] = $stadt_label . ' Polizeimeldungen, Alkohol am Steuer ' . $stadt_label . ', Drogen am Steuer ' . $bl . ', Verkehrsmonitor';
$seo['url'] = dgt_vm_stadt_url( $bl_slug, $stadt );
} elseif ( $bl ) {
$seo['title'] = $bl . ' – Polizeimeldungen Alkohol & Drogen am Steuer';
$seo['description'] = 'Alle aktuellen Polizeimeldungen zu Alkohol und Drogen am Steuer in ' . $bl . '. Städte, Substanzen und Trends – täglich aktualisiert.';
$seo['keywords'] = $bl . ' Polizeimeldungen, Alkohol am Steuer ' . $bl . ', Drogen am Steuer ' . $bl . ', Verkehrsmonitor ' . $bl . ', Verkehrsdelikte';
$seo['url'] = dgt_vm_bundesland_url( $bl_slug );
}
break;
case 'single':
$inc = get_query_var( 'dgt_vm_incident' );
if ( $inc ) {
$bl_name = dgt_vm_bundesland_name( $inc->bundesland );
$ort = $inc->stadt ? $inc->stadt . ', ' . $bl_name : $bl_name;
$seo['title'] = $inc->ai_headline;
$seo['description'] = wp_trim_words( wp_strip_all_tags( $inc->ai_summary ), 28, ' …' );
$kw_parts = array( 'Polizeimeldung ' . $ort );
if ( $inc->hat_alkohol ) {
$kw_parts[] = 'Alkohol am Steuer ' . ( $inc->stadt ?: $bl_name );
}
if ( $inc->hat_drogen ) {
$kw_parts[] = 'Drogen am Steuer ' . ( $inc->stadt ?: $bl_name );
}
$subs = $inc->hat_drogen ? json_decode( $inc->substanzen, true ) : array();
if ( is_array( $subs ) ) {
foreach ( array_slice( $subs, 0, 3 ) as $s ) {
$kw_parts[] = ucfirst( $s ) . ' am Steuer';
}
}
if ( $inc->hat_unfall ) {
$kw_parts[] = 'Verkehrsunfall ' . ( $inc->stadt ?: $bl_name );
}
$kw_parts[] = 'Verkehrsmonitor';
$seo['keywords'] = implode( ', ', $kw_parts );
$seo['url'] = dgt_vm_incident_url( $inc );
$seo['type'] = 'article';
}
break;
}
return $seo;
}
/* ─── Meta Title (optimiert) ──────────────────────────── */
function dgt_vm_document_title( $parts ) {
$seo = dgt_vm_seo_data();
if ( $seo && $seo['title'] ) {
$parts['title'] = $seo['title'];
$parts['site'] = 'Verkehrsmonitor Deutschland';
}
return $parts;
}
add_filter( 'document_title_parts', 'dgt_vm_document_title', 40 );
/* ─── Meta Description, Keywords, Robots ──────────────── */
function dgt_vm_meta_tags() {
$seo = dgt_vm_seo_data();
if ( ! $seo ) {
return;
}
if ( $seo['description'] ) {
printf( '<meta name="description" content="%s">' . "\n", esc_attr( $seo['description'] ) );
}
if ( $seo['keywords'] ) {
printf( '<meta name="keywords" content="%s">' . "\n", esc_attr( $seo['keywords'] ) );
}
echo '<meta name="robots" content="index, follow, max-image-preview:large">' . "\n";
}
add_action( 'wp_head', 'dgt_vm_meta_tags', 5 );
/* ─── Open Graph & Twitter Card ───────────────────────── */
function dgt_vm_og_tags() {
$seo = dgt_vm_seo_data();
if ( ! $seo ) {
return;
}
$title = $seo['title'] ?: 'Verkehrsmonitor Deutschland';
$desc = $seo['description'] ?: 'Polizeimeldungen zu Alkohol & Drogen am Steuer – KI-analysiert.';
$url = $seo['url'] ?: dgt_vm_url();
$image = $seo['image'];
$type = $seo['type'];
echo "\n<!-- Verkehrsmonitor Open Graph -->\n";
printf( '<meta property="og:type" content="%s">' . "\n", esc_attr( $type ) );
printf( '<meta property="og:title" content="%s">' . "\n", esc_attr( $title ) );
printf( '<meta property="og:description" content="%s">' . "\n", esc_attr( $desc ) );
printf( '<meta property="og:url" content="%s">' . "\n", esc_url( $url ) );
printf( '<meta property="og:image" content="%s">' . "\n", esc_url( $image ) );
echo '<meta property="og:image:width" content="1200">' . "\n";
echo '<meta property="og:image:height" content="1200">' . "\n";
echo '<meta property="og:locale" content="de_DE">' . "\n";
echo '<meta property="og:site_name" content="drogentest-online.de">' . "\n";
if ( 'article' === $type ) {
echo '<meta property="article:publisher" content="' . esc_url( DGT_VM_FB_PROFILE ) . '">' . "\n";
$view = get_query_var( 'dgt_vm' );
if ( 'single' === $view ) {
$inc = get_query_var( 'dgt_vm_incident' );
if ( $inc ) {
$pub = $inc->published_at ?: $inc->created_at;
printf( '<meta property="article:published_time" content="%s">' . "\n", esc_attr( gmdate( 'c', strtotime( $pub ) ) ) );
printf( '<meta property="article:modified_time" content="%s">' . "\n", esc_attr( gmdate( 'c', strtotime( $inc->updated_at ) ) ) );
echo '<meta property="article:section" content="Verkehrsmonitor">' . "\n";
if ( $inc->hat_alkohol ) {
echo '<meta property="article:tag" content="Alkohol am Steuer">' . "\n";
}
if ( $inc->hat_drogen ) {
echo '<meta property="article:tag" content="Drogen am Steuer">' . "\n";
}
if ( $inc->hat_unfall ) {
echo '<meta property="article:tag" content="Verkehrsunfall">' . "\n";
}
}
}
}
echo "\n<!-- Verkehrsmonitor Twitter Card -->\n";
echo '<meta name="twitter:card" content="summary_large_image">' . "\n";
printf( '<meta name="twitter:title" content="%s">' . "\n", esc_attr( $title ) );
printf( '<meta name="twitter:description" content="%s">' . "\n", esc_attr( $desc ) );
printf( '<meta name="twitter:image" content="%s">' . "\n", esc_url( $image ) );
}
add_action( 'wp_head', 'dgt_vm_og_tags', 6 );
/* ─── Schema.org JSON-LD ──────────────────────────────── */
function dgt_vm_publisher() {
return array(
'@type' => 'Organization',
'name' => 'Verkehrsmonitor Deutschland',
'url' => dgt_vm_url(),
'sameAs' => array( DGT_VM_FB_PROFILE ),
'logo' => array(
'@type' => 'ImageObject',
'url' => DGT_VM_OG_IMAGE,
'width' => 1200,
'height' => 1200,
),
'parentOrganization' => array(
'@type' => 'Organization',
'name' => 'drogentest-online.de',
'url' => home_url( '/' ),
),
);
}
function dgt_vm_schema_output() {
$view = get_query_var( 'dgt_vm' );
if ( ! $view ) {
return;
}
$schemas = array();
switch ( $view ) {
case 'hub':
$schemas[] = dgt_vm_schema_hub();
break;
case 'report_heute':
case 'report':
$schemas[] = dgt_vm_schema_report();
break;
case 'single':
$inc = get_query_var( 'dgt_vm_incident' );
if ( $inc ) {
$combined = dgt_vm_schema_single( $inc );
$schemas = array_merge( $schemas, $combined );
}
break;
case 'bundesland':
case 'stadt':
$schemas[] = dgt_vm_schema_bundesland();
break;
case 'kategorie':
$schemas[] = dgt_vm_schema_kategorie();
break;
case 'substanz':
$schemas[] = dgt_vm_schema_substanz();
break;
case 'statistiken':
$schemas[] = dgt_vm_schema_statistiken();
break;
case 'archiv':
$schemas[] = dgt_vm_schema_archiv();
break;
}
foreach ( $schemas as $schema ) {
if ( $schema ) {
echo '<script type="application/ld+json">' . wp_json_encode( $schema, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT ) . '</script>' . "\n";
}
}
}
add_action( 'wp_head', 'dgt_vm_schema_output', 30 );
function dgt_vm_schema_hub() {
return array(
'@context' => 'https://schema.org',
'@type' => 'WebSite',
'name' => 'Verkehrsmonitor Deutschland',
'description' => 'Tagesaktuelle Polizeimeldungen zu Alkohol- und Drogenfahrten in Deutschland. KI-analysiert, nach Bundesland und Substanz filterbar.',
'url' => dgt_vm_url(),
'publisher' => dgt_vm_publisher(),
'image' => DGT_VM_OG_IMAGE,
'inLanguage' => 'de-DE',
'sameAs' => array( DGT_VM_FB_PROFILE ),
);
}
function dgt_vm_schema_report() {
$date = get_query_var( 'dgt_vm_date' );
if ( ! $date ) {
$date = gmdate( 'Y-m-d', strtotime( '-1 day' ) );
}
return array(
'@context' => 'https://schema.org',
'@type' => 'Article',
'headline' => 'Verkehrsmonitor Tagesreport – ' . dgt_vm_format_date( $date ),
'datePublished' => $date . 'T08:00:00+02:00',
'image' => DGT_VM_OG_IMAGE,
'author' => dgt_vm_publisher(),
'publisher' => dgt_vm_publisher(),
'mainEntityOfPage' => dgt_vm_report_url( $date ),
'about' => array(
'@type' => 'Dataset',
'name' => 'Verkehrsdelikte Deutschland ' . dgt_vm_format_date( $date ),
'temporalCoverage' => $date,
'spatialCoverage' => array( '@type' => 'Country', 'name' => 'Deutschland' ),
),
);
}
function dgt_vm_schema_single( $inc ) {
$bl_name = dgt_vm_bundesland_name( $inc->bundesland );
$article = array(
'@context' => 'https://schema.org',
'@type' => 'NewsArticle',
'headline' => $inc->ai_headline,
'datePublished' => gmdate( 'c', strtotime( $inc->published_at ?: $inc->created_at ) ),
'dateModified' => gmdate( 'c', strtotime( $inc->updated_at ) ),
'author' => dgt_vm_publisher(),
'publisher' => dgt_vm_publisher(),
'description' => wp_trim_words( $inc->ai_summary, 30 ),
'mainEntityOfPage' => dgt_vm_incident_url( $inc ),
'image' => DGT_VM_OG_IMAGE,
'inLanguage' => 'de-DE',
);
if ( $inc->stadt || $inc->bundesland ) {
$article['about'] = array(
'@type' => 'Place',
'name' => $inc->stadt ? $inc->stadt . ', ' . $bl_name : $bl_name,
'address' => array(
'@type' => 'PostalAddress',
'addressRegion' => $bl_name,
'addressCountry' => 'DE',
),
);
}
if ( $inc->source_url ) {
$article['isBasedOn'] = array( '@type' => 'Article', 'url' => $inc->source_url );
}
$fb_posts = get_option( 'dgt_vm_fb_posts', array() );
$fb_entry = isset( $fb_posts[ $inc->id ] ) ? $fb_posts[ $inc->id ] : null;
if ( $fb_entry && ! empty( $fb_entry['fb_url'] ) ) {
$is_published = empty( $fb_entry['scheduled'] ) || (int) $fb_entry['scheduled'] <= time();
if ( $is_published ) {
$article['sameAs'] = $fb_entry['fb_url'];
}
}
$breadcrumb = array(
'@context' => 'https://schema.org',
'@type' => 'BreadcrumbList',
'itemListElement' => array(
array( '@type' => 'ListItem', 'position' => 1, 'name' => 'Start', 'item' => home_url( '/' ) ),
array( '@type' => 'ListItem', 'position' => 2, 'name' => 'Verkehrsmonitor', 'item' => dgt_vm_url() ),
array( '@type' => 'ListItem', 'position' => 3, 'name' => $bl_name, 'item' => dgt_vm_bundesland_url( $inc->bundesland ) ),
array( '@type' => 'ListItem', 'position' => 4, 'name' => $inc->ai_headline ),
),
);
return array( $article, $breadcrumb );
}
function dgt_vm_schema_bundesland() {
$bl_slug = get_query_var( 'dgt_vm_bl' );
$bl = dgt_vm_bundesland_name( $bl_slug );
$stadt = get_query_var( 'dgt_vm_stadt' );
$name = $stadt ? ucfirst( str_replace( '-', ' ', $stadt ) ) . ' (' . $bl . ')' : $bl;
return array(
'@context' => 'https://schema.org',
'@type' => 'CollectionPage',
'name' => 'Verkehrsmonitor ' . $name,
'description' => 'Polizeimeldungen zu Alkohol und Drogen am Steuer in ' . $name . '.',
'url' => $stadt ? dgt_vm_stadt_url( $bl_slug, $stadt ) : dgt_vm_bundesland_url( $bl_slug ),
'publisher' => dgt_vm_publisher(),
'image' => DGT_VM_OG_IMAGE,
'about' => array(
'@type' => 'Place',
'name' => $name,
'address' => array(
'@type' => 'PostalAddress',
'addressRegion' => $bl,
'addressCountry' => 'DE',
),
),
);
}
function dgt_vm_schema_kategorie() {
$kat = get_query_var( 'dgt_vm_kat' );
$labels = array(
'alkohol-am-steuer' => 'Alkohol am Steuer',
'drogen-am-steuer' => 'Drogen am Steuer',
'unfaelle' => 'Verkehrsunfälle unter Substanzeinfluss',
);
$label = $labels[ $kat ] ?? ucfirst( str_replace( '-', ' ', $kat ) );
return array(
'@context' => 'https://schema.org',
'@type' => 'CollectionPage',
'name' => $label . ' – Polizeimeldungen Deutschland',
'description' => 'Aktuelle Polizeimeldungen: ' . $label . ' in Deutschland.',
'url' => dgt_vm_kategorie_url( $kat ),
'publisher' => dgt_vm_publisher(),
'image' => DGT_VM_OG_IMAGE,
'inLanguage' => 'de-DE',
);
}
function dgt_vm_schema_substanz() {
$sub = get_query_var( 'dgt_vm_sub' );
$label = dgt_vm_substanz_label( $sub );
return array(
'@context' => 'https://schema.org',
'@type' => 'CollectionPage',
'name' => $label . ' am Steuer – Polizeimeldungen',
'description' => 'Polizeimeldungen zu ' . $label . ' am Steuer in Deutschland.',
'url' => home_url( '/verkehrsmonitor/' . $sub . '/' ),
'publisher' => dgt_vm_publisher(),
'image' => DGT_VM_OG_IMAGE,
'inLanguage' => 'de-DE',
);
}
function dgt_vm_schema_statistiken() {
return array(
'@context' => 'https://schema.org',
'@type' => 'WebPage',
'name' => 'Verkehrsmonitor Statistiken',
'description' => 'Statistiken zu Alkohol- und Drogenfahrten in Deutschland. Bundesland-Vergleich, Substanz-Ranking und Trends.',
'url' => dgt_vm_statistiken_url(),
'publisher' => dgt_vm_publisher(),
'image' => DGT_VM_OG_IMAGE,
'inLanguage' => 'de-DE',
);
}
function dgt_vm_schema_archiv() {
return array(
'@context' => 'https://schema.org',
'@type' => 'CollectionPage',
'name' => 'Verkehrsmonitor Archiv',
'description' => 'Durchsuchbares Archiv aller Polizeimeldungen zu Alkohol- und Drogendelikten im Straßenverkehr.',
'url' => dgt_vm_archiv_url(),
'publisher' => dgt_vm_publisher(),
'image' => DGT_VM_OG_IMAGE,
'inLanguage' => 'de-DE',
);
}