| string | <cfscript>
/* ========= URL Parsing ========= */
path = lcase( trim( CGI.PATH_INFO ?: CGI.SCRIPT_NAME ?: "" ) );
path = reReplace(path, "\?.*$", "", "all");
path = reReplace(path, "/{2,}", "/", "all");
segments = listToArray( path, "/" );
clean = [];
for (s in segments) if (len(s)) arrayAppend(clean, s);
segments = clean;
// Erwartet: /suchen/{verzeichnis2}/[{verzeichnis3}]
idxSuchen = 0;
for (i=1; i<=arrayLen(segments); i++) {
if (segments[i] == "suchen") { idxSuchen = i; break; }
}
verzeichnis2 = (idxSuchen>0 && arrayLen(segments) >= idxSuchen+1) ? segments[idxSuchen+1] : "";
verzeichnis3 = (idxSuchen>0 && arrayLen(segments) >= idxSuchen+2) ? segments[idxSuchen+2] : "";
/* ========= String Helper ========= */
function capFirst(str){
str = trim(str ?: "");
if (!len(str)) return "";
return uCase(left(str,1)) & mid(str,2,len(str)-1);
}
/* Helper: hängt "/immobilien" sauber an */
function withImmobilienPath(u){
u = trim(u ?: "");
if (!len(u)) return u;
if (right(u,1) neq "/") u &= "/";
return u & "immobilien";
}
/* Stadt / Stadtteil */
citySlugURL = listFirst(verzeichnis2,":");
citySlug = capFirst(citySlugURL);
districtSlug = "";
if (find(":", verzeichnis2)) {
citySlug = listFirst(verzeichnis2, ":");
districtSlug = listLast(verzeichnis2, ":");
}
if (isDefined("caller.seo_ort")) {
citySlug = caller.seo_ort;
}
if (isDefined("caller.seo_stadtteil") and len(caller.seo_stadtteil) gt 0){
districtSlug = caller.seo_stadtteil;
}
/* Sonderfälle (URL-Slug) */
switch(citySlugURL){
case "frankfurt-am-main":
citySlugURL = "frankfurt";
break;
case "freiburg-im-breisgau":
citySlugURL = "freiburg";
break;
}
/* ========= Kategorie / Intent ========= */
rawCat = verzeichnis3;
rawCat = reReplace(rawCat, "\.html$", "", "all");
rawCatDisplay = len(rawCat) ? replace(rawCat, "-", " ", "all") : "Immobilien";
rawCatDisplay = uCase(left(rawCatDisplay,1)) & mid(rawCatDisplay,2,len(rawCatDisplay)-1);
categoryKey = "immobilien";
if (findNoCase("wohnung", rawCat)) categoryKey = "wohnung";
else if (findNoCase("haus", rawCat)) categoryKey = "haus";
dealKey = ""; // mieten/kaufen
if (findNoCase("mieten", rawCat)) dealKey = "mieten";
else if (findNoCase("kaufen", rawCat)) dealKey = "kaufen";
intentLabel = "Immobilie";
if (categoryKey == "wohnung") intentLabel = "Wohnung";
if (categoryKey == "haus") intentLabel = "Haus";
intentDealLabel = intentLabel;
if (dealKey == "mieten") intentDealLabel = intentLabel & " zur Miete";
if (dealKey == "kaufen") intentDealLabel = intentLabel & " zum Kauf";
/* ========= Datenbasis (PLATZHALTER) =========
-> Hier fügst du deine Arrays wieder ein (ANZEIGEN / IMMO / WOHNEN / AUTO / ONLINE)
*/
ANZEIGEN = [
["aachen","Anzeigenmarkt-Aachen.de","https://www.anzeigenmarkt-aachen.de/"],
["augsburg","Anzeigenmarkt-Augsburg.de","https://www.anzeigenmarkt-augsburg.de/"],
["berlin","Anzeigenmarkt-Berlin.de","https://www.anzeigenmarkt-berlin.de/"],
["bielefeld","Anzeigenmarkt-Bielefeld.de","https://www.anzeigenmarkt-bielefeld.de/"],
["bochum","Anzeigenmarkt-Bochum.de","https://www.anzeigenmarkt-bochum.de/"],
["bonn","Anzeigenmarkt-Bonn.de","https://www.anzeigenmarkt-bonn.de/"],
["bottrop","Anzeigenmarkt-Bottrop.de","https://www.anzeigenmarkt-bottrop.de/"],
["braunschweig","Anzeigenmarkt-Braunschweig.de","https://www.anzeigenmarkt-braunschweig.de/"],
["bremen","Anzeigenmarkt-Bremen.de","https://www.anzeigenmarkt-bremen.de/"],
["bremerhaven","Anzeigenmarkt-Bremerhaven.de","https://www.anzeigenmarkt-bremerhaven.de/"],
["chemnitz","Anzeigenmarkt-Chemnitz.de","https://www.anzeigenmarkt-chemnitz.de/"],
["cottbus","Anzeigenmarkt-Cottbus.de","https://www.anzeigenmarkt-cottbus.de/"],
["darmstadt","Anzeigenmarkt-Darmstadt.de","https://www.anzeigenmarkt-darmstadt.de/"],
["dortmund","Anzeigenmarkt-Dortmund.de","https://www.anzeigenmarkt-dortmund.de/"],
["dresden","Anzeigenmarkt-Dresden.de","https://www.anzeigenmarkt-dresden.de/"],
["duesseldorf","Anzeigenmarkt-Duesseldorf.de","https://www.anzeigenmarkt-duesseldorf.de/"],
["duisburg","Anzeigenmarkt-Duisburg.de","https://www.anzeigenmarkt-duisburg.de/"],
["erfurt","Anzeigenmarkt-Erfurt.de","https://www.anzeigenmarkt-erfurt.de/"],
["essen","Anzeigenmarkt-Essen.de","https://www.anzeigenmarkt-essen.de/"],
["frankfurt","Anzeigenmarkt-Frankfurt.de","https://www.anzeigenmarkt-frankfurt.de/"],
["freiburg","Anzeigenmarkt-Freiburg.de","https://www.anzeigenmarkt-freiburg.de/"],
["gelsenkirchen","Anzeigenmarkt-Gelsenkirchen.de","https://www.anzeigenmarkt-gelsenkirchen.de/"],
["gera","Anzeigenmarkt-Gera.de","https://www.anzeigenmarkt-gera.de/"],
["goettingen","Anzeigenmarkt-Goettingen.de","https://www.anzeigenmarkt-goettingen.de/"],
["halle","Anzeigenmarkt-Halle.de","https://www.anzeigenmarkt-halle.de/"],
["hamburg","Anzeigenmarkt-Hamburg.de","https://www.anzeigenmarkt-hamburg.de/"],
["hannover","Anzeigenmarkt-Hannover.de","https://www.anzeigenmarkt-hannover.de/"],
["hamm","Anzeigenmarkt-Hamm.de","https://www.anzeigenmarkt-hamm.de/"],
["heidelberg","Anzeigenmarkt-Heidelberg.de","https://www.anzeigenmarkt-heidelberg.de/"],
["heilbronn","Anzeigenmarkt-Heilbronn.de","https://www.anzeigenmarkt-heilbronn.de/"],
["kaiserslautern","Anzeigenmarkt-Kaiserslautern.de","https://www.anzeigenmarkt-kaiserslautern.de/"],
["karlsruhe","Anzeigenmarkt-Karlsruhe.de","https://www.anzeigenmarkt-karlsruhe.de/"],
["kassel","Anzeigenmarkt-Kassel.de","https://www.anzeigenmarkt-kassel.de/"],
["kiel","Anzeigenmarkt-Kiel.de","https://www.anzeigenmarkt-kiel.de/"],
["koblenz","Anzeigenmarkt-Koblenz.de","https://www.anzeigenmarkt-koblenz.de/"],
["koeln","Anzeigenmarkt-Koeln.de","https://www.anzeigenmarkt-koeln.de/"],
["leipzig","Anzeigenmarkt-Leipzig.de","https://www.anzeigenmarkt-leipzig.de/"],
["leverkusen","Anzeigenmarkt-Leverkusen.de","https://www.anzeigenmarkt-leverkusen.de/"],
["luebeck","Anzeigenmarkt-Luebeck.de","https://www.anzeigenmarkt-luebeck.de/"],
["magdeburg","Anzeigenmarkt-Magdeburg.de","https://www.anzeigenmarkt-magdeburg.de/"],
["mannheim","Anzeigenmarkt-Mannheim.de","https://www.anzeigenmarkt-mannheim.de/"],
["muenchen","Anzeigenmarkt-Muenchen.de","https://www.anzeigenmarkt-muenchen.de/"],
["nuernberg","Anzeigenmarkt-Nuernberg.de","https://www.anzeigenmarkt-nuernberg.de/"],
["oberhausen","Anzeigenmarkt-Oberhausen.de","https://www.anzeigenmarkt-oberhausen.de/"],
["offenbach","Anzeigenmarkt-Offenbach.de","https://www.anzeigenmarkt-offenbach.de/"],
["oldenburg","Anzeigenmarkt-Oldenburg.de","https://www.anzeigenmarkt-oldenburg.de/"],
["osnabrueck","Anzeigenmarkt-Osnabrueck.de","https://www.anzeigenmarkt-osnabrueck.de/"],
["paderborn","Anzeigenmarkt-Paderborn.de","https://www.anzeigenmarkt-paderborn.de/"],
["pforzheim","Anzeigenmarkt-Pforzheim.de","https://www.anzeigenmarkt-pforzheim.de/"],
["potsdam","Anzeigenmarkt-Potsdam.de","https://www.anzeigenmarkt-potsdam.de/"],
["recklinghausen","Anzeigenmarkt-Recklinghausen.de","https://www.anzeigenmarkt-recklinghausen.de/"],
["regensburg","Anzeigenmarkt-Regensburg.de","https://www.anzeigenmarkt-regensburg.de/"],
["remscheid","Anzeigenmarkt-Remscheid.de","https://www.anzeigenmarkt-remscheid.de/"],
["rostock","Anzeigenmarkt-Rostock.de","https://www.anzeigenmarkt-rostock.de/"],
["salzgitter","Anzeigenmarkt-Salzgitter.de","https://www.anzeigenmarkt-salzgitter.de/"],
["schwerin","Anzeigenmarkt-Schwerin.de","https://www.anzeigenmarkt-schwerin.de/"],
["sindelfingen","Anzeigenmarkt-Sindelfingen.de","https://www.anzeigenmarkt-sindelfingen.de/"],
["solingen","Anzeigenmarkt-Solingen.de","https://www.anzeigenmarkt-solingen.de/"],
["stuttgart","Anzeigenmarkt-Stuttgart.de","https://www.anzeigenmarkt-stuttgart.de/"],
["ulm","Anzeigenmarkt-Ulm.de","https://www.anzeigenmarkt-ulm.de/"],
["wiesbaden","Anzeigenmarkt-Wiesbaden.de","https://www.anzeigenmarkt-wiesbaden.de/"],
["wolfsburg","Anzeigenmarkt-Wolfsburg.de","https://www.anzeigenmarkt-wolfsburg.de/"],
["wuerzburg","Anzeigenmarkt-Wuerzburg.de","https://www.anzeigenmarkt-wuerzburg.de/"]
];
IMMO = [
["braunschweig","Immobilienmarkt-Braunschweig.de","https://www.immobilienmarkt-braunschweig.de/"],
["cottbus","Immobilienmarkt-Cottbus.de","https://www.immobilienmarkt-cottbus.de/"],
["erfurt","Immobilienmarkt-Erfurt.de","https://www.immobilienmarkt-erfurt.de/"],
["gera","Immobilienmarkt-Gera.de","https://www.immobilienmarkt-gera.de/"],
["goettingen","Immobilienmarkt-Goettingen.de","https://www.immobilienmarkt-goettingen.de/"],
["hamm","Immobilienmarkt-Hamm.de","https://www.immobilienmarkt-hamm.de/"],
["hannover","Immobilienmarkt-Hannover.de","https://www.immobilienmarkt-hannover.de/"],
["heidelberg","Immobilienmarkt-Heidelberg.de","https://www.immobilienmarkt-heidelberg.de/"],
["heilbronn","Immobilienmarkt-Heilbronn.de","https://www.immobilienmarkt-heilbronn.de/"],
["kiel","Immobilienmarkt-Kiel.de","https://www.immobilienmarkt-kiel.de/"],
["luebeck","Immobilienmarkt-Luebeck.de","https://www.immobilienmarkt-luebeck.de/"],
["magdeburg","Immobilienmarkt-Magdeburg.de","https://www.immobilienmarkt-magdeburg.de/"],
["oberhausen","Immobilienmarkt-Oberhausen.de","https://www.immobilienmarkt-oberhausen.de/"],
["oldenburg","Immobilienmarkt-Oldenburg.de","https://www.immobilienmarkt-oldenburg.de/"],
["osnabrueck","Immobilienmarkt-Osnabrueck.de","https://www.immobilienmarkt-osnabrueck.de/"],
["recklinghausen","Immobilienmarkt-Recklinghausen.de","https://www.immobilienmarkt-recklinghausen.de/"],
["remscheid","Immobilienmarkt-Remscheid.de","https://www.immobilienmarkt-remscheid.de/"],
["salzgitter","Immobilienmarkt-Salzgitter.de","https://www.immobilienmarkt-salzgitter.de/"],
["schwerin","Immobilienmarkt-Schwerin.de","https://www.immobilienmarkt-schwerin.de/"],
["stuttgart","Immobilienmarkt-Stuttgart.de","https://www.immobilienmarkt-stuttgart.de/"],
["wiesbaden","Immobilienmarkt-Wiesbaden.de","https://www.immobilienmarkt-wiesbaden.de/"],
["wolfsburg","Immobilienmarkt-Wolfsburg.de","https://www.immobilienmarkt-wolfsburg.de/"],
["wuerzburg","Immobilienmarkt-Wuerzburg.de","https://www.immobilienmarkt-wuerzburg.de/"],
["greifswald","Immobilien-Greifswald.de","https://www.immobilien-greifswald.de/"],
["gummersbach","Immobilien-Gummersbach.de","https://www.immobilien-gummersbach.de/"],
["husum","Immobilien-Husum.de","https://www.immobilien-husum.de/"],
["luedenscheid","Immobilien-Luedenscheid.de","https://www.immobilien-luedenscheid.de/"],
["minden","Immobilien-Minden.de","https://www.immobilien-minden.de/"],
["neubrandenburg","Immobilien-Neubrandenburg.de","https://www.immobilien-neubrandenburg.de/"],
["neustadt","Immobilien-Neustadt.de","https://www.immobilien-neustadt.de/"],
["offenburg","Immobilien-Offenburg.de","https://www.immobilien-offenburg.de/"],
["ruesselsheim","Immobilien-Ruesselsheim.de","https://www.immobilien-ruesselsheim.de/"],
["schwaebischgmuend","Immobilien-Schwaebischgmuend.de","https://www.immobilien-schwaebischgmuend.de/"],
["siegen","Immobilien-Siegen.de","https://www.immobilien-siegen.de/"],
["stralsund","Immobilien-Stralsund.de","https://www.immobilien-stralsund.de/"],
["traunstein","Immobilien-Traunstein.de","https://www.immobilien-traunstein.de/"],
["waiblingen","Immobilien-Waiblingen.de","https://www.immobilien-waiblingen.de/"]
];
WOHNEN = [
["berlin","Wohnungsmarkt-Berlin.de","https://www.wohnungsmarkt-berlin.de/"],
["duisburg","Wohnungsmarkt-Duisburg.de","https://www.wohnungsmarkt-duisburg.de/"],
["pforzheim","Wohnungsmarkt-Pforzheim.de","https://www.wohnungsmarkt-pforzheim.de/"],
["aalen","Wohnungen-Aalen.de","https://www.wohnungen-aalen.de/"],
["ahlen","Wohnungen-Ahlen.de","https://www.wohnungen-ahlen.de/"],
["aschaffenburg","Wohnungen-Aschaffenburg.de","https://www.wohnungen-aschaffenburg.de/"],
["baden-baden","Wohnungen-Baden-Baden.de","https://www.wohnungen-baden-baden.de/"],
["badhomburg","Wohnungen-Badhomburg.de","https://www.wohnungen-badhomburg.de/"],
["badsalzuflen","Wohnungen-Badsalzuflen.de","https://www.wohnungen-badsalzuflen.de/"],
["bamberg","Wohnungen-Bamberg.de","https://www.wohnungen-bamberg.de/"],
["bayreuth","Wohnungen-Bayreuth.de","https://www.wohnungen-bayreuth.de/"],
["bergischgladbach","Wohnungen-Bergischgladbach.de","https://www.wohnungen-bergischgladbach.de/"],
["bergkamen","Wohnungen-Bergkamen.de","https://www.wohnungen-bergkamen.de/"],
["bocholt","Wohnungen-Bocholt.de","https://www.wohnungen-bocholt.de/"],
["bottrop","Wohnungen-Bottrop.de","https://www.wohnungen-bottrop.de/"],
["brandenburg","Wohnungen-Brandenburg.de","https://www.wohnungen-brandenburg.de/"],
["castrop-rauxel","Wohnungen-Castrop-Rauxel.de","https://www.wohnungen-castrop-rauxel.de/"],
["cuxhaven","Wohnungen-Cuxhaven.de","https://www.wohnungen-cuxhaven.de/"],
["dinslaken","Wohnungen-Dinslaken.de","https://www.wohnungen-dinslaken.de/"],
["dormagen","Wohnungen-Dormagen.de","https://www.wohnungen-dormagen.de/"],
["dorsten","Wohnungen-Dorsten.de","https://www.wohnungen-dorsten.de/"],
["dueren","Wohnungen-Dueren.de","https://www.wohnungen-dueren.de/"],
["emden","Wohnungen-Emden.de","https://www.wohnungen-emden.de/"],
["erftstadt","Wohnungen-Erftstadt.de","https://www.wohnungen-erftstadt.de/"],
["eschweiler","Wohnungen-Eschweiler.de","https://www.wohnungen-eschweiler.de/"],
["esslingen","Wohnungen-Esslingen.de","https://www.wohnungen-esslingen.de/"],
["euskirchen","Wohnungen-Euskirchen.de","https://www.wohnungen-euskirchen.de/"],
["flensburg","Wohnungen-Flensburg.de","https://www.wohnungen-flensburg.de/"],
["frankfurt-oder","Wohnungen-Frankfurt-Oder.de","https://www.wohnungen-frankfurt-oder.de/"],
["friedrichshafen","Wohnungen-Friedrichshafen.de","https://www.wohnungen-friedrichshafen.de/"],
["fuerth","Wohnungen-Fuerth.de","https://www.wohnungen-fuerth.de/"],
["fulda","Wohnungen-Fulda.de","https://www.wohnungen-fulda.de/"],
["garbsen","Wohnungen-Garbsen.de","https://www.wohnungen-garbsen.de/"],
["gera","Wohnungen-Gera.de","https://www.wohnungen-gera.de/"],
["giessen","Wohnungen-Giessen.de","https://www.wohnungen-giessen.de/"],
["gladbeck","Wohnungen-Gladbeck.de","https://www.wohnungen-gladbeck.de/"],
["goeppingen","Wohnungen-Goeppingen.de","https://www.wohnungen-goeppingen.de/"],
["greifswald","Wohnungen-Greifswald.de","https://www.wohnungen-greifswald.de/"],
["grevenbroich","Wohnungen-Grevenbroich.de","https://www.wohnungen-grevenbroich.de/"],
["gummersbach","Wohnungen-Gummersbach.de","https://www.wohnungen-gummersbach.de/"],
["hagen","Wohnungen-Hagen.de","https://www.wohnungen-hagen.de/"],
["hanau","Wohnungen-Hanau.de","https://www.wohnungen-hanau.de/"],
["hattingen","Wohnungen-Hattingen.de","https://www.wohnungen-hattingen.de/"],
["heidenheim","Wohnungen-Heidenheim.de","https://www.wohnungen-heidenheim.de/"],
["heilbronn","Wohnungen-Heilbronn.de","https://www.wohnungen-heilbronn.de/"],
["herne","Wohnungen-Herne.de","https://www.wohnungen-herne.de/"],
["herten","Wohnungen-Herten.de","https://www.wohnungen-herten.de/"],
["hilden","Wohnungen-Hilden.de","https://www.wohnungen-hilden.de/"],
["hildesheim","Wohnungen-Hildesheim.de","https://www.wohnungen-hildesheim.de/"],
["hof","Wohnungen-Hof.de","https://www.wohnungen-hof.de/"],
["ingolstadt","Wohnungen-Ingolstadt.de","https://www.wohnungen-ingolstadt.de/"],
["iserlohn","Wohnungen-Iserlohn.de","https://www.wohnungen-iserlohn.de/"],
["kaiserslautern","Wohnungen-Kaiserslautern.de","https://www.wohnungen-kaiserslautern.de/"],
["kempten","Wohnungen-Kempten.de","https://www.wohnungen-kempten.de/"],
["kerpen","Wohnungen-Kerpen.de","https://www.wohnungen-kerpen.de/"],
["landshut","Wohnungen-Landshut.de","https://www.wohnungen-landshut.de/"],
["langenfeld","Wohnungen-Langenfeld.de","https://www.wohnungen-langenfeld.de/"],
["lippstadt","Wohnungen-Lippstadt.de","https://www.wohnungen-lippstadt.de/"],
["ludwigsburg","Wohnungen-Ludwigsburg.de","https://www.wohnungen-ludwigsburg.de/"],
["ludwigshafen","Wohnungen-Ludwigshafen.de","https://www.wohnungen-ludwigshafen.de/"],
["luenen","Wohnungen-Luenen.de","https://www.wohnungen-luenen.de/"],
["marburg","Wohnungen-Marburg.de","https://www.wohnungen-marburg.de/"],
["marl","Wohnungen-Marl.de","https://www.wohnungen-marl.de/"],
["meerbusch","Wohnungen-Meerbusch.de","https://www.wohnungen-meerbusch.de/"],
["minden","Wohnungen-Minden.de","https://www.wohnungen-minden.de/"],
["moers","Wohnungen-Moers.de","https://www.wohnungen-moers.de/"],
["muelheim","Wohnungen-Muelheim.de","https://www.wohnungen-muelheim.de/"],
["muenster","Wohnungen-Muenster.de","https://www.wohnungen-muenster.de/"],
["neu-ulm","Wohnungen-Neu-Ulm.de","https://www.wohnungen-neu-ulm.de/"],
["neubrandenburg","Wohnungen-Neubrandenburg.de","https://www.wohnungen-neubrandenburg.de/"],
["neunkirchen","Wohnungen-Neunkirchen.de","https://www.wohnungen-neunkirchen.de/"],
["neustadt","Wohnungen-Neustadt.de","https://www.wohnungen-neustadt.de/"],
["neuwied","Wohnungen-Neuwied.de","https://www.wohnungen-neuwied.de/"],
["norderstedt","Wohnungen-Norderstedt.de","https://www.wohnungen-norderstedt.de/"],
["nordhorn","Wohnungen-Nordhorn.de","https://www.wohnungen-nordhorn.de/"],
["offenbach","Wohnungen-Offenbach.de","https://www.wohnungen-offenbach.de/"],
["offenburg","Wohnungen-Offenburg.de","https://www.wohnungen-offenburg.de/"],
["passau","Wohnungen-Passau.de","https://www.wohnungen-passau.de/"],
["plauen","Wohnungen-Plauen.de","https://www.wohnungen-plauen.de/"],
["ratingen","Wohnungen-Ratingen.de","https://www.wohnungen-ratingen.de/"],
["remscheid","Wohnungen-Remscheid.de","https://www.wohnungen-remscheid.de/"],
["reutlingen","Wohnungen-Reutlingen.de","https://www.wohnungen-reutlingen.de/"],
["rheine","Wohnungen-Rheine.de","https://www.wohnungen-rheine.de/"],
["rosenheim","Wohnungen-Rosenheim.de","https://www.wohnungen-rosenheim.de/"],
["ruesselsheim","Wohnungen-Ruesselsheim.de","https://www.wohnungen-ruesselsheim.de/"],
["saarbruecken","Wohnungen-Saarbruecken.de","https://www.wohnungen-saarbruecken.de/"],
["salzgitter","Wohnungen-Salzgitter.de","https://www.wohnungen-salzgitter.de/"],
["sanktaugustin","Wohnungen-SanktAugustin.de","https://www.wohnungen-sanktaugustin.de/"],
["schwaebischgmuend","Wohnungen-Schwaebischgmuend.de","https://www.wohnungen-schwaebischgmuend.de/"],
["schweinfurt","Wohnungen-Schweinfurt.de","https://www.wohnungen-schweinfurt.de/"],
["schwerte","Wohnungen-Schwerte.de","https://www.wohnungen-schwerte.de/"],
["sindelfingen","Wohnungen-Sindelfingen.de","https://www.wohnungen-sindelfingen.de/"],
["solingen","Wohnungen-Solingen.de","https://www.wohnungen-solingen.de/"],
["stolberg","Wohnungen-Stolberg.de","https://www.wohnungen-stolberg.de/"],
["stralsund","Wohnungen-Stralsund.de","https://www.wohnungen-stralsund.de/"],
["tuebingen","Wohnungen-Tuebingen.de","https://www.wohnungen-tuebingen.de/"],
["ulm","Wohnungen-Ulm.de","https://www.wohnungen-ulm.de/"],
["velbert","Wohnungen-Velbert.de","https://www.wohnungen-velbert.de/"],
["viersen","Wohnungen-Viersen.de","https://www.wohnungen-viersen.de/"],
["villingen-schwenningen","Wohnungen-Villingen-Schwenningen.de","https://www.wohnungen-villingen-schwenningen.de/"],
["waiblingen","Wohnungen-Waiblingen.de","https://www.wohnungen-waiblingen.de/"],
["weimar","Wohnungen-Weimar.de","https://www.wohnungen-weimar.de/"],
["wesel","Wohnungen-Wesel.de","https://www.wohnungen-wesel.de/"],
["wetzlar","Wohnungen-Wetzlar.de","https://www.wohnungen-wetzlar.de/"],
["willich","Wohnungen-Willich.de","https://www.wohnungen-willich.de/"],
["wolfenbuettel","Wohnungen-Wolfenbuettel.de","https://www.wohnungen-wolfenbuettel.de/"],
["worms","Wohnungen-Worms.de","https://www.wohnungen-worms.de/"],
["wuppertal","Wohnungen-Wuppertal.de","https://www.wohnungen-wuppertal.de/"],
["zwickau","Wohnungen-Zwickau.de","https://www.wohnungen-zwickau.de/"]
];
AUTO = [
["bochum","Automarkt-Bochum.de","https://automarkt-bochum.de/"],
["bremen","Automarkt-Bremen.de","https://automarkt-bremen.de/"],
["dortmund","Automarkt-Dortmund.de","https://automarkt-dortmund.de/"],
["duisburg","Automarkt-Duisburg.de","https://automarkt-duisburg.de/"],
["erfurt","Automarkt-Erfurt.de","https://automarkt-erfurt.de/"],
["halle","Automarkt-Halle.de","https://automarkt-halle.de/"],
["mannheim","Automarkt-Mannheim.de","https://automarkt-mannheim.de/"],
["nuernberg","Automarkt-Nuernberg.de","https://automarkt-nuernberg.de/"],
["offenbach","Automarkt-Offenbach.de","https://automarkt-offenbach.de/"],
["paderborn","Automarkt-Paderborn.de","https://automarkt-paderborn.de/"],
["recklinghausen","Automarkt-Recklinghausen.de","https://automarkt-recklinghausen.de/"],
["berlin","Berlin-Automarkt.de","https://berlin-automarkt.de/"],
["bonn","Bonn-Automarkt.de","https://bonn-automarkt.de/"],
["braunschweig","Braunschweig-Automarkt.de","https://braunschweig-automarkt.de/"],
["chemnitz","Chemnitz-Automarkt.de","https://chemnitz-automarkt.de/"],
["cottbus","Cottbus-Automarkt.de","https://cottbus-automarkt.de/"],
["darmstadt","Darmstadt-Automarkt.de","https://darmstadt-automarkt.de/"],
["dresden","Dresden-Automarkt.de","https://dresden-automarkt.de/"],
["duesseldorf","Duesseldorf-Automarkt.de","https://duesseldorf-automarkt.de/"],
["essen","Essen-Automarkt.de","https://essen-automarkt.de/"],
["frankfurt","Frankfurt-Automarkt.de","https://frankfurt-automarkt.de/"],
["goettingen","Goettingen-Automarkt.de","https://goettingen-automarkt.de/"],
["hamburg","Hamburg-Automarkt.de","https://hamburg-automarkt.de/"],
["hamm","Hamm-Automarkt.de","https://hamm-automarkt.de/"],
["heidelberg","Heidelberg-Automarkt.de","https://heidelberg-automarkt.de/"],
["heilbronn","Heilbronn-Automarkt.de","https://heilbronn-automarkt.de/"],
["karlsruhe","Karlsruhe-Automarkt.de","https://karlsruhe-automarkt.de/"],
["kiel","Kiel-Automarkt.de","https://kiel-automarkt.de/"],
["koblenz","Koblenz-Automarkt.de","https://koblenz-automarkt.de/"],
["leipzig","Leipzig-Automarkt.de","https://leipzig-automarkt.de/"],
["luebeck","Luebeck-Automarkt.de","https://luebeck-automarkt.de/"],
["magdeburg","Magdeburg-Automarkt.de","https://magdeburg-automarkt.de/"],
["muenchen","Muenchen-Automarkt.de","https://muenchen-automarkt.de/"],
["oberhausen","Oberhausen-Automarkt.de","https://oberhausen-automarkt.de/"],
["oldenburg","Oldenburg-Automarkt.de","https://oldenburg-automarkt.de/"],
["potsdam","Potsdam-Automarkt.de","https://potsdam-automarkt.de/"],
["regensburg","Regensburg-Automarkt.de","https://regensburg-automarkt.de/"],
["remscheid","Remscheid-Automarkt.de","https://remscheid-automarkt.de/"],
["rostock","Rostock-Automarkt.de","https://rostock-automarkt.de/"],
["salzgitter","Salzgitter-Automarkt.de","https://salzgitter-automarkt.de/"],
["schwerin","Schwerin-Automarkt.de","https://schwerin-automarkt.de/"],
["solingen","Solingen-Automarkt.de","https://solingen-automarkt.de/"],
["wiesbaden","Wiesbaden-Automarkt.de","https://wiesbaden-automarkt.de/"],
["wuerzburg","Wuerzburg-Automarkt.de","https://wuerzburg-automarkt.de/"],
["hannover","Automarkt-Hannover.de","https://automarkt-hannover.de/"]
];
ONLINE = [
["berlin","Onlinemarkt-Berlin.de","https://www.onlinemarkt-berlin.de/"],
["hamburg","Onlinemarkt-Hamburg.de","https://www.onlinemarkt-hamburg.de/"],
["muenchen","Onlinemarkt-Muenchen.de","https://www.onlinemarkt-muenchen.de/"],
["koeln","Onlinemarkt-Koeln.de","https://www.onlinemarkt-koeln.de/"],
["frankfurt","Onlinemarkt-Frankfurt.de","https://www.onlinemarkt-frankfurt.de/"],
["stuttgart","Onlinemarkt-Stuttgart.de","https://www.onlinemarkt-stuttgart.de/"],
["duesseldorf","Onlinemarkt-Duesseldorf.de","https://www.onlinemarkt-duesseldorf.de/"],
["dortmund","Onlinemarkt-Dortmund.de","https://www.onlinemarkt-dortmund.de/"],
["essen","Onlinemarkt-Essen.de","https://www.onlinemarkt-essen.de/"],
["leipzig","Onlinemarkt-Leipzig.de","https://www.onlinemarkt-leipzig.de/"],
["bremen","Onlinemarkt-Bremen.de","https://www.onlinemarkt-bremen.de/"],
["dresden","Onlinemarkt-Dresden.de","https://www.onlinemarkt-dresden.de/"],
["hannover","Onlinemarkt-Hannover.de","https://www.onlinemarkt-hannover.de/"],
["nuernberg","Onlinemarkt-Nuernberg.de","https://www.onlinemarkt-nuernberg.de/"],
["duisburg","Onlinemarkt-Duisburg.de","https://www.onlinemarkt-duisburg.de/"],
["bochum","Onlinemarkt-Bochum.de","https://www.onlinemarkt-bochum.de/"],
["wuppertal","Onlinemarkt-Wuppertal.de","https://www.onlinemarkt-wuppertal.de/"],
["bielefeld","Onlinemarkt-Bielefeld.de","https://www.onlinemarkt-bielefeld.de/"],
["bonn","Onlinemarkt-Bonn.de","https://www.onlinemarkt-bonn.de/"]
];
/* ========= Helper: map by city ========= */
function toMap(arr){
var m = {};
for (row in arr){
m[ row[1] ] = {domain=row[2], url=row[3]};
}
return m;
}
immoMap = toMap(IMMO);
wohnenMap = toMap(WOHNEN);
anzMap = toMap(ANZEIGEN);
autoMap = toMap(AUTO);
onlineMap = toMap(ONLINE);
hasImmo = structKeyExists(immoMap, citySlugURL);
hasWohnen = structKeyExists(wohnenMap, citySlugURL);
hasAnz = structKeyExists(anzMap, citySlugURL);
hasAuto = structKeyExists(autoMap, citySlugURL);
hasOnline = structKeyExists(onlineMap, citySlugURL);
/* ========= Variant A: Empfehlung nach Priorität (IMMO/WOHNEN/ANZ->/immobilien) ========= */
targetA = {label="1A-Immobilienmarkt", domain="1A-Immobilienmarkt.de", url="/suchen/#citySlugURL#/"};
headlineA = "Lokal suchen in " & citySlug;
subA = "Finde passende Angebote – schnell & regional.";
ctaA = "Jetzt " & rawCatDisplay & " finden";
badgeA = "";
hasPrimaryReco = false; // IMMO/WOHNEN/ANZEIGEN Empfehlung möglich?
if (hasImmo){
hasPrimaryReco = true;
targetA = immoMap[citySlugURL];
headlineA = "Neues Regional-Immobilienportal für " & citySlug;
if (len(districtSlug)) headlineA &= " (" & districtSlug & ")";
subA = "Mehr Übersicht, lokal kuratiert – direkt auf <strong>" & targetA.domain & "</strong>.";
ctaA = "Jetzt " & rawCatDisplay & " in " & citySlug & " suchen";
badgeA = "Immobilien";
}
else if (
!hasImmo
&& hasWohnen
&& (
categoryKey == "wohnung"
|| !len(trim(rawCat)) /* /suchen/berlin/ -> WOHNEN bevorzugen */
|| findNoCase("immobilien", rawCat)
)
){
hasPrimaryReco = true;
targetA = wohnenMap[citySlugURL];
headlineA = "Wohnungen in " & citySlug & " – lokal & schnell";
if (len(districtSlug)) headlineA &= " (" & districtSlug & ")";
subA = "Empfehlung: <strong>" & targetA.domain & "</strong> – speziell für Wohnungssuche.";
ctaA = "Jetzt Wohnung in " & citySlug & " finden";
badgeA = "Wohnen";
}
else if (!hasImmo && !(hasWohnen && categoryKey=="wohnung") && hasAnz){
/* NEU: Wenn Anzeigenmarkt existiert, IMMO/WOHNEN bevorzugt => immer /immobilien */
hasPrimaryReco = true;
targetA = anzMap[citySlugURL];
targetA.url = withImmobilienPath(targetA.url);
headlineA = "Immobilien in " & citySlug;
if (len(districtSlug)) headlineA &= " (" & districtSlug & ")";
subA = "Mehr Auswahl im <strong>" & targetA.domain & "</strong> – Bereich Immobilien.";
ctaA = "Jetzt Immobilien ansehen";
badgeA = "Immobilien";
}
/* ========= Variant B: Multi-Portal Message (zeigt Domains) ========= */
portalCount = 0;
domainsB = [];
if (hasImmo) { portalCount++; arrayAppend(domainsB, immoMap[citySlugURL].domain); }
if (hasWohnen) { portalCount++; arrayAppend(domainsB, wohnenMap[citySlugURL].domain); }
if (hasAuto) { portalCount++; arrayAppend(domainsB, autoMap[citySlugURL].domain); }
if (hasAnz) { portalCount++; arrayAppend(domainsB, anzMap[citySlugURL].domain); }
if (hasOnline) { portalCount++; arrayAppend(domainsB, onlineMap[citySlugURL].domain); }
hasAnyLocal = (portalCount > 0);
/* Auto-only Sonderfall: genau 1 Portal und das ist NUR Auto */
isAutoOnlySingle =
(portalCount == 1)
&& hasAuto
&& !hasImmo
&& !hasWohnen
&& !hasAnz
&& !hasOnline;
/* Headline B Grammatik */
if (portalCount == 1) {
headlineB = citySlug & " hat 1 neues Portal";
} else {
headlineB = citySlug & " hat " & portalCount & " neue lokale Portale";
}
if (len(districtSlug)) headlineB &= " (für " & districtSlug & ")";
/* Ziel für Banner B: IMMO/WOHNEN bevorzugen, sonst ANZEIGEN/immobilien, dann AUTO, dann ONLINE */
targetB = targetA;
if (isAutoOnlySingle) {
targetB = autoMap[citySlugURL];
headlineB = citySlug & " hat ein neues Autoportal";
if (len(districtSlug)) headlineB &= " (für " & districtSlug & ")";
subB = "Gebrauchtwagen & Angebote in " & citySlug & " – lokal auf <strong>" & targetB.domain & "</strong>.";
ctaB = "Jetzt Autoportal öffnen";
} else {
if (hasImmo) {
targetB = immoMap[citySlugURL];
} else if (hasWohnen) {
targetB = wohnenMap[citySlugURL];
} else if (hasAnz) {
targetB = anzMap[citySlugURL];
targetB.url = withImmobilienPath(targetB.url); // <-- Mannheim-Fix & Immo-first
} else if (hasAuto) {
targetB = autoMap[citySlugURL];
} else if (hasOnline) {
targetB = onlineMap[citySlugURL];
}
subB = "Immobilien, Wohnungen, Autos, Events & Jobs – alles regional gebündelt.";
ctaB = "Jetzt lokale Portale entdecken";
/* Optional: Wenn Startpunkt Anzeigenmarkt/immobilien ist, CTA konkretisieren */
if (hasAnz && !hasImmo && !hasWohnen) {
ctaB = "Jetzt Immobilien im Anzeigenmarkt";
}
}
/* ========= Variant C: Suchanzeige (wenn wirklich KEINE Domain passt) ========= */
targetC = {
label = "1A-Immobilienmarkt Suchanzeige",
url = "/inserieren/einzelinserat/objekt-inserieren/?anzeigentyp=1&pid=463049"
};
headlineC = "Schneller zur passenden " & intentLabel;
subC = "Suchanzeige schalten: Wir empfehlen Sie an Vermieter/Eigentümer – und Sie erhalten bevorzugt Angebote per E-Mail.";
ctaC = "Jetzt Suchanzeige für " & intentDealLabel & " schalten";
/* ========= Rotation / Auswahl =========
- C nur wenn GAR KEIN Portal existiert (IMMO/WOHNEN/ANZ/AUTO/ONLINE alle false)
- Wenn A nicht möglich (kein IMMO/WOHNEN/ANZ), aber Auto/Online existiert: B erzwingen
- Sonst random A/B
*/
variant = randRange(1,2); // 1=A, 2=B
if (!hasImmo && !hasWohnen && !hasAnz && !hasAuto && !hasOnline) {
variant = 3;
} else if (!hasPrimaryReco) {
variant = 2;
}
</cfscript><style>
/* ===== 300x600 Banner Styles ===== */
.banner300x600{
width:300px;height:600px; box-sizing:border-box;
font-family: Arial, Helvetica, sans-serif;
border:1px solid #e6e6e6; border-radius:16px;
overflow:hidden;
background: linear-gradient(180deg, #ffffff 0%, #f7f9ff 100%);
position:relative;
}
.b-head{ padding:18px 18px 10px 18px; }
.b-kicker{
display:inline-flex; align-items:center; gap:8px;
font-size:12px; font-weight:700; letter-spacing:.4px;
color:#3366cc; text-transform:uppercase;
}
.b-dot{ width:8px;height:8px;border-radius:99px;background:#cc6666; display:inline-block; }
.b-title{
margin:10px 0 0 0;
font-size:22px; line-height:1.15; font-weight:800; color:#0f1b33;
}
.b-sub{
margin:10px 0 0 0;
font-size:14px; line-height:1.45; color:#3b4660;
}
.b-body{ padding:10px 18px 0 18px; }
.b-pillrow{ display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.b-pill{
font-size:12px; font-weight:700; color:#0f1b33;
background:#eef3ff; border:1px solid #dbe6ff;
padding:8px 10px; border-radius:999px;
}
.b-muted{ font-size:12px; color:#6b7896; margin-top:10px; line-height:1.35; }
.b-domains{
margin-top:10px;
font-size:11px; color:#6b7896; line-height:1.35;
}
.b-domains span{
display:inline-block;
padding:4px 8px; border-radius:10px;
background:#fff; border:1px solid #eef0f6;
margin:4px 6px 0 0;
}
.b-cta{
position:absolute; left:18px; right:18px; bottom:18px;
display:flex; flex-direction:column; gap:10px;
}
.b-btn{
display:inline-block;
text-align:center;
padding:14px 14px;
border-radius:14px;
background:#3366cc;
color:#ffffff !important; /* Linktext weiß */
text-decoration:none;
font-weight:800; font-size:15px;
box-shadow: 0 10px 24px rgba(51,102,204,.25);
}
.b-btn:hover{ filter:brightness(.95); }
.b-secondary{ font-size:12px; color:#6b7896; text-align:center; }
.b-secondary strong{ color:#0f1b33; }
</style><cfoutput><div class="banner300x600" role="region" aria-label="Lokales 1A Banner"><div class="b-head"><div class="b-kicker"><span class="b-dot"></span> Lokal. Schnell. Passend.</div><cfif variant EQ 1><div class="b-title">#headlineA#</div><div class="b-sub">#subA#</div><cfelseif variant EQ 2><div class="b-title">#headlineB#</div><div class="b-sub">#subB#</div><cfelse><div class="b-title">#headlineC#</div><div class="b-sub">#subC#</div></cfif></div><div class="b-body"><div class="b-pillrow"><cfif variant EQ 1><cfif len(badgeA)><div class="b-pill">#badgeA#</div></cfif><div class="b-pill">#rawCatDisplay#</div><cfif len(districtSlug)><div class="b-pill">#districtSlug#</div></cfif><cfelseif variant EQ 2><cfif isAutoOnlySingle><div class="b-pill">Autoportal</div><div class="b-pill">#citySlug#</div><cfelse><div class="b-pill">Immobilien</div><div class="b-pill">Wohnungen</div><div class="b-pill">Autos</div><div class="b-pill">Events</div><div class="b-pill">Jobs</div></cfif><cfelse><div class="b-pill">Suchanzeige</div><div class="b-pill">#intentDealLabel#</div><cfif len(districtSlug)><div class="b-pill">#districtSlug#</div></cfif></cfif></div><cfif variant EQ 2 AND hasAnyLocal AND !isAutoOnlySingle><div class="b-domains"><strong>Domains (Auswahl):</strong><br/><cfloop array="#domainsB#" index="d"><span>#d#</span></cfloop></div><div class="b-muted">
Tipp: Starte lokal – du sparst Zeit, weil Angebote und Themen bereits auf die Region zugeschnitten sind.
</div><cfelseif variant EQ 2 AND hasAnyLocal AND isAutoOnlySingle><div class="b-muted">
Klicke jetzt auf das lokale Autoportal und entdecke Angebote in <strong>#citySlug#</strong>.
</div><cfelseif variant EQ 3><div class="b-muted">
Tipp: Mit einer Suchanzeige werden Sie aktiv sichtbar – Vermieter/Eigentümer können Sie direkt kontaktieren.
</div><cfelse><div class="b-muted">
Du bist gerade in <strong>#citySlug#</strong><cfif len(districtSlug)> / <strong>#districtSlug#</strong></cfif> unterwegs.
Wir zeigen dir den schnellsten Weg zur passenden Suche.
</div></cfif></div><div class="b-cta"><cfif variant EQ 1><a class="b-btn" href="#targetA.url#?pid=462994" target="_blank" rel="noopener">#ctaA#</a><div class="b-secondary">Empfohlen: <strong>#targetA.domain#</strong></div><cfelseif variant EQ 2><a class="b-btn" href="#targetB.url#?pid=462994" target="_blank" rel="noopener">#ctaB#</a><div class="b-secondary">Startpunkt: <strong>#targetB.domain#</strong></div><cfelse><a class="b-btn" href="#targetC.url#" target="_blank" rel="noopener">#ctaC#</a><div class="b-secondary">Empfehlung auf <strong>1A-Immobilienmarkt</strong></div></cfif></div></div></cfoutput> |
|