PassthruController :: passthruAction
Request
GET Parameters
No GET parameters
POST Parameters
No POST parameters
Uploaded Files
No files were uploaded
Request Attributes
| Key | Value |
|---|---|
| _controller | "Startplatz\Bundle\WordpressIntegrationBundle\Controller\PassthruController::passthruAction" |
| _firewall_context | "security.firewall.map.context.main" |
| _route | "startplatz_wordpress_passthru" |
| _route_params | [ "path" => "product-market-fit/" ] |
| _security_firewall_run | "_security_main" |
| _stopwatch_token | "663a1b" |
| _wordpressResponse | Symfony\Component\HttpFoundation\Response {#2602 +headers: Symfony\Component\HttpFoundation\ResponseHeaderBag {#2360 …} #content: """ <!DOCTYPE html>\n <html lang="de">\n <head>\n <meta charset="utf-8">\n <meta name="viewport" content="width=device-width, initial-scale=1">\n \n <link rel="profile" href="http://gmpg.org/xfn/11">\n <link rel="pingback" href="https://www.staging.startplatz.de/xmlrpc.php">\n <!-- third-generation iPad with high-resolution Retina display: -->\n <link rel="apple-touch-icon-precomposed" sizes="144x144" href="https://res.cloudinary.com/startplatz/image/upload/c_lpad,h_144,w_144/v1614775223/logos/STARTPLATZ_Logos/Logo_Laeufer_frei.png">\n <!-- iPhone with high-resolution Retina display: -->\n <link rel="apple-touch-icon-precomposed" sizes="114x114" href="https://res.cloudinary.com/startplatz/image/upload/c_lpad,h_114,w_114/v1614775223/logos/STARTPLATZ_Logos/Logo_Laeufer_frei.png">\n <!-- first- and second-generation iPad: -->\n <link rel="apple-touch-icon-precomposed" sizes="72x72" href="https://res.cloudinary.com/startplatz/image/upload/c_lpad,h_72,w_72/v1614775223/logos/STARTPLATZ_Logos/Logo_Laeufer_frei.png">\n <!-- non-Retina iPhone, iPod Touch, and Android 2.1+ devices: -->\n <link rel="apple-touch-icon-precomposed" href="https://res.cloudinary.com/startplatz/image/upload/c_lpad,h_56,w_56/v1614775223/logos/STARTPLATZ_Logos/Logo_Laeufer_frei.png">\n <!-- basic favicon -->\n <link rel="icon" href="https://res.cloudinary.com/startplatz/image/upload/c_lpad,h_32,w_32/v1614775223/logos/STARTPLATZ_Logos/Logo_Laeufer_frei.png" sizes="32x32">\n \n \n <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->\n <!--[if lt IE 9]>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.min.js"></script>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/respond.js/1.4.2/respond.min.js"></script>\n <![endif]-->\n <!-- Google tag (gtag.js) -->\n <script async src="https://www.googletagmanager.com/gtag/js?id=G-XYVL4EFW9X"></script>\n <script>\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n \n gtag('config', 'G-XYVL4EFW9X');\n </script>\n <!-- End Google tag -->\n \n <noscript>\n <img height="1" width="1" src="https://www.facebook.com/tr?id=767917863396798&ev=PageView&noscript=1"/>\n </noscript>\n \n <!-- wp_head starts -->\n <meta name='robots' content='noindex, nofollow' />\n \t<style>img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px }</style>\n \t\n \t<!-- This site is optimized with the Yoast SEO Premium plugin v26.4 (Yoast SEO v26.4) - https://yoast.com/wordpress/plugins/seo/ -->\n \t<title>Was bedeutet Product Market Fit? Und wie erreicht man ihn?</title>\n \t<meta name="description" content="Ein Startup muss Product Market Fit erreichen, damit es erfolgreich ist. Doch was genau bedeutet das? Und wie erreicht man dieses Stadium?" />\n \t<meta property="og:locale" content="de_DE" />\n \t<meta property="og:type" content="article" />\n \t<meta property="og:title" content="Was bedeutet Product Market Fit? Und wie erreicht man ihn?" />\n \t<meta property="og:description" content="Ein Startup muss Product Market Fit erreichen, damit es erfolgreich ist. Doch was genau bedeutet das? Und wie erreicht man dieses Stadium?" />\n \t<meta property="og:url" content="https://www.staging.startplatz.de/product-market-fit/" />\n \t<meta property="og:site_name" content="STARTPLATZ" />\n \t<meta property="article:published_time" content="2021-11-03T10:07:13+00:00" />\n \t<meta property="article:modified_time" content="2021-11-03T14:50:50+00:00" />\n \t<meta property="og:image" content="https://www.staging.startplatz.de/wp-content/uploads/2021/10/PRODUCT-MARKET-FIT.png" />\n \t<meta property="og:image:width" content="740" />\n \t<meta property="og:image:height" content="360" />\n \t<meta property="og:image:type" content="image/png" />\n \t<meta name="author" content="Rebecca Hunold" />\n \t<meta name="twitter:label1" content="Verfasst von" />\n \t<meta name="twitter:data1" content="Rebecca Hunold" />\n \t<meta name="twitter:label2" content="Geschätzte Lesezeit" />\n \t<meta name="twitter:data2" content="6 Minuten" />\n \t<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://www.staging.startplatz.de/product-market-fit/","url":"https://www.staging.startplatz.de/product-market-fit/","name":"Was bedeutet Product Market Fit? Und wie erreicht man ihn?","isPartOf":{"@id":"https://www.staging.startplatz.de/#website"},"primaryImageOfPage":{"@id":"https://www.staging.startplatz.de/product-market-fit/#primaryimage"},"image":{"@id":"https://www.staging.startplatz.de/product-market-fit/#primaryimage"},"thumbnailUrl":"https://www.staging.startplatz.de/wp-content/uploads/2021/10/PRODUCT-MARKET-FIT.png","datePublished":"2021-11-03T10:07:13+00:00","dateModified":"2021-11-03T14:50:50+00:00","author":{"@id":"https://www.staging.startplatz.de/#/schema/person/4478c41e30c9823ee167fad22bb4d049"},"description":"Ein Startup muss Product Market Fit erreichen, damit es erfolgreich ist. Doch was genau bedeutet das? Und wie erreicht man dieses Stadium?","breadcrumb":{"@id":"https://www.staging.startplatz.de/product-market-fit/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https://www.staging.startplatz.de/product-market-fit/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https://www.staging.startplatz.de/product-market-fit/#primaryimage","url":"https://www.staging.startplatz.de/wp-content/uploads/2021/10/PRODUCT-MARKET-FIT.png","contentUrl":"https://www.staging.startplatz.de/wp-content/uploads/2021/10/PRODUCT-MARKET-FIT.png","width":740,"height":360,"caption":"PRODUCT MARKET FIT"},{"@type":"BreadcrumbList","@id":"https://www.staging.startplatz.de/product-market-fit/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.staging.startplatz.de/"},{"@type":"ListItem","position":2,"name":"Blog – Hauptseite","item":"https://www.staging.startplatz.de/blog/"},{"@type":"ListItem","position":3,"name":"Was bedeutet Product Market Fit? Und wie erreicht man ihn?"}]},{"@type":"WebSite","@id":"https://www.staging.startplatz.de/#website","url":"https://www.staging.startplatz.de/","name":"STARTPLATZ","description":"Startup Inkubator in Köln und Düsseldorf","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.staging.startplatz.de/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Person","@id":"https://www.staging.startplatz.de/#/schema/person/4478c41e30c9823ee167fad22bb4d049","name":"Rebecca Hunold","image":{"@type":"ImageObject","inLanguage":"de","@id":"https://www.staging.startplatz.de/#/schema/person/image/","url":"https://secure.gravatar.com/avatar/8d861a36df32a2f3bb98a1f5eb71fc8905cd8d8c8a0cda50ee3e3deba441dc1f?s=96&r=g","contentUrl":"https://secure.gravatar.com/avatar/8d861a36df32a2f3bb98a1f5eb71fc8905cd8d8c8a0cda50ee3e3deba441dc1f?s=96&r=g","caption":"Rebecca Hunold"},"url":"https://www.staging.startplatz.de/author/rebecca-hunold/"}]}</script>\n \t<!-- / Yoast SEO Premium plugin. -->\n \n \n <link rel='dns-prefetch' href='//www.staging.startplatz.de' />\n <link rel="alternate" type="application/rss+xml" title="STARTPLATZ » Feed" href="https://www.staging.startplatz.de/feed/" />\n <link rel="alternate" type="application/rss+xml" title="STARTPLATZ » Kommentar-Feed" href="https://www.staging.startplatz.de/comments/feed/" />\n <link rel="alternate" type="application/rss+xml" title="STARTPLATZ » Was bedeutet Product Market Fit? Und wie erreicht man ihn?-Kommentar-Feed" href="https://www.staging.startplatz.de/product-market-fit/feed/" />\n <script type="text/javascript">\n /* <![CDATA[ */\n window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/16.0.1\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/16.0.1\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.staging.startplatz.de\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.8.3"}};\n /*! This file is auto-generated */\n !function(s,n){var o,i,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),a=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===a[t]})}function u(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);for(var n=e.getImageData(16,16,1,1),a=0;a<n.data.length;a++)if(0!==n.data[a])return!1;return!0}function f(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\udedf")}return!1}function g(e,t,n,a){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):s.createElement("canvas"),o=r.getContext("2d",{willReadFrequently:!0}),i=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(function(e){i[e]=t(o,e,n,a)}),i}function t(e){var t=s.createElement("script");t.src=e,t.defer=!0,s.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",i=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){s.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+g.toString()+"("+[JSON.stringify(i),f.toString(),p.toString(),u.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"}),r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=function(e){c(n=e.data),r.terminate(),t(n)})}catch(e){}c(n=g(i,f,p,u))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings);\n /* ]]> */\n </script>\n <style id='wp-emoji-styles-inline-css' type='text/css'>\n \n \timg.wp-smiley, img.emoji {\n \t\tdisplay: inline !important;\n \t\tborder: none !important;\n \t\tbox-shadow: none !important;\n \t\theight: 1em !important;\n \t\twidth: 1em !important;\n \t\tmargin: 0 0.07em !important;\n \t\tvertical-align: -0.1em !important;\n \t\tbackground: none !important;\n \t\tpadding: 0 !important;\n \t}\n </style>\n <link rel='stylesheet' id='wp-block-library-css' href='https://www.staging.startplatz.de/wp-includes/css/dist/block-library/style.min.css?ver=6.8.3' type='text/css' media='all' />\n <style id='classic-theme-styles-inline-css' type='text/css'>\n /*! This file is auto-generated */\n .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}\n </style>\n <style id='global-styles-inline-css' type='text/css'>\n :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}\n :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}\n :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}\n :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}\n </style>\n <link rel='stylesheet' id='mc4wp-form-styles-builder-css' href='//www.staging.startplatz.de/wp-content/uploads/mc4wp-stylesheets/bundle.css?ver=1649164263' type='text/css' media='all' />\n <link rel="https://api.w.org/" href="https://www.staging.startplatz.de/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.staging.startplatz.de/wp-json/wp/v2/posts/72441" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.staging.startplatz.de/xmlrpc.php?rsd" />\n <meta name="generator" content="WordPress 6.8.3" />\n <link rel='shortlink' href='https://www.staging.startplatz.de/?p=72441' />\n <link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.staging.startplatz.de/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.staging.startplatz.de%2Fproduct-market-fit%2F" />\n <link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.staging.startplatz.de/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.staging.startplatz.de%2Fproduct-market-fit%2F&format=xml" />\n <!-- wp_head ends -->\n <!-- startplatz default styles starts -->\n <link rel='stylesheet' id='bootstrap.min-css' href='/wp-content/themes/startplatz/css/bootstrap.min.css?ver=5.3.2' type='text/css' media='all' />\n <link rel='stylesheet' id='main.css-css' href='/wp-content/themes/startplatz/styles/main.css?ver=5.3.2' type='text/css' media='all' />\n <!-- startplatz default styles ends -->\n \n </head>\n \n \n <body id="top" >\n <!--[if lt IE 10]>\n <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>\n <![endif]-->\n <!-- menu -->\n \n <!-- homepage menu @StartPlatzWebsiteBundle/Default/menu.html.twig -->\n \n \n \n <nav class="navbar" data-spy="affix" data-offset-top="60">\n <div class="container">\n <div class="row">\n <div class="navbar-header">\n <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">\n <span class="sr-only">Toggle navigation</span>\n <span class="icon-bar"></span>\n <span class="icon-bar"></span>\n <span class="icon-bar"></span>\n </button>\n <a class="navbar-brand" href="/">\n <i class="icon-startplatz"></i></a>\n </div>\n <div id="navbar" class="navbar-collapse collapse">\n <ul class="nav navbar-nav navbar-left">\n <li class="active"><a href="/x/home">x</a></li>\n </ul>\n <ul class="nav navbar-nav navbar-right">\n <li><a href="/memberships">Memberships</a></li>\n <li><a href="https://accelerator.startplatz.de">Accelerator</a></li>\n \n <li><a href="/fuer-unternehmen">Unternehmen</a></li>\n \n <li>\n <a href="/konferenzraum" class="dropdown-toggle" data-toggle="dropdown">\n Konferenzräume <span class="caret"></span>\n </a>\n \n <ul class="dropdown-menu">\n <li><a href="/koeln-tagungsraeume-und-konferenzraeume">Konferenzräume in Köln</a></li>\n <li><a href="/duesseldorf-tagungsraeume-und-konferenzraeume">Konferenzräume in Düsseldorf</a></li>\n </ul>\n </li>\n \n <li><a href="/events">Events</a></li>\n \n \n <li class="dropdown">\n <a href="#" class="dropdown-toggle" data-toggle="dropdown">\n Über uns <span class="caret"></span>\n </a>\n <ul class="dropdown-menu">\n <li><a href="/presse">Über STARTPLATZ</a></li>\n <li><a href="/standorte">Standorte</a></li>\n <li><a href="/startplatz-team">STARTPLATZ Team</a></li>\n <li><a href="/partner">Partner</a></li>\n <li><a href="/startups">Unsere Startups</a></li>\n <li><a href="/jobs">Startup Jobs</a></li>\n <li><a href="/benefits/perks">Software für Startups</a></li>\n <li><a href="/sprechstunden">Sprechstunden</a></li>\n <li><a href="https://www.rheinland-pitch.de">Rheinland Pitch</a></li>\n <li><a href="/startup-wiki">Startup Wiki</a></li>\n <li><a href="/referenzen">Referenzen</a></li>\n <li><a href="/karriere">Karriere</a></li>\n </ul>\n </li>\n <li><a href="/blog">Blog</a></li>\n \n \n \n <li> <a href="/en"><img src="/bundles/startplatzstyle/images/english_language.png" height="20px;" alt=“”></a>\n </li>\n </ul>\n \n </div>\n </div>\n </div>\n </nav>\n \n \n <!-- menu -->\n \n <div class="container-fluid cut-bottom">\n <div class="banner banner-wide top-blog-item">\n <div class="banner-content">\n <strong style="font-size:36px">Blog</strong>\n <p>News rund um den STARTPLATZ, die Startup-Szene und Digitalthemen.</p>\n </div>\n </div>\n </div>\n \n <style type="text/css">\n </style>\n \n <div class="container">\n <div class="row row-equal page">\n <div class="col-xs-12 col-md-8 page-main">\n \n \n <div class="row">\n <a href="https://www.staging.startplatz.de/product-market-fit/"><img class="img-responsive" src="https://www.staging.startplatz.de/wp-content/uploads/2021/10/PRODUCT-MARKET-FIT.png" alt="" style="width: 7830px; "></a>\n </div>\n <div class="separator"></div>\n <h1 style="line-height: 2em;">Was bedeutet Product Market Fit? Und wie erreicht man ihn?</h1>\n <p class="date">3. November 2021, 11:07 :: <a href="https://www.staging.startplatz.de/category/allgemein/" rel="category tag">Allgemein</a></p>\n <p class="date">Autor: Rebecca Hunold</p>\n <p><p><strong>Ein Startup muss mit seinem Produkt <em>Product Market Fit </em>erreichen, das heißt die Lösung auf ein relevantes Kundenproblem bieten, damit es am Markt erfolgreich ist. Doch was genau bedeutet Product Market Fit? Und wie kannst du dieses Stadium erreichen? Diesen Fragen gehen wir auf den Grund!</strong></p>\n <p><span id="more-72441"></span></p>\n <h2>Was ist Product Market Fit?</h2>\n <p> <br />\n Product Market Fit ist eine Phase in der <a href="https://www.startplatz.de/was-ist-ein-startup-definition/" target="_blank" rel="noopener">typischen Entwicklung eines Startups</a>. Nachdem ein Problem identifiziert wurde und ein Prototyp, das <a href="https://www.startplatz.de/startup-wiki/mvp/" target="_blank" rel="noopener">Minimum Viable Product</a>, entwickelt wurde, wird das Produkt iteriert, getestet und stetig verbessert – und das ständig und immer wieder – bis es den sogenannten Product Market Fit erreicht. Konkret bedeutet das, dass es nicht nur ein <strong>Problem des Zielkunden löst</strong>, sondern dass <strong>die Lösung dieses Problems relevant ist und damit am Markt eine Nachfrage für das entsprechende Produkt existiert</strong>. Erst wenn das Produkt dieses Stadium erreicht, ist es sinnvoll, mit dem <a href="https://www.startplatz.de/startup-wiki/funding/" target="_blank" rel="noopener">Fundraising</a> zu beginnen. Es sollte unbedingt vermieden werden, dass GründerInnen zu viel Mühe in die Entwicklung des Produkts stecken, bevor sie die Geschäftsidee nicht validiert haben.</p>\n <p>Product Market Fit zu erreichen ist ein wichtiger und doch schwieriger Schritt. Viele Startups erreichen ihn erst nach mehreren Jahren – wenn überhaupt – und manchmal sogar erst nach dem Fundraising.<br />\n <br />\n <center><img fetchpriority="high" decoding="async" class="img-responsive" src="https://www.startplatz.de/wp-content/uploads/2021/10/Product-Market-Fit-Startup-Entwicklung-724x1024.png" alt="Product-Market-Fit-Startup-Entwicklung" width="300" height="424" /></center><br />\n </p>\n <h3>Problem Space vs. Solution Space</h3>\n <p> <br />\n Generell sollten sich die Überlegungen bei der Produktentwicklung zunächst ausschließlich im <em>Problem Space</em> bewegen, das heißt erst sollte das <strong>Kundenproblem</strong> sorgfältig ermittelt und recherchiert werden, um Wissen zu generieren und spätere Risiken zu ermitteln und zu minimieren. Erst nachdem die sogenannte <em>Product Discovery </em>abgeschlossen ist, ist es sinnvoll in den <em>Solution Space</em> überzugehen und an der <strong>konkreten Umsetzung der Lösung</strong> zu arbeiten, wobei das Wissen aus der Discovery-Phase bei der <em>Product Delivery</em> genutzt werden kann.<br />\n </p>\n <h3>Problem Solution Fit vs. Product Market Fit</h3>\n <p> <br />\n Zu Beginn steht also immer die Frage nach dem Problem des Kunden. Die Grundidee eines Startups ist es nun, die Lösung zu diesem Problem zu entwickeln, damit der Kunde zum Produkt kommt. Wenn das erreicht ist, gibt es zwar eine passende Lösung für ein Problem, das heißt <em>Problem Solution Fit </em>ist erreicht – das bedeutet aber nicht, dass es auch einen Markt für dieses Produkt gibt. Nur wenn es sich um ein <strong>relevantes Problem</strong> handelt, das von dem jetzigen Markt <strong>nicht ausreichend bedient</strong> wird – sprich, es auch eine <strong>Nachfrage</strong> nach der Lösung gibt – ist <em>Product Market Fit</em> erreicht.<br />\n </p>\n <h2>Wie erreiche ich Product Market Fit?</h2>\n <p> <br />\n Der Product Market Fit zeigt, wie gut das Produkt auf die Bedürfnisse des Zielmarktes angepasst ist. Die meisten Startups haben eine Idee von einem Problem und eine Idee von einer Lösung – oft haben sie aber zuvor kaum mit den End-Usern gesprochen und wissen daher nicht, ob diese Annahmen und dementsprechend die Entscheidungen, die sie treffen, mit der Realität übereinstimmen. Viele dieser Startups erreichen dementsprechend kein Product Market Fit.</p>\n <p>Als GründerIn solltest du dir daher VOR der Entwicklung des Produktes folgende Fragen stellen:<br />\n </p>\n <h3>Wer ist mein Target User? Wer soll das Produkt kaufen und am Ende nutzen?</h3>\n <p> <br />\n Stelle zunächst heraus, wer deine <strong>Zielkunden</strong> sind und welche <strong>Eigenschaften</strong> sie besitzen. Zudem solltest du ermitteln, was ihre <strong>Probleme</strong> sind und wie du diese adressieren kannst. Du kannst es nicht allen recht machen. Es ist wichtig, dass du ein Profil herausbildest und dich auf dessen Bedürfnisse konzentrierst.</p>\n <p>Hilfreich ist es dabei, sogenannte <strong>Buyer Personas</strong> anzulegen. Das sind realistische Stellvertreter echter Nutzer und basieren auf Hypothesen oder, falls vorhanden, auf erhobenen Daten. Der Vorteil der Nutzung von Personas ist, dass sie Selbstreferenzen reduzieren und dem Drang, jedem Nutzer zu helfen, vorbeugen. Die Form eines Personas kann variieren: Es kann ein fiktives Foto oder eine Zeichnung zeigen und einen beschreibenden Text oder Steckbrief enthalten, der Punkte wie Verhalten, Aufgaben, Demografie, Psychographie, Bedürfnisse, Gains und Pain Points aufzeigt.</p>\n <p>Mit der Erstellung eines Buyer Persona ist es aber noch nicht geschafft – jetzt beginnt erst der zentrale Teil: <strong>Was ist <span style="text-decoration: underline;">DAS</span> Problem dieser Persona</strong>, das du adressieren möchtest? Damit müssen sich die GründerInnen ständig und intensiv auseinandersetzen.<br />\n </p>\n <h3>Welche Probleme löst mein Produkt?</h3>\n <p> <br />\n Du wirst wohl kaum mit einem Produkt alle Bedürfnisse deiner Zielgruppe befriedigen können. Mache dir also Gedanken darüber, <strong>welche der verschiedenen Pain Points</strong> du mit deinem Startup konkret adressierst. Sinnvoll ist es, sich dabei auf die Bedürfnisse zu konzentrieren, dessen Erfüllung bei deinen Target Usern einen <strong>hohen Stellenwert</strong> und damit ein hohes Marktpotential haben, die aber von Alternativen im Zielmarkt<strong> bisher wenig adressiert</strong> werden. Welche Probleme bestehen weiterhin? Welche Bedürfnisse bleiben unerfüllt? Wenn du das Problem bzw. die Probleme identifiziert hast, für das dein Produkt die Lösung darstellt, ist der nächste Schritt, die Größe dieses Problems zu bestimmen.<br />\n </p>\n <h3>Wie habe ich dieses Bedürfnis geprüft? Habe ich das an echten Personen geprüft?</h3>\n <p> <br />\n Bei der Entwicklung eines Produktes besteht die Gefahr, dass du und dein Team von dem Produkt so überzeugt seid, dass ihr zu viele Fakten verdrängt oder ignoriert, die gegen den Erfolg des Produktes sprechen. Diese Überzeugung und der Spirit sind gut und wichtig, jedoch muss man dabei realistisch und objektiv bleiben, um ein späteres Scheitern zu verhindern. Deswegen ist <a href="https://www.startplatz.de/feedback-zu-deiner-startup-idee" target="_blank" rel="noopener">objektives Feedback von echten Feedback-Gebern</a> extrem wichtig. Dabei sollte es sich auch nicht um Freunde oder Familie handeln, sondern um Experten oder echte Zielkunden.</p>\n <p>Ein weiterer Fehler, den Startups häufig begehen, ist es, die Idee bzw. das Produkt zu lange zu verstecken und auf Perfektion statt auf Feedback zu setzen. Es ist sinnvoll, so schnell wie möglich mit dem Produkt auf den Markt zu gehen und direktes Nutzerfeedback zu erhalten. So kannst du mit dem Input der Nutzer die grundlegende Version des Produktes immer weiter verbessern, bevor sich Marktgegebenheiten und Nutzerbedürfnisse ändern. <a href="https://www.startplatz.de/startup-wiki/mvp/" target="_blank" rel="noopener">Mehr dazu in diesem Artikel.</a><br />\n </p>\n <h2>Fazit: Erst das Problem, dann die Lösung</h2>\n <p> <br />\n Es reicht also nicht, sich nach der Entwicklung eines Prototypen oder beim Markteintritt Gedanken über das Erreichen des Product Market Fit zu machen. Die Lösung liegt in diesem Fall im Problem ;) Nur wenn du dir zu Beginn Gedanken um den Stellenwert und Befriedigung der Bedürfnisse deiner Zielkunden machst, kannst du sichergehen, dass das finale Produkt auf dem Markt nachgefragt wird.<br />\n <br />\n <center><strong>In unserer <a href="https://www.startplatz.de/startup-academy/" target="_blank" rel="noopener">Startup Academy</a> findest du übrigens eine ganze Session zum Thema Product Market Fit, gehalten von Tim Klein von <a href="https://produktwerker.de/" target="_blank" rel="noopener">Die Produktwerker</a>. In der Session lernst du anhand konkreter Beispiele, was Product Market Fit bedeutet, wie du ihn erreichst und welche Fehler Startups häufig auf der Suche danach begehen.</strong></center></p>\n <p><center><a class="btn btn-success text-uppercase" style="margin-top: 5px; margin-bottom: 5px; font-weight: bold;" href="https://www.startplatz.de/startup-academy/">Zur „Product Market Fit“ Academy Session</a></center></p>\n </p>\n \n \n <script>(function() {\n \twindow.mc4wp = window.mc4wp || {\n \t\tlisteners: [],\n \t\tforms: {\n \t\t\ton: function(evt, cb) {\n \t\t\t\twindow.mc4wp.listeners.push(\n \t\t\t\t\t{\n \t\t\t\t\t\tevent : evt,\n \t\t\t\t\t\tcallback: cb\n \t\t\t\t\t}\n \t\t\t\t);\n \t\t\t}\n \t\t}\n \t}\n })();\n </script><!-- Mailchimp for WordPress v4.10.8 - https://wordpress.org/plugins/mailchimp-for-wp/ --><form id="mc4wp-form-1" class="mc4wp-form mc4wp-form-53992 mc4wp-form-styles-builder mc4wp-ajax" method="post" data-id="53992" data-name="Blogartikel" ><div class="mc4wp-form-fields"><p>\r\n \t<label>Jetzt unseren Newsletter abonnieren und keine News aus der Startup-Szene mehr verpassen!</label>\r\n \t<label> \r\n \t\t<input type="email" name="EMAIL" placeholder="Deine E-Mail Adresse" required />\r\n </label>\r\n </p>\r\n <p>\r\n \t<input type="submit" value="Registrieren" />\r\n </p></div><label style="display: none !important;">Wenn du ein Mensch bist, lasse das Feld leer: <input type="text" name="_mc4wp_honeypot" value="" tabindex="-1" autocomplete="off" /></label><input type="hidden" name="_mc4wp_timestamp" value="1767005157" /><input type="hidden" name="_mc4wp_form_id" value="53992" /><input type="hidden" name="_mc4wp_form_element_id" value="mc4wp-form-1" /><div class="mc4wp-response"></div></form><!-- / Mailchimp for WordPress Plugin -->\n \n \n \n \n \n \n <hr class="hr-section">\n \n \n <div class="separator"></div>\n \n <div class="section-header">\n </div>\n <div class="section-header">\n <h2>Kommende Events</h2>\n <div class="btn-group pull-right">\n <button type="button" class="btn btn-gray dropdown-toggle" data-toggle="dropdown">\n Alle anzeigen <span class="caret"></span>\n </button>\n <ul class="dropdown-menu">\n <li><a href="/events?tag=network">Network events</a></li>\n <li><a href="/events?tag=workshop">Workshops</a></li>\n <li><a href="/events?tag=konferenz">Conferences</a></li>\n <li><a href="/events?tag=talk">Talks</a></li>\n <li><a href="/events?tag=pitch">Pitch events</a></li>\n </ul>\n </div>\n </div>\n \n \n <div class="separator quadruple"></div>\n \n </div>\n <div class="col-xs-12 col-md-4 page-aside">\n \n \n \n \n <style>\r\n .single {\r\n padding: 1px 30px 14px;\r\n margin-top: 0px;\r\n background: #525459;\r\n border: 0px solid #f0f0f0; }\r\n .single ul {\r\n margin-bottom: 0; }\r\n .single li a {\r\n color: #ffffff;\r\n font-size: 14px;\r\n font-weight: bold;\r\n text-transform: uppercase;\r\n border-bottom: 1px solid #f0f0f0;\r\n line-height: 32px;\r\n display: block;\r\n text-decoration: none; }\r\n .single li a:hover {\r\n color: #7ab800; }\r\n .single li:last-child a {\r\n border-bottom: 0px; }\r\n </style>\r\n <div class="row">\r\n <div class="single category">\r\n <div class="section-header">\r\n \t\t<center><h2 style="color: #ffffff;">Kategorien</h2></center>\r\n </div>\r\n \t\t<ul class="list-unstyled">\r\n \t\t\t<li><a href="https://www.startplatz.de/blog" title="">Alle Blogbeiträge </a></li>\r\n \t\t\t<li><a href="https://www.startplatz.de/category/erfolgsgeschichten/" title="">Erfolgsgeschichten</a></li>\r\n \t\t\t<li><a href="https://www.startplatz.de/category/accelerator/" title="">Accelerator </a></li>\r\n <li><a href="https://www.startplatz.de/category/success-story/" title="">Success Stories </a></li>\r\n \t\t\t<li><a href="https://www.startplatz.de/category/community/" title="">Community </a></li>\r\n \t\t\t<li><a href="https://www.startplatz.de/category/corporate-services/" title="">Corporate Services </a></li>\r\n \t\t\t<li><a href="https://www.startplatz.de/category/rheinland-pitch/" title="">Rheinland-Pitch </a></li>\r\n \t\t\t<li><a href="https://www.startplatz.de/category/aktuelle-trends/" title="">Aktuelle Trends </a></li>\r\n \t\t\t<li><a href="https://www.startplatz.de/category/veranstaltungen/" title="">Events </a></li>\r\n \t\t\t<li><a href="https://www.startplatz.de/category/news/" title="">News </a></li>\r\n \t\t</ul>\r\n </div>\r\n </div>\n \n <div class="separator"></div>\n <div class="section-header">\n <form role="search" method="get" class="search-form" action="https://www.staging.startplatz.de/">\n \t\t\t\t<label>\n \t\t\t\t\t<span class="screen-reader-text">Suche nach:</span>\n \t\t\t\t\t<input type="search" class="search-field" placeholder="Suchen …" value="" name="s" />\n \t\t\t\t</label>\n \t\t\t\t<input type="submit" class="search-submit" value="Suchen" />\n \t\t\t</form></div>\n \n \n \n \n <div class="separator"></div>\n <div class="section-header">\n <h2>Neueste Beiträge</h2>\n </div>\n <div class="tweet">\n \n <div class="media">\n <div class="media-left">\n <img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2024/10/Titelbild-Blogbeitrag-50-80x80.png" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n <div class="media-body">\n <a href="https://www.staging.startplatz.de/8-seo-tipps-und-tricks-fuer-kleine-unternehmen/">8 SEO-Tipps und -Tricks für kleine Unternehmen</a> <br> 14. Oktober </div>\n \n </div>\n \n <div class="media">\n <div class="media-left">\n <img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2024/10/Titelbild-Blogbeitrag-49-80x80.png" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n <div class="media-body">\n <a href="https://www.staging.startplatz.de/gesund-bleiben-bei-langen-arbeitstagen-vor-dem-bildschirm/">Gesund bleiben bei langen Arbeitstagen vor dem Bildschirm</a> <br> 14. Oktober </div>\n \n </div>\n \n <div class="media">\n <div class="media-left">\n <img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2024/10/Titelbild-Blogbeitrag-46-80x80.png" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n <div class="media-body">\n <a href="https://www.staging.startplatz.de/am-anfang-steht-die-website-der-schluessel-fuer-jedes-startup/">Am Anfang steht die Website: der Schlüssel für jedes Startup</a> <br> 9. Oktober </div>\n \n </div>\n \n <div class="media">\n <div class="media-left">\n <img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2024/10/Titelbild-Blogbeitrag-45-80x80.png" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n <div class="media-body">\n <a href="https://www.staging.startplatz.de/hlpy-sammelt-18-millionen-euro-ein-und-expandiert-in-europa/">HLPY sammelt 18 Millionen Euro ein und expandiert in Europa</a> <br> 2. Oktober </div>\n \n </div>\n \n <div class="media">\n <div class="media-left">\n <img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2024/09/Titelbild-Blogbeitrag-44-80x80.png" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n <div class="media-body">\n <a href="https://www.staging.startplatz.de/aufbau-eines-starken-gruender-netzwerks-diese-bildungswege-legen-den-grundstein/">Aufbau eines starken Gründer-Netzwerks: Diese Bildungswege legen den Grundstein</a> <br> 30. September </div>\n \n </div>\n \n </div>\n \n <div class="banner text-white tarife">\r\n <div class="banner-content">\r\n <h2>Community Membership</h2>\r\n \r\n <hr class="hr-white" />\r\n \r\n <h4>\r\n Werde Teil der <b>größten Startup Community im Rheinland\r\n <br><br>\r\n <i>Bereits ab 10 €/Monat!</i></b>\r\n <!--Jetzt 14 Tage kostenlos testen!-->\r\n </h4>\r\n \r\n <a class="btn btn-transparent hover-black" href="/community-membership/">Jetzt informieren!</a>\r\n \r\n </div>\r\n </div>\n \n <div class="banner grunderstipendium_s text-white">\r\n <div class="banner-content">\r\n <h2>Gastbeiträge</h2>\r\n \r\n <hr class="hr-white" />\r\n \r\n „Du schreibst interessante Artikel, die auf unsere Zielgruppe zugeschnitten sind und willst deinen Content auf unserem Blog präsentieren? \r\n <a class="btn btn-transparent" href="mailto:marketing@startplatz.de?subject=Gastbeitrag%20STARTPLATZ">Kontaktiere uns!</a>\r\n \r\n </div>\r\n </div>\n \n \n <div class="banner bg-white">\n <div class="banner-content">\n <h2>Konferenzräume mieten</h2>\n <hr class="hr-green">\n <p class="text-gray">Durch klicken Standort wählen.</p>\n <a href="/koeln-tagungsraeume-und-konferenzraeume" class="btn btn-green">Köln</a>\n <a href="/duesseldorf-tagungsraeume-und-konferenzraeume" class="btn btn-green">Düsseldorf</a>\n </div>\n </div>\n \n <div class="separator"></div>\n <div class="section-header">\n <h2>Latest tweets</h2>\n </div>\n <div class="tweet">\n <h3>STARTPLATZ</h3>\n <a class="twitter-timeline" href="https://twitter.com/STARTPLATZ" data-widget-id="604687445137993728">Tweets von @STARTPLATZ </a>\n <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>\n </div>\n </div>\n </div>\n </div>\n \n \n \n \n \n \n \n \n <footer>\n <div class="startplatz-footer">\n <div class="container">\n <div class="row">\n <div class="newsletter col-xs-12 col-md-8">\n <div class="section-header">\n <h2>Newsletter</h2>\n </div>\n <p>Immer auf dem Laufenden bleiben?<br>Erhalte regelmäßig alle News aus dem STARTPLATZ, zu Workshops und Events.</p>\n \n <!-- Begin MailChimp Signup Form -->\n <div id="mc_embed_signup">\n <form id="mc-embedded-subscribe-form" class="validate" action="https://startplatz.us5.list-manage.com/subscribe?u=8a2b498caca4323b774191382&id=be73f77d94" method="post" name="mc-embedded-subscribe-form" novalidate="" target="_blank">\n <div id="mc_embed_signup_scroll form-group email-wrapper">\n <button type="submit" class="btn btn-green">Hier Abonnieren</button>\n <!-- real people should not fill this in and expect good things - do not remove this or risk form bot signups-->\n <div style="position: absolute; left: -5000px;"><input tabindex="-1" name="b_8a2b498caca4323b774191382_51dae9d56a" type="text" value="" /></div>\n <div class="clear"></div>\n </div>\n </form></div>\n <!--End mc_embed_signup-->\n \n </div>\n <div class="social col-xs-12 col-md-4">\n <div class="section-header">\n <h2>Folge uns</h2>\n </div>\n <p>Folge uns auf Facebook, Twitter oder Instagram</p>\n <ul class="icons-list list-inline list-unstyled">\n <li><a target="_blank" href="https://www.facebook.com/startplatz"><i class="fa fa-facebook fa-4x"></i></a></li>\n <li><a target="_blank" href="https://twitter.com/startplatz"><i class="fa fa-twitter fa-4x"></i></a> </li>\n <li><a target="_blank" href="https://instagram.com/startplatz/"><i class="fa fa-instagram fa-4x"></i></a> </li>\n <!-- <li><a href="blog.html"><i class="fa fa-wordpress fa-4x"></i></a></li> -->\n </ul>\n <div class="pe-richsnippets"></div>\n <script type="text/javascript" src="https://www.provenexpert.com/widget/richsnippet.js?u=1HQBkRmo1xQpmqGB1xmA5DGAlMwpkxQZ&v=2" async></script>\n </div>\n </div>\n <div class="row row-equal">\n <div class="footer-menu col-md-8 visible-md visible-lg">\n <div class="row">\n <div class="col-xs-4">\n <div class="section-header">\n <h3>STARTPLATZ</h3>\n </div>\n <ul class="list-unstyled list-sm">\n <li><a href="/kontakt-aufnehmen">Kontakt</a></li>\n <li><a href="/pressebereich">Presse</a></li>\n <li><a href="/jobs">Jobs</a></li>\n <li><a href="/standorte">Standorte</a></li>\n </ul>\n </div>\n <div class="col-xs-4">\n <div class="section-header">\n <h3>Über diese Website</h3>\n </div>\n <ul class="list-unstyled list-sm">\n <li><a href="/wlan-am-startplatz-koeln">WLAN am STARTPLATZ Koeln</a></li>\n <li><a href="/startplatz-archiv">Archiv</a></li>\n <li><a href="/startplatz-agb">AGB</a></li>\n <li><a href="/impressum">Impressum</a></li>\n <li><a href="/datenschutz">Datenschutz</a></li>\n </ul>\n </div>\n <div class="col-xs-4">\n <div class="section-header">\n <h3>Top Themen</h3>\n </div>\n <ul class="list-unstyled list-sm">\n <li><a href="/coworking-koeln"><span class="fas fa-long-arrow-alt-right mr-2"></span>Coworking Köln</a></li>\n <li><a href="/coworking-duesseldorf"><span class="fas fa-long-arrow-alt-right mr-2"></span>Coworking Düsseldorf</a></li>\n <li><a href="/konferenzraum"><span class="fas fa-long-arrow-alt-right mr-2"></span>Konferenzraum mieten in Köln</a></li>\n <li><a href="/duesseldorf-tagungsraeume-und-konferenzraeume/"><span class="fas fa-long-arrow-alt-right mr-2"></span>Konferenzraum mieten in Düsseldorf</a></li>\n <li><a href="/startup-wiki/business-model-canvas"><span class="fas fa-long-arrow-alt-right mr-2"></span>Business Model Canvas</a></li>\n <li><a href="https://accelerator.startplatz.de/"><span class="fas fa-long-arrow-alt-right mr-2"></span>STARTPLATZ Accelerator</a></li>\n <li><a href="/corporate-innovation-page"><span class="fas fa-long-arrow-alt-right mr-2"></span>Corporate Innovation</a></li>\n <li><a href="/startup-wiki/pitch"><span class="fas fa-long-arrow-alt-right mr-2"></span>Pitch</a></li>\n <li><a href="/projektbuero-mieten"><span class="fas fa-long-arrow-alt-right mr-2"></span>Projektbüro mieten</a></li>\n <li><a href="/meetingraeume-mieten"><span class="fas fa-long-arrow-alt-right mr-2"></span>Meetingräume mieten</a></li>\n <li><a href="/coworker-werden"><span class="fas fa-long-arrow-alt-right mr-2"></span>Coworker werden</a></li>\n <li><a href="/startup-membership"><span class="fas fa-long-arrow-alt-right mr-2"></span>Startup Firmenmitgliedschaft</a></li>\n <li><a href="/karriere"><span class="fas fa-long-arrow-alt-right mr-2"></span>Startup Jobs am STARTPLATZ</a></li>\n <li><a href="/digital-speed-networking"><span class="fas fa-long-arrow-alt-right mr-2"></span>Speed Networking</a></li>\n <li><a href="/gruenderstipendium-nrw"><span class="fas fa-long-arrow-alt-right mr-2"></span>Gründungsstipendium</a></li>\n <li><a href="/benefits/perks"><span class="fas fa-long-arrow-alt-right mr-2"></span>Software für Startups</a></li>\n <li><a href="/startup-wiki"><span class="fas fa-long-arrow-alt-right mr-2"></span>Startup Wiki</a></li>\n <li><a href="/sprechstunden"><span class="fas fa-long-arrow-alt-right mr-2"></span>Sprechstunden</a></li>\n <li><a href="/mentoring"><span class="fas fa-long-arrow-alt-right mr-2"></span>Mentorinnen und Mentoren</a></li>\n </ul>\n </div>\n </div>\n </div>\n <div class="kontakt col-xs-12 col-md-4">\n <div class="content-wrapper">\n <div class="section-header">\n <h2 class="visible-sm visible-xs">Kontakt</h2>\n <h3 class="visible-md visible-lg">Kontakt</h3>\n </div>\n <div class="row">\n <div class="col-xs-6">\n <p class="address city">Köln</p>\n <p class="address">Im Mediapark 5 <br>50670 Köln</p>\n <p class="address">info@startplatz.de</p>\n <p class="address">+49 221 975 802 00</p>\n </div>\n <div class="col-xs-6">\n <p class="address city">Düsseldorf</p>\n <p class="address">Speditionstraße 15a <br>40221 Düsseldorf</p>\n <p class="address">info@startplatz.de</p>\n <p class="address">+49 211 936 725 20</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="copyrights" style="color: black;">\n © Copyright Startplatz 2025\n </div>\n </div>\n </div>\n </footer>\n <link rel="stylesheet" type="text/css" href="/wp-includes/css/cookieconsent.min.css" />\n <script src="/wp-includes/js/cookieconsent.min.js" defer></script>\n <script>\n window.addEventListener("load", function(){\n window.cookieconsent.initialise({\n "palette": {\n "popup": {\n "background": "#edeff5",\n "text": "#838391"\n },\n "button": {\n "background": "#4b81e8"\n }\n },\n "content": {\n "message": "Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die weitere Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Weitere Informationen zu Cookies erhalten Sie in unserer Datenschutzerklärung.",\n "dismiss": "Akzeptieren",\n "link": "Mehr Informationen",\n "href": "https://www.startplatz.de/datenschutz"\n }\n })\n });\n </script>\n \n \n <!-- wp_footer starts -->\n <script type="speculationrules">\n {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"\/*"},{"not":{"href_matches":["\/wp-*.php","\/wp-admin\/*","\/wp-content\/uploads\/*","\/wp-content\/*","\/wp-content\/plugins\/*","\/wp-content\/themes\/startplatz\/*","\/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}\n </script>\n <script async>(function(s,u,m,o,j,v){j=u.createElement(m);v=u.getElementsByTagName(m)[0];j.async=1;j.src=o;j.dataset.sumoSiteId='39f60b00513044004a8fe0004ce6fc0099bffb000c2cd200cfc8f4006d6fae00';j.dataset.sumoPlatform='wordpress';v.parentNode.insertBefore(j,v)})(window,document,'script','//load.sumome.com/');</script> <script type="application/javascript">\r\n const ajaxURL = "https://www.staging.startplatz.de/wp-admin/admin-ajax.php";\r\n \r\n function sumo_add_woocommerce_coupon(code) {\r\n jQuery.post(ajaxURL, {\r\n action: 'sumo_add_woocommerce_coupon',\r\n code: code,\r\n });\r\n }\r\n \r\n function sumo_remove_woocommerce_coupon(code) {\r\n jQuery.post(ajaxURL, {\r\n action: 'sumo_remove_woocommerce_coupon',\r\n code: code,\r\n });\r\n }\r\n \r\n function sumo_get_woocommerce_cart_subtotal(callback) {\r\n jQuery.ajax({\r\n method: 'POST',\r\n url: ajaxURL,\r\n dataType: 'html',\r\n data: {\r\n action: 'sumo_get_woocommerce_cart_subtotal',\r\n },\r\n success: function (subtotal) {\r\n return callback(null, subtotal);\r\n },\r\n error: function (err) {\r\n return callback(err, 0);\r\n }\r\n });\r\n }\r\n </script>\r\n <script>(function() {function maybePrefixUrlField () {\n const value = this.value.trim()\n if (value !== '' && value.indexOf('http') !== 0) {\n this.value = 'http://' + value\n }\n }\n \n const urlFields = document.querySelectorAll('.mc4wp-form input[type="url"]')\n for (let j = 0; j < urlFields.length; j++) {\n urlFields[j].addEventListener('blur', maybePrefixUrlField)\n }\n })();</script><script type="text/javascript" src="https://www.staging.startplatz.de/wp-includes/js/comment-reply.min.js?ver=6.8.3" id="comment-reply-js" async="async" data-wp-strategy="async"></script>\n <script type="text/javascript" defer src="https://www.staging.startplatz.de/wp-content/plugins/mailchimp-for-wp/assets/js/forms.js?ver=4.10.8" id="mc4wp-forms-api-js"></script>\n <script type="text/javascript" id="mc4wp-ajax-forms-js-extra">\n /* <![CDATA[ */\n var mc4wp_ajax_vars = {"loading_character":"\u2022","ajax_url":"https:\/\/www.staging.startplatz.de\/wp-admin\/admin-ajax.php?action=mc4wp-form","error_text":"Leider ist ein Fehler aufgetreten. "};\n /* ]]> */\n </script>\n <script type="text/javascript" src="https://www.staging.startplatz.de/wp-content/plugins/mc4wp-premium/ajax-forms/assets/js/ajax-forms.min.js?ver=4.5.4" id="mc4wp-ajax-forms-js"></script>\n <!-- wp_footer ends -->\n <!-- startplatz default js starts -->\n <script type='text/javascript' src='/wp-content/themes/startplatz/scripts/jquery.js?ver=2016-4711'></script>\n <script type='text/javascript' src='/wp-content/themes/startplatz/scripts/bootstrap.min.js?ver=2016-4711'></script>\n <!-- startplatz default js ends -->\n \n \n <div id="sfwdtbc3241" class="sf-toolbar sf-display-none" role="region" aria-label="Symfony Web Debug Toolbar"> <!-- START of Symfony Web Debug Toolbar --><div id="sfMiniToolbar-bc3241" class="sf-minitoolbar" data-no-turbolink data-turbo="false"> <button type="button" title="Show Symfony toolbar" id="sfToolbarMiniToggler-bc3241" accesskey="D" aria-expanded="false" aria-controls="sfToolbarMainContent-bc3241"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#AAA" d="M12 .9C5.8.9.9 5.8.9 12a11 11 0 1 0 22.2 0A11 11 0 0 0 12 .9zm6.5 6c-.6 0-.9-.3-.9-.8 0-.2 0-.4.2-.6l.2-.4c0-.3-.5-.4-.6-.4-1.8.1-2.3 2.5-2.7 4.4l-.2 1c1 .2 1.8 0 2.2-.3.6-.4-.2-.7-.1-1.2.1-.3.5-.5.7-.6.5 0 .7.5.7.9 0 .7-1 1.8-3 1.8l-.6-.1-.6 2.4c-.4 1.6-.8 3.8-2.4 5.7-1.4 1.7-2.9 1.9-3.5 1.9-1.2 0-1.9-.6-2-1.5 0-.8.7-1.3 1.2-1.3.6 0 1.1.5 1.1 1s-.2.6-.4.6c-.1.1-.3.2-.3.4 0 .1.1.3.4.3.5 0 .8-.3 1.1-.5 1.2-.9 1.6-2.7 2.2-5.7l.1-.7.7-3.2c-.8-.6-1.3-1.4-2.4-1.7-.6-.1-1.1.1-1.5.5-.4.5-.2 1.1.2 1.5l.7.6c.7.8 1.2 1.6 1 2.5-.3 1.5-2 2.6-4 1.9-1.8-.6-2-1.8-1.8-2.5.2-.6.6-.7 1.1-.6.5.2.6.7.6 1.2l-.1.3c-.2.1-.3.3-.3.4-.1.4.4.6.7.7.7.3 1.6-.2 1.8-.8a1 1 0 0 0-.4-1.1l-.7-.8c-.4-.4-1.1-1.4-.7-2.6.1-.5.4-.9.7-1.3a4 4 0 0 1 2.8-.6c1.2.4 1.8 1.1 2.6 1.8.5-1.2 1-2.4 1.8-3.5.9-.9 1.9-1.6 3.1-1.7 1.3.2 2.2.7 2.2 1.6 0 .4-.2 1.1-.9 1.1z"/></svg> </button></div><div id="sfToolbarClearer-bc3241" class="sf-toolbar-clearer"></div><div id="sfToolbarMainContent-bc3241" class="sf-toolbarreset clear-fix" data-no-turbolink data-turbo="false"> <div class="sf-toolbar-block sf-toolbar-block-request sf-toolbar-status-normal " > <a href="http://www.staging.startplatz.de/_profiler/bc3241?panel=request"> <div class="sf-toolbar-icon"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#AAA" d="M12 .9C5.8.9.9 5.8.9 12a11 11 0 1 0 22.2 0A11 11 0 0 0 12 .9zm6.5 6c-.6 0-.9-.3-.9-.8 0-.2 0-.4.2-.6l.2-.4c0-.3-.5-.4-.6-.4-1.8.1-2.3 2.5-2.7 4.4l-.2 1c1 .2 1.8 0 2.2-.3.6-.4-.2-.7-.1-1.2.1-.3.5-.5.7-.6.5 0 .7.5.7.9 0 .7-1 1.8-3 1.8l-.6-.1-.6 2.4c-.4 1.6-.8 3.8-2.4 5.7-1.4 1.7-2.9 1.9-3.5 1.9-1.2 0-1.9-.6-2-1.5 0-.8.7-1.3 1.2-1.3.6 0 1.1.5 1.1 1s-.2.6-.4.6c-.1.1-.3.2-.3.4 0 .1.1.3.4.3.5 0 .8-.3 1.1-.5 1.2-.9 1.6-2.7 2.2-5.7l.1-.7.7-3.2c-.8-.6-1.3-1.4-2.4-1.7-.6-.1-1.1.1-1.5.5-.4.5-.2 1.1.2 1.5l.7.6c.7.8 1.2 1.6 1 2.5-.3 1.5-2 2.6-4 1.9-1.8-.6-2-1.8-1.8-2.5.2-.6.6-.7 1.1-.6.5.2.6.7.6 1.2l-.1.3c-.2.1-.3.3-.3.4-.1.4.4.6.7.7.7.3 1.6-.2 1.8-.8a1 1 0 0 0-.4-1.1l-.7-.8c-.4-.4-1.1-1.4-.7-2.6.1-.5.4-.9.7-1.3a4 4 0 0 1 2.8-.6c1.2.4 1.8 1.1 2.6 1.8.5-1.2 1-2.4 1.8-3.5.9-.9 1.9-1.6 3.1-1.7 1.3.2 2.2.7 2.2 1.6 0 .4-.2 1.1-.9 1.1z"/></svg> <span class="sf-toolbar-value sf-toolbar-ajax-request-counter"> Loading… </span> </div> </a> <div class="sf-toolbar-info"> <div class="sf-toolbar-info-piece"> <b>Loading the web debug toolbar…</b> </div> <div class="sf-toolbar-info-piece"> Attempt #<span id="sfLoadCounter-bc3241"></span> </div> <div class="sf-toolbar-info-piece"> <b> <button class="sf-cancel-button" type="button" id="sfLoadCancel-bc3241" title="Cancel loading">Cancel</button> </b> </div> </div></div> <button class="hide-button" type="button" id="sfToolbarHideButton-bc3241" title="Close Toolbar" accesskey="D" aria-expanded="true" aria-controls="sfToolbarMainContent-bc3241"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#AAA" d="M21.1 18.3c.8.8.8 2 0 2.8-.4.4-.9.6-1.4.6s-1-.2-1.4-.6L12 14.8l-6.3 6.3c-.4.4-.9.6-1.4.6s-1-.2-1.4-.6a2 2 0 0 1 0-2.8L9.2 12 2.9 5.7a2 2 0 0 1 0-2.8 2 2 0 0 1 2.8 0L12 9.2l6.3-6.3a2 2 0 0 1 2.8 0c.8.8.8 2 0 2.8L14.8 12l6.3 6.3z"/></svg> </button></div><!-- END of Symfony Web Debug Toolbar --></div><script nonce="eab6a82556be44618cb606166a3d0bb7">/*<![CDATA[*/ if (typeof Sfjs === 'undefined' || typeof Sfjs.loadToolbar === 'undefined') { Sfjs = (function() { "use strict"; if ('classList' in document.documentElement) { var hasClass = function (el, cssClass) { return el.classList.contains(cssClass); }; var removeClass = function(el, cssClass) { el.classList.remove(cssClass); }; var addClass = function(el, cssClass) { el.classList.add(cssClass); }; var toggleClass = function(el, cssClass) { el.classList.toggle(cssClass); }; } else { var hasClass = function (el, cssClass) { return el.className.match(new RegExp('\\b' + cssClass + '\\b')); }; var removeClass = function(el, cssClass) { el.className = el.className.replace(new RegExp('\\b' + cssClass + '\\b'), ' '); }; var addClass = function(el, cssClass) { if (!hasClass(el, cssClass)) { el.className += " " + cssClass; } }; var toggleClass = function(el, cssClass) { hasClass(el, cssClass) ? removeClass(el, cssClass) : addClass(el, cssClass); }; } var noop = function() {}; var profilerStorageKey = 'symfony/profiler/'; var addEventListener; var el = document.createElement('div'); if (!('addEventListener' in el)) { addEventListener = function (element, eventName, callback) { element.attachEvent('on' + eventName, callback); }; } else { addEventListener = function (element, eventName, callback) { element.addEventListener(eventName, callback, false); }; } if (navigator.clipboard) { document.querySelectorAll('[data-clipboard-text]').forEach(function(element) { removeClass(element, 'hidden'); element.addEventListener('click', function() { navigator.clipboard.writeText(element.getAttribute('data-clipboard-text')); }) }); } var request = function(url, onSuccess, onError, payload, options, tries) { var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); options = options || {}; options.retry = options.retry || false; tries = tries || 1; /* this delays for 125, 375, 625, 875, and 1000, ... */ var delay = tries < 5 ? (tries - 0.5) * 250 : 1000; xhr.open(options.method || 'GET', url, true); xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); xhr.onreadystatechange = function(state) { if (4 !== xhr.readyState) { return null; } if (xhr.status == 404 && options.retry && !options.stop) { setTimeout(function() { if (options.stop) { return; } request(url, onSuccess, onError, payload, options, tries + 1); }, delay); return null; } if (200 === xhr.status) { (onSuccess || noop)(xhr); } else { (onError || noop)(xhr); } }; if (options.onSend) { options.onSend(tries); } xhr.send(payload || ''); }; var getPreference = function(name) { if (!window.localStorage) { return null; } return localStorage.getItem(profilerStorageKey + name); }; var setPreference = function(name, value) { if (!window.localStorage) { return null; } localStorage.setItem(profilerStorageKey + name, value); }; var requestStack = []; var extractHeaders = function(xhr, stackElement) { /* Here we avoid to call xhr.getResponseHeader in order to */ /* prevent polluting the console with CORS security errors */ var allHeaders = xhr.getAllResponseHeaders(); var ret; if (ret = allHeaders.match(/^x-debug-token:\s+(.*)$/im)) { stackElement.profile = ret[1]; } if (ret = allHeaders.match(/^x-debug-token-link:\s+(.*)$/im)) { stackElement.profilerUrl = ret[1]; } if (ret = allHeaders.match(/^Symfony-Debug-Toolbar-Replace:\s+(.*)$/im)) { stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = '1' === ret[1]; } }; var successStreak = 4; var pendingRequests = 0; var renderAjaxRequests = function() { var requestCounter = document.querySelector('.sf-toolbar-ajax-request-counter'); if (!requestCounter) { return; } requestCounter.textContent = requestStack.length; var infoSpan = document.querySelector(".sf-toolbar-ajax-info"); if (infoSpan) { infoSpan.textContent = requestStack.length + ' AJAX request' + (requestStack.length !== 1 ? 's' : ''); } var ajaxToolbarPanel = document.querySelector('.sf-toolbar-block-ajax'); if (requestStack.length) { ajaxToolbarPanel.style.display = 'block'; } else { ajaxToolbarPanel.style.display = 'none'; } if (pendingRequests > 0) { addClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); } else if (successStreak < 4) { addClass(ajaxToolbarPanel, 'sf-toolbar-status-red'); removeClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); } else { removeClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); removeClass(ajaxToolbarPanel, 'sf-toolbar-status-red'); } }; var startAjaxRequest = function(index) { var tbody = document.querySelector('.sf-toolbar-ajax-request-list'); if (!tbody) { return; } var nbOfAjaxRequest = tbody.rows.length; if (nbOfAjaxRequest >= 100) { tbody.deleteRow(0); } var request = requestStack[index]; pendingRequests++; var row = document.createElement('tr'); request.DOMNode = row; var requestNumberCell = document.createElement('td'); requestNumberCell.textContent = index + 1; row.appendChild(requestNumberCell); var profilerCell = document.createElement('td'); profilerCell.textContent = 'n/a'; row.appendChild(profilerCell); var methodCell = document.createElement('td'); methodCell.textContent = request.method; row.appendChild(methodCell); var typeCell = document.createElement('td'); typeCell.textContent = request.type; row.appendChild(typeCell); var statusCodeCell = document.createElement('td'); var statusCode = document.createElement('span'); statusCode.textContent = 'n/a'; statusCodeCell.appendChild(statusCode); row.appendChild(statusCodeCell); var pathCell = document.createElement('td'); pathCell.className = 'sf-ajax-request-url'; if ('GET' === request.method) { var pathLink = document.createElement('a'); pathLink.setAttribute('href', request.url); pathLink.textContent = request.url; pathCell.appendChild(pathLink); } else { pathCell.textContent = request.url; } pathCell.setAttribute('title', request.url); row.appendChild(pathCell); var durationCell = document.createElement('td'); durationCell.className = 'sf-ajax-request-duration'; durationCell.textContent = 'n/a'; row.appendChild(durationCell); request.liveDurationHandle = setInterval(function() { durationCell.textContent = (new Date() - request.start) + ' ms'; }, 100); row.className = 'sf-ajax-request sf-ajax-request-loading'; tbody.insertBefore(row, null); var toolbarInfo = document.querySelector('.sf-toolbar-block-ajax .sf-toolbar-info'); toolbarInfo.scrollTop = toolbarInfo.scrollHeight; renderAjaxRequests(); }; var finishAjaxRequest = function(index) { var request = requestStack[index]; clearInterval(request.liveDurationHandle); if (!request.DOMNode) { return; } if (request.toolbarReplace && !request.toolbarReplaceFinished && request.profile) { /* Flag as complete because finishAjaxRequest can be called multiple times. */ request.toolbarReplaceFinished = true; /* Search up through the DOM to find the toolbar's container ID. */ for (var elem = request.DOMNode; elem && elem !== document; elem = elem.parentNode) { if (elem.id.match(/^sfwdt/)) { Sfjs.loadToolbar(elem.id.replace(/^sfwdt/, ''), request.profile); break; } } } pendingRequests--; var row = request.DOMNode; /* Unpack the children from the row */ var profilerCell = row.children[1]; var methodCell = row.children[2]; var statusCodeCell = row.children[4]; var statusCodeElem = statusCodeCell.children[0]; var durationCell = row.children[6]; if (request.error) { row.className = 'sf-ajax-request sf-ajax-request-error'; methodCell.className = 'sf-ajax-request-error'; successStreak = 0; } else { row.className = 'sf-ajax-request sf-ajax-request-ok'; successStreak++; } if (request.statusCode) { if (request.statusCode < 300) { statusCodeElem.setAttribute('class', 'sf-toolbar-status'); } else if (request.statusCode < 400) { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-yellow'); } else { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-red'); } statusCodeElem.textContent = request.statusCode; } else { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-red'); } if (request.duration) { durationCell.textContent = request.duration + ' ms'; } if (request.profilerUrl) { profilerCell.textContent = ''; var profilerLink = document.createElement('a'); profilerLink.setAttribute('href', request.profilerUrl); profilerLink.textContent = request.profile; profilerCell.appendChild(profilerLink); } renderAjaxRequests(); }; if (window.fetch && window.fetch.polyfill === undefined) { var oldFetch = window.fetch; window.fetch = function () { var promise = oldFetch.apply(this, arguments); var url = arguments[0]; var params = arguments[1]; var paramType = Object.prototype.toString.call(arguments[0]); if (paramType === '[object Request]') { url = arguments[0].url; params = { method: arguments[0].method, credentials: arguments[0].credentials, headers: arguments[0].headers, mode: arguments[0].mode, redirect: arguments[0].redirect }; } else { url = String(url); } if (!url.match(new RegExp("^\/((index|app(_[\\w]+)?)\\.php\/)?_wdt"))) { var method = 'GET'; if (params && params.method !== undefined) { method = params.method; } var stackElement = { error: false, url: url, method: method, type: 'fetch', start: new Date() }; var idx = requestStack.push(stackElement) - 1; promise.then(function (r) { stackElement.duration = new Date() - stackElement.start; stackElement.error = r.status < 200 || r.status >= 400; stackElement.statusCode = r.status; stackElement.profile = r.headers.get('x-debug-token'); stackElement.profilerUrl = r.headers.get('x-debug-token-link'); stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = '1' === r.headers.get('Symfony-Debug-Toolbar-Replace'); finishAjaxRequest(idx); }, function (e){ stackElement.error = true; finishAjaxRequest(idx); }); startAjaxRequest(idx); } return promise; }; } if (window.XMLHttpRequest && XMLHttpRequest.prototype.addEventListener) { var proxied = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(method, url, async, user, pass) { var self = this; /* prevent logging AJAX calls to static and inline files, like templates */ var path = url; if (url.slice(0, 1) === '/') { if (0 === url.indexOf('')) { path = url.slice(0); } } else if (0 === url.indexOf('http\u003A\/\/www.staging.startplatz.de')) { path = url.slice(32); } if (!path.match(new RegExp("^\/((index|app(_[\\w]+)?)\\.php\/)?_wdt"))) { var stackElement = { error: false, url: url, method: method, type: 'xhr', start: new Date() }; var idx = requestStack.push(stackElement) - 1; this.addEventListener('readystatechange', function() { if (self.readyState == 4) { stackElement.duration = new Date() - stackElement.start; stackElement.error = self.status < 200 || self.status >= 400; stackElement.statusCode = self.status; extractHeaders(self, stackElement); finishAjaxRequest(idx); } }, false); startAjaxRequest(idx); } proxied.apply(this, Array.prototype.slice.call(arguments)); }; } return { hasClass: hasClass, removeClass: removeClass, addClass: addClass, toggleClass: toggleClass, getPreference: getPreference, setPreference: setPreference, addEventListener: addEventListener, request: request, renderAjaxRequests: renderAjaxRequests, getSfwdt: function(token) { if (!this.sfwdt) { this.sfwdt = document.getElementById('sfwdt' + token); } return this.sfwdt; }, load: function(selector, url, onSuccess, onError, options) { var el = document.getElementById(selector); if (el && el.getAttribute('data-sfurl') !== url) { request( url, function(xhr) { el.innerHTML = xhr.responseText; el.setAttribute('data-sfurl', url); removeClass(el, 'loading'); var pending = pendingRequests; for (var i = 0; i < requestStack.length; i++) { startAjaxRequest(i); if (requestStack[i].duration) { finishAjaxRequest(i); } } /* Revert the pending state in case there was a start called without a finish above. */ pendingRequests = pending; (onSuccess || noop)(xhr, el); }, function(xhr) { (onError || noop)(xhr, el); }, '', options ); } return this; }, showToolbar: function(token) { var sfwdt = this.getSfwdt(token); removeClass(sfwdt, 'sf-display-none'); if (getPreference('toolbar/displayState') == 'none') { document.getElementById('sfToolbarMainContent-' + token).style.display = 'none'; document.getElementById('sfToolbarClearer-' + token).style.display = 'none'; document.getElementById('sfMiniToolbar-' + token).style.display = 'block'; } else { document.getElementById('sfToolbarMainContent-' + token).style.display = 'block'; document.getElementById('sfToolbarClearer-' + token).style.display = 'block'; document.getElementById('sfMiniToolbar-' + token).style.display = 'none'; } }, hideToolbar: function(token) { var sfwdt = this.getSfwdt(token); addClass(sfwdt, 'sf-display-none'); }, initToolbar: function(token) { this.showToolbar(token); var hideButton = document.getElementById('sfToolbarHideButton-' + token); var hideButtonSvg = hideButton.querySelector('svg'); hideButtonSvg.setAttribute('aria-hidden', 'true'); hideButtonSvg.setAttribute('focusable', 'false'); addEventListener(hideButton, 'click', function (event) { event.preventDefault(); var p = this.parentNode; p.style.display = 'none'; (p.previousElementSibling || p.previousSibling).style.display = 'none'; document.getElementById('sfMiniToolbar-' + token).style.display = 'block'; setPreference('toolbar/displayState', 'none'); }); var showButton = document.getElementById('sfToolbarMiniToggler-' + token); var showButtonSvg = showButton.querySelector('svg'); showButtonSvg.setAttribute('aria-hidden', 'true'); showButtonSvg.setAttribute('focusable', 'false'); addEventListener(showButton, 'click', function (event) { event.preventDefault(); var elem = this.parentNode; if (elem.style.display == 'none') { document.getElementById('sfToolbarMainContent-' + token).style.display = 'none'; document.getElementById('sfToolbarClearer-' + token).style.display = 'none'; elem.style.display = 'block'; } else { document.getElementById('sfToolbarMainContent-' + token).style.display = 'block'; document.getElementById('sfToolbarClearer-' + token).style.display = 'block'; elem.style.display = 'none' } setPreference('toolbar/displayState', 'block'); }); }, loadToolbar: function(token, newToken) { var that = this; var triesCounter = document.getElementById('sfLoadCounter-' + token); var options = { retry: true, onSend: function (count) { if (count === 3) { that.initToolbar(token); } if (triesCounter) { triesCounter.textContent = count; } }, }; var cancelButton = document.getElementById('sfLoadCancel-' + token); if (cancelButton) { addEventListener(cancelButton, 'click', function (event) { event.preventDefault(); options.stop = true; that.hideToolbar(token); }); } newToken = (newToken || token); this.load( 'sfwdt' + token, 'http\u003A\/\/www.staging.startplatz.de\/_wdt\/xxxxxx'.replace(/xxxxxx/, newToken), function(xhr, el) { /* Do nothing in the edge case where the toolbar has already been replaced with a new one */ if (!document.getElementById('sfToolbarMainContent-' + newToken)) { return; } /* Evaluate in global scope scripts embedded inside the toolbar */ var i, scripts = [].slice.call(el.querySelectorAll('script')); for (i = 0; i < scripts.length; ++i) { if (scripts[i].firstChild) { eval.call({}, scripts[i].firstChild.nodeValue); } } el.style.display = -1 !== xhr.responseText.indexOf('sf-toolbarreset') ? 'block' : 'none'; if (el.style.display == 'none') { return; } that.initToolbar(newToken); /* Handle toolbar-info position */ var toolbarBlocks = [].slice.call(el.querySelectorAll('.sf-toolbar-block')); for (i = 0; i < toolbarBlocks.length; ++i) { toolbarBlocks[i].onmouseover = function () { var toolbarInfo = this.querySelectorAll('.sf-toolbar-info')[0]; var pageWidth = document.body.clientWidth; var elementWidth = toolbarInfo.offsetWidth; var leftValue = (elementWidth + this.offsetLeft) - pageWidth; var rightValue = (elementWidth + (pageWidth - this.offsetLeft)) - pageWidth; /* Reset right and left value, useful on window resize */ toolbarInfo.style.right = ''; toolbarInfo.style.left = ''; if (elementWidth > pageWidth) { toolbarInfo.style.left = 0; } else if (leftValue > 0 && rightValue > 0) { toolbarInfo.style.right = (rightValue * -1) + 'px'; } else if (leftValue < 0) { toolbarInfo.style.left = 0; } else { toolbarInfo.style.right = '0px'; } }; } renderAjaxRequests(); addEventListener(document.querySelector('.sf-toolbar-ajax-clear'), 'click', function() { requestStack = []; renderAjaxRequests(); successStreak = 4; document.querySelector('.sf-toolbar-ajax-request-list').innerHTML = ''; }); addEventListener(document.querySelector('.sf-toolbar-block-ajax'), 'mouseenter', function (event) { var elem = document.querySelector('.sf-toolbar-block-ajax .sf-toolbar-info'); elem.scrollTop = elem.scrollHeight; }); addEventListener(document.querySelector('.sf-toolbar-block-ajax > .sf-toolbar-icon'), 'click', function (event) { event.preventDefault(); toggleClass(this.parentNode, 'hover'); }); var dumpInfo = document.querySelector('.sf-toolbar-block-dump .sf-toolbar-info'); if (null !== dumpInfo) { addEventListener(dumpInfo, 'sfbeforedumpcollapse', function () { dumpInfo.style.minHeight = dumpInfo.getBoundingClientRect().height+'px'; }); addEventListener(dumpInfo, 'mouseleave', function () { dumpInfo.style.minHeight = ''; }); } }, function(xhr) { if (xhr.status !== 0 && !options.stop) { var sfwdt = that.getSfwdt(token); sfwdt.innerHTML = '\ <div class="sf-toolbarreset">\ <div class="sf-toolbar-icon"><svg width="26" height="28" xmlns="http://www.w3.org/2000/svg" version="1.1" x="0px" y="0px" viewBox="0 0 26 28" enable-background="new 0 0 26 28" xml:space="preserve"><path fill="#FFFFFF" d="M13 0C5.8 0 0 5.8 0 13c0 7.2 5.8 13 13 13c7.2 0 13-5.8 13-13C26 5.8 20.2 0 13 0z M20 7.5 c-0.6 0-1-0.3-1-0.9c0-0.2 0-0.4 0.2-0.6c0.1-0.3 0.2-0.3 0.2-0.4c0-0.3-0.5-0.4-0.7-0.4c-2 0.1-2.5 2.7-2.9 4.8l-0.2 1.1 c1.1 0.2 1.9 0 2.4-0.3c0.6-0.4-0.2-0.8-0.1-1.3C18 9.2 18.4 9 18.7 8.9c0.5 0 0.8 0.5 0.8 1c0 0.8-1.1 2-3.3 1.9 c-0.3 0-0.5 0-0.7-0.1L15 14.1c-0.4 1.7-0.9 4.1-2.6 6.2c-1.5 1.8-3.1 2.1-3.8 2.1c-1.3 0-2.1-0.6-2.2-1.6c0-0.9 0.8-1.4 1.3-1.4 c0.7 0 1.2 0.5 1.2 1.1c0 0.5-0.2 0.6-0.4 0.7c-0.1 0.1-0.3 0.2-0.3 0.4c0 0.1 0.1 0.3 0.4 0.3c0.5 0 0.9-0.3 1.2-0.5 c1.3-1 1.7-2.9 2.4-6.2l0.1-0.8c0.2-1.1 0.5-2.3 0.8-3.5c-0.9-0.7-1.4-1.5-2.6-1.8c-0.8-0.2-1.3 0-1.7 0.4C8.4 10 8.6 10.7 9 11.1 l0.7 0.7c0.8 0.9 1.3 1.7 1.1 2.7c-0.3 1.6-2.1 2.8-4.3 2.1c-1.9-0.6-2.2-1.9-2-2.7c0.2-0.6 0.7-0.8 1.2-0.6 c0.5 0.2 0.7 0.8 0.6 1.3c0 0.1 0 0.1-0.1 0.3C6 15 5.9 15.2 5.9 15.3c-0.1 0.4 0.4 0.7 0.8 0.8c0.8 0.3 1.7-0.2 1.9-0.9 c0.2-0.6-0.2-1.1-0.4-1.2l-0.8-0.9c-0.4-0.4-1.2-1.5-0.8-2.8c0.2-0.5 0.5-1 0.9-1.4c1-0.7 2-0.8 3-0.6c1.3 0.4 1.9 1.2 2.8 1.9 c0.5-1.3 1.1-2.6 2-3.8c0.9-1 2-1.7 3.3-1.8C20 4.8 21 5.4 21 6.3C21 6.7 20.8 7.5 20 7.5z"/></svg></div>\ An error occurred while loading the web debug toolbar. <a href="http\u003A\/\/www.staging.startplatz.de\/_profiler\/' + newToken + '">Open the web profiler.</a>\ </div>\ '; sfwdt.setAttribute('class', 'sf-toolbar sf-error-toolbar'); } }, options ); return this; }, toggle: function(selector, elOn, elOff) { var tmp = elOn.style.display, el = document.getElementById(selector); elOn.style.display = elOff.style.display; elOff.style.display = tmp; if (el) { el.style.display = 'none' === tmp ? 'none' : 'block'; } return this; }, createTabs: function() { var tabGroups = document.querySelectorAll('.sf-tabs:not([data-processed=true])'); /* create the tab navigation for each group of tabs */ for (var i = 0; i < tabGroups.length; i++) { var tabs = tabGroups[i].querySelectorAll(':scope > .tab'); var tabNavigation = document.createElement('ul'); tabNavigation.className = 'tab-navigation'; var selectedTabId = 'tab-' + i + '-0'; /* select the first tab by default */ for (var j = 0; j < tabs.length; j++) { var tabId = 'tab-' + i + '-' + j; var tabTitle = tabs[j].querySelector('.tab-title').innerHTML; var tabNavigationItem = document.createElement('li'); tabNavigationItem.setAttribute('data-tab-id', tabId); if (hasClass(tabs[j], 'active')) { selectedTabId = tabId; } if (hasClass(tabs[j], 'disabled')) { addClass(tabNavigationItem, 'disabled'); } tabNavigationItem.innerHTML = tabTitle; tabNavigation.appendChild(tabNavigationItem); var tabContent = tabs[j].querySelector('.tab-content'); tabContent.parentElement.setAttribute('id', tabId); } tabGroups[i].insertBefore(tabNavigation, tabGroups[i].firstChild); addClass(document.querySelector('[data-tab-id="' + selectedTabId + '"]'), 'active'); } /* display the active tab and add the 'click' event listeners */ for (i = 0; i < tabGroups.length; i++) { tabNavigation = tabGroups[i].querySelectorAll(':scope > .tab-navigation li'); for (j = 0; j < tabNavigation.length; j++) { tabId = tabNavigation[j].getAttribute('data-tab-id'); document.getElementById(tabId).querySelector('.tab-title').className = 'hidden'; if (hasClass(tabNavigation[j], 'active')) { document.getElementById(tabId).className = 'block'; } else { document.getElementById(tabId).className = 'hidden'; } tabNavigation[j].addEventListener('click', function(e) { var activeTab = e.target || e.srcElement; /* needed because when the tab contains HTML contents, user can click */ /* on any of those elements instead of their parent '<li>' element */ while (activeTab.tagName.toLowerCase() !== 'li') { activeTab = activeTab.parentNode; } /* get the full list of tabs through the parent of the active tab element */ var tabNavigation = activeTab.parentNode.children; for (var k = 0; k < tabNavigation.length; k++) { var tabId = tabNavigation[k].getAttribute('data-tab-id'); document.getElementById(tabId).className = 'hidden'; removeClass(tabNavigation[k], 'active'); } addClass(activeTab, 'active'); var activeTabId = activeTab.getAttribute('data-tab-id'); document.getElementById(activeTabId).className = 'block'; }); } tabGroups[i].setAttribute('data-processed', 'true'); } }, createToggles: function() { var toggles = document.querySelectorAll('.sf-toggle:not([data-processed=true])'); for (var i = 0; i < toggles.length; i++) { var elementSelector = toggles[i].getAttribute('data-toggle-selector'); var element = document.querySelector(elementSelector); addClass(element, 'sf-toggle-content'); if (toggles[i].hasAttribute('data-toggle-initial') && toggles[i].getAttribute('data-toggle-initial') == 'display') { addClass(toggles[i], 'sf-toggle-on'); addClass(element, 'sf-toggle-visible'); } else { addClass(toggles[i], 'sf-toggle-off'); addClass(element, 'sf-toggle-hidden'); } addEventListener(toggles[i], 'click', function(e) { e.preventDefault(); if ('' !== window.getSelection().toString()) { /* Don't do anything on text selection */ return; } var toggle = e.target || e.srcElement; /* needed because when the toggle contains HTML contents, user can click */ /* on any of those elements instead of their parent '.sf-toggle' element */ while (!hasClass(toggle, 'sf-toggle')) { toggle = toggle.parentNode; } var element = document.querySelector(toggle.getAttribute('data-toggle-selector')); toggleClass(toggle, 'sf-toggle-on'); toggleClass(toggle, 'sf-toggle-off'); toggleClass(element, 'sf-toggle-hidden'); toggleClass(element, 'sf-toggle-visible'); /* the toggle doesn't change its contents when clicking on it */ if (!toggle.hasAttribute('data-toggle-alt-content')) { return; } if (!toggle.hasAttribute('data-toggle-original-content')) { toggle.setAttribute('data-toggle-original-content', toggle.innerHTML); } var currentContent = toggle.innerHTML; var originalContent = toggle.getAttribute('data-toggle-original-content'); var altContent = toggle.getAttribute('data-toggle-alt-content'); toggle.innerHTML = currentContent !== altContent ? altContent : originalContent; }); /* Prevents from disallowing clicks on links inside toggles */ var toggleLinks = toggles[i].querySelectorAll('a'); for (var j = 0; j < toggleLinks.length; j++) { addEventListener(toggleLinks[j], 'click', function(e) { e.stopPropagation(); }); } /* Prevents from disallowing clicks on "copy to clipboard" elements inside toggles */ var copyToClipboardElements = toggles[i].querySelectorAll('span[data-clipboard-text]'); for (var k = 0; k < copyToClipboardElements.length; k++) { addEventListener(copyToClipboardElements[k], 'click', function(e) { e.stopPropagation(); }); } toggles[i].setAttribute('data-processed', 'true'); } }, initializeLogsTable: function() { Sfjs.updateLogsTable(); document.querySelectorAll('.log-filter input').forEach((input) => { input.addEventListener('change', () => { Sfjs.updateLogsTable(); }); }); document.querySelectorAll('.filter-select-all-or-none button').forEach((link) => { link.addEventListener('click', () => { const selectAll = link.classList.contains('select-all'); link.closest('.log-filter-content').querySelectorAll('input').forEach((input) => { input.checked = selectAll; }); Sfjs.updateLogsTable(); }); }); document.body.addEventListener('click', (event) => { document.querySelectorAll('details.log-filter').forEach((filterElement) => { if (!filterElement.contains(event.target) && filterElement.open) { filterElement.open = false; } }); }); }, updateLogsTable: function() { const selectedType = document.querySelector('#log-filter-type input:checked').value; const priorities = document.querySelectorAll('#log-filter-priority input'); const allPriorities = Array.from(priorities).map((input) => input.value); const selectedPriorities = Array.from(priorities).filter((input) => input.checked).map((input) => input.value); const channels = document.querySelectorAll('#log-filter-channel input'); const selectedChannels = Array.from(channels).filter((input) => input.checked).map((input) => input.value); const logs = document.querySelector('table.logs'); if (null === logs) { return; } /* hide rows that don't match the current filters */ let numVisibleRows = 0; logs.querySelectorAll('tbody tr').forEach((row) => { if ('all' !== selectedType && selectedType !== row.getAttribute('data-type')) { row.style.display = 'none'; return; } const priority = row.getAttribute('data-priority'); if (false === selectedPriorities.includes(priority) && true === allPriorities.includes(priority)) { row.style.display = 'none'; return; } if ('' !== row.getAttribute('data-channel') && false === selectedChannels.includes(row.getAttribute('data-channel'))) { row.style.display = 'none'; return; } row.style.display = 'table-row'; numVisibleRows++; }); document.querySelector('table.logs').style.display = 0 === numVisibleRows ? 'none' : 'table'; document.querySelector('.no-logs-message').style.display = 0 === numVisibleRows ? 'block' : 'none'; /* update the selected totals of all filters */ document.querySelector('#log-filter-priority .filter-active-num').innerText = (priorities.length === selectedPriorities.length) ? 'All' : selectedPriorities.length; document.querySelector('#log-filter-channel .filter-active-num').innerText = (channels.length === selectedChannels.length) ? 'All' : selectedChannels.length; /* update the currently selected "log type" tab */ document.querySelectorAll('#log-filter-type li').forEach((tab) => tab.classList.remove('active')); document.querySelector(`#log-filter-type input[value="${selectedType}"]`).parentElement.classList.add('active'); }, }; })(); Sfjs.addEventListener(document, 'DOMContentLoaded', function() { Sfjs.createTabs(); Sfjs.createToggles(); });}/*]]>*/</script><style nonce="db410798ed394e7586c3b723e30fdb84"> .sf-minitoolbar { background-color: #222; border-top-left-radius: 4px; bottom: 0; box-sizing: border-box; display: none; height: 36px; padding: 6px; position: fixed; right: 0; z-index: 99999;}.sf-minitoolbar button { background-color: transparent; padding: 0; border: none;}.sf-minitoolbar svg,.sf-minitoolbar img { max-height: 24px; max-width: 24px; display: inline;}.sf-toolbar-clearer { clear: both; height: 36px;}.sf-display-none { display: none;}.sf-toolbarreset * { box-sizing: content-box; vertical-align: baseline; letter-spacing: normal; width: auto;}.sf-toolbarreset { background-color: #222; bottom: 0; box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); color: #EEE; font: 11px Arial, sans-serif; left: 0; margin: 0; padding: 0 36px 0 0; position: fixed; right: 0; text-align: left; text-transform: none; z-index: 99999; direction: ltr; /* neutralize the aliasing defined by external CSS styles */ -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: auto;}.sf-toolbarreset abbr { border: dashed #777; border-width: 0 0 1px;}.sf-toolbarreset svg,.sf-toolbarreset img { height: 20px; width: 20px; display: inline-block;}.sf-toolbarreset .sf-cancel-button { color: #444;}.sf-toolbarreset .hide-button { background: #444; display: block; position: absolute; top: 0; right: 0; width: 36px; height: 36px; cursor: pointer; text-align: center; border: none; margin: 0; padding: 0;}.sf-toolbarreset .hide-button svg { max-height: 18px; margin-top: 1px;}.sf-toolbar-block { cursor: default; display: block; float: left; height: 36px; margin-right: 0; white-space: nowrap; max-width: 15%;}.sf-toolbar-block > a,.sf-toolbar-block > a:hover { display: block; text-decoration: none; background-color: transparent; color: inherit;}.sf-toolbar-block span { display: inline-block;}.sf-toolbar-block .sf-toolbar-value { color: #F5F5F5; font-size: 13px; line-height: 36px; padding: 0;}.sf-toolbar-block .sf-toolbar-label,.sf-toolbar-block .sf-toolbar-class-separator { color: #AAA; font-size: 12px;}.sf-toolbar-block .sf-toolbar-info { border-collapse: collapse; display: table; z-index: 100000;}.sf-toolbar-block hr { border-top: 1px solid #777; margin: 4px 0; padding-top: 4px;}.sf-toolbar-block .sf-toolbar-info-piece { /* this 'border-bottom' trick is needed because 'margin-bottom' doesn't work for table rows */ border-bottom: solid transparent 3px; display: table-row;}.sf-toolbar-block .sf-toolbar-info-piece-additional,.sf-toolbar-block .sf-toolbar-info-piece-additional-detail { display: none;}.sf-toolbar-block .sf-toolbar-info-group { margin-bottom: 4px; padding-bottom: 2px; border-bottom: 1px solid #333333;}.sf-toolbar-block .sf-toolbar-info-group:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none;}.sf-toolbar-block .sf-toolbar-info-piece .sf-toolbar-status { padding: 2px 5px; margin-bottom: 0;}.sf-toolbar-block .sf-toolbar-info-piece .sf-toolbar-status + .sf-toolbar-status { margin-left: 4px;}.sf-toolbar-block .sf-toolbar-info-piece:last-child { margin-bottom: 0;}div.sf-toolbar .sf-toolbar-block .sf-toolbar-info-piece a { color: #99CDD8; text-decoration: underline;}div.sf-toolbar .sf-toolbar-block a:hover { text-decoration: none;}.sf-toolbar-block .sf-toolbar-info-piece b { color: #AAA; display: table-cell; font-size: 11px; padding: 4px 8px 4px 0;}.sf-toolbar-block:not(.sf-toolbar-block-dump) .sf-toolbar-info-piece span { color: #F5F5F5;}.sf-toolbar-block .sf-toolbar-info-piece span { font-size: 12px;}.sf-toolbar-block .sf-toolbar-info { background-color: #444; bottom: 36px; color: #F5F5F5; display: none; padding: 9px 0; position: absolute;}.sf-toolbar-block .sf-toolbar-info:empty { visibility: hidden;}.sf-toolbar-block .sf-toolbar-status { display: inline-block; color: #FFF; background-color: #666; padding: 3px 6px; margin-bottom: 2px; vertical-align: middle; min-width: 15px; min-height: 13px; text-align: center;}.sf-toolbar-block .sf-toolbar-status-green { background-color: #4F805D;}.sf-toolbar-block .sf-toolbar-status-red { background-color: #B0413E;}.sf-toolbar-block .sf-toolbar-status-yellow { background-color: #A46A1F;}.sf-toolbar-block.sf-toolbar-status-green { background-color: #4F805D; color: #FFF;}.sf-toolbar-block.sf-toolbar-status-red { background-color: #B0413E; color: #FFF;}.sf-toolbar-block.sf-toolbar-status-yellow { background-color: #A46A1F; color: #FFF;}.sf-toolbar-block-request .sf-toolbar-status { color: #FFF; display: inline-block; font-size: 14px; height: 36px; line-height: 36px; padding: 0 10px;}.sf-toolbar-block-request .sf-toolbar-info-piece a { background-color: transparent; text-decoration: none;}.sf-toolbar-block-request .sf-toolbar-info-piece a:hover { text-decoration: underline;}.sf-toolbar-block-request .sf-toolbar-redirection-status { font-weight: normal; padding: 2px 4px; line-height: 18px;}.sf-toolbar-block-request .sf-toolbar-info-piece span.sf-toolbar-redirection-method { font-size: 12px; height: 17px; line-height: 17px; margin-right: 5px;}.sf-toolbar-block-ajax .sf-toolbar-icon { cursor: pointer;}.sf-toolbar-status-green .sf-toolbar-label,.sf-toolbar-status-yellow .sf-toolbar-label,.sf-toolbar-status-red .sf-toolbar-label { color: #FFF;}.sf-toolbar-status-green svg path,.sf-toolbar-status-green svg .sf-svg-path,.sf-toolbar-status-red svg path,.sf-toolbar-status-red svg .sf-svg-path,.sf-toolbar-status-yellow svg path,.sf-toolbar-status-yellow svg .sf-svg-path { fill: #FFF;}.sf-toolbar-block-config svg path,.sf-toolbar-block-config svg .sf-svg-path { fill: #FFF;}.sf-toolbar-block .sf-toolbar-icon { display: block; height: 36px; padding: 0 7px; overflow: hidden; text-overflow: ellipsis;}.sf-toolbar-block-request .sf-toolbar-icon { padding-left: 0; padding-right: 0;}.sf-toolbar-block .sf-toolbar-icon img,.sf-toolbar-block .sf-toolbar-icon svg { border-width: 0; position: relative; top: 8px; vertical-align: baseline;}.sf-toolbar-block .sf-toolbar-icon img + span,.sf-toolbar-block .sf-toolbar-icon svg + span { margin-left: 4px;}.sf-toolbar-block-config .sf-toolbar-icon .sf-toolbar-value { margin-left: 4px;}.sf-toolbar-block:hover,.sf-toolbar-block.hover { position: relative;}.sf-toolbar-block:hover .sf-toolbar-icon,.sf-toolbar-block.hover .sf-toolbar-icon { background-color: #444; position: relative; z-index: 10002;}.sf-toolbar-block-ajax.hover .sf-toolbar-info { z-index: 10001;}.sf-toolbar-block:hover .sf-toolbar-info,.sf-toolbar-block.hover .sf-toolbar-info { display: block; padding: 10px; max-width: 525px; max-height: 480px; word-wrap: break-word; overflow: hidden; overflow-y: auto;}.sf-toolbar-info-piece b.sf-toolbar-ajax-info { color: #F5F5F5;}.sf-toolbar-ajax-requests { table-layout: auto; width: 100%;}.sf-toolbar-ajax-requests td { background-color: #444; border-bottom: 1px solid #777; color: #F5F5F5; font-size: 12px; padding: 4px;}.sf-toolbar-ajax-requests tr:last-child td { border-bottom: 0;}.sf-toolbar-ajax-requests th { background-color: #222; border-bottom: 0; color: #AAA; font-size: 11px; padding: 4px;}.sf-ajax-request-url { max-width: 250px; line-height: 9px; overflow: hidden; text-overflow: ellipsis;}.sf-toolbar-ajax-requests .sf-ajax-request-url a { text-decoration: none;}.sf-toolbar-ajax-requests .sf-ajax-request-url a:hover { text-decoration: underline;}.sf-ajax-request-duration { text-align: right;}.sf-ajax-request-loading { animation: sf-blink .5s ease-in-out infinite;}@keyframes sf-blink { 0% { background: #222; } 50% { background: #444; } 100% { background: #222; }}.sf-toolbar-block.sf-toolbar-block-dump .sf-toolbar-info { max-width: none; width: 100%; position: fixed; box-sizing: border-box; left: 0;}.sf-toolbar-block-dump pre.sf-dump { background-color: #222; border-color: #777; border-radius: 0; margin: 6px 0 12px 0;}.sf-toolbar-block-dump pre.sf-dump:last-child { margin-bottom: 0;}.sf-toolbar-block-dump pre.sf-dump .sf-dump-search-wrapper { margin-bottom: 5px;}.sf-toolbar-block-dump pre.sf-dump span.sf-dump-search-count { color: #333; font-size: 12px;}.sf-toolbar-block-dump .sf-toolbar-info-piece { display: block;}.sf-toolbar-block-dump .sf-toolbar-info-piece .sf-toolbar-file-line { color: #AAA; margin-left: 4px;}.sf-toolbar-block-dump .sf-toolbar-info img { display: none;}/* Responsive Design */.sf-toolbar-icon .sf-toolbar-label,.sf-toolbar-icon .sf-toolbar-value { display: none;}.sf-toolbar-block-config .sf-toolbar-icon .sf-toolbar-label { display: inline-block;}/* Legacy Design - these styles are maintained to make old panels look a bit better on the new toolbar */.sf-toolbar-block .sf-toolbar-info-piece-additional-detail { color: #AAA; font-size: 12px;}.sf-toolbar-status-green .sf-toolbar-info-piece-additional-detail,.sf-toolbar-status-yellow .sf-toolbar-info-piece-additional-detail,.sf-toolbar-status-red .sf-toolbar-info-piece-additional-detail { color: #FFF;}@media (min-width: 768px) { .sf-toolbar-icon .sf-toolbar-label, .sf-toolbar-icon .sf-toolbar-value { display: inline; } .sf-toolbar-block .sf-toolbar-icon img, .sf-toolbar-block .sf-toolbar-icon svg { top: 6px; } .sf-toolbar-block-time .sf-toolbar-icon svg, .sf-toolbar-block-memory .sf-toolbar-icon svg { display: none; } .sf-toolbar-block-time .sf-toolbar-icon svg + span, .sf-toolbar-block-memory .sf-toolbar-icon svg + span { margin-left: 0; } .sf-toolbar-block .sf-toolbar-icon { padding: 0 10px; } .sf-toolbar-block-time .sf-toolbar-icon { padding-right: 5px; } .sf-toolbar-block-memory .sf-toolbar-icon { padding-left: 5px; } .sf-toolbar-block-request .sf-toolbar-icon { padding-left: 0; padding-right: 0; } .sf-toolbar-block-request .sf-toolbar-label { margin-left: 5px; } .sf-toolbar-block-request .sf-toolbar-status + svg { margin-left: 5px; } .sf-toolbar-block-request .sf-toolbar-icon svg + .sf-toolbar-label { margin-left: 0; } .sf-toolbar-block-request .sf-toolbar-label + .sf-toolbar-value { margin-right: 10px; } .sf-toolbar-block-request:hover .sf-toolbar-info { max-width: none; } .sf-toolbar-block .sf-toolbar-info-piece b { font-size: 12px; } .sf-toolbar-block .sf-toolbar-info-piece span { font-size: 13px; } .sf-toolbar-block-right { float: right; margin-left: 0; margin-right: 0; }}@media (min-width: 1024px) { .sf-toolbar-block .sf-toolbar-info-piece-additional, .sf-toolbar-block .sf-toolbar-info-piece-additional-detail { display: inline; } .sf-toolbar-block .sf-toolbar-info-piece-additional:empty, .sf-toolbar-block .sf-toolbar-info-piece-additional-detail:empty { display: none; }}/***** Error Toolbar *****/.sf-error-toolbar .sf-toolbarreset { background: #222; color: #f5f5f5; font: 13px/36px Arial, sans-serif; height: 36px; padding: 0 15px; text-align: left;}.sf-error-toolbar .sf-toolbarreset svg { height: auto;}.sf-error-toolbar .sf-toolbarreset a { color: #99cdd8; margin-left: 5px; text-decoration: underline;}.sf-error-toolbar .sf-toolbarreset a:hover { text-decoration: none;}.sf-error-toolbar .sf-toolbarreset .sf-toolbar-icon { float: left; padding: 5px 0; margin-right: 10px;}.sf-full-stack { left: 0px; font-size: 12px;}/***** Media query print: Do not print the Toolbar. *****/@media print { .sf-toolbar { display: none !important; }}</style><script nonce="eab6a82556be44618cb606166a3d0bb7">/*<![CDATA[*/ (function () { Sfjs.loadToolbar('bc3241'); })();/*]]>*/</script>\n </body>\n </html>\n """ #version: "1.1" #statusCode: 200 #statusText: "OK" #charset: "UTF-8" } |
| path | "product-market-fit/" |
Request Headers
| Header | Value |
|---|---|
| accept | "*/*" |
| accept-encoding | "gzip, br, zstd, deflate" |
| host | "www.staging.startplatz.de" |
| referer | "https://www.staging.startplatz.de/product-market-fit" |
| user-agent | "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" |
| x-forwarded-for | "216.73.216.170" |
| x-forwarded-host | "www.staging.startplatz.de" |
| x-forwarded-port | "443" |
| x-forwarded-proto | "https" |
| x-forwarded-server | "c7c6e7953db4" |
| x-php-ob-level | "0" |
| x-real-ip | "216.73.216.170" |
Request Content
Request content not available (it was retrieved as a resource).
Response
Response Headers
| Header | Value |
|---|---|
| cache-control | "no-cache, private" |
| content-type | "text/html; charset=UTF-8" |
| date | "Mon, 29 Dec 2025 10:45:57 GMT" |
| link | "<https://www.staging.startplatz.de/?p=72441>; rel=shortlink" |
| x-debug-token | "bc3241" |
| x-powered-by | "PHP/8.1.33" |
Cookies
Request Cookies
No request cookies
Response Cookies
No response cookies
Session 1
Session Metadata
No session metadata
Session Attributes
No session attributes
Session Usage
1
Usages
Stateless check enabled
| Usage |
|---|
Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage:44
[
[
"file" => "/var/www/html/vendor/symfony/security-core/Authentication/Token/Storage/UsageTrackingTokenStorage.php"
"line" => 44
"function" => "getMetadataBag"
"class" => "Symfony\Component\HttpFoundation\Session\Session"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/security-http/Firewall/AccessListener.php"
"line" => 87
"function" => "getToken"
"class" => "Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/security-bundle/Debug/WrappedLazyListener.php"
"line" => 49
"function" => "authenticate"
"class" => "Symfony\Component\Security\Http\Firewall\AccessListener"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/security-http/Firewall/AbstractListener.php"
"line" => 26
"function" => "authenticate"
"class" => "Symfony\Bundle\SecurityBundle\Debug\WrappedLazyListener"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/security-bundle/Security/LazyFirewallContext.php"
"line" => 60
"function" => "__invoke"
"class" => "Symfony\Component\Security\Http\Firewall\AbstractListener"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/security-bundle/Debug/TraceableFirewallListener.php"
"line" => 77
"function" => "__invoke"
"class" => "Symfony\Bundle\SecurityBundle\Security\LazyFirewallContext"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/security-http/Firewall.php"
"line" => 92
"function" => "callListeners"
"class" => "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/event-dispatcher/Debug/WrappedListener.php"
"line" => 118
"function" => "onKernelRequest"
"class" => "Symfony\Component\Security\Http\Firewall"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/event-dispatcher/EventDispatcher.php"
"line" => 230
"function" => "__invoke"
"class" => "Symfony\Component\EventDispatcher\Debug\WrappedListener"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/event-dispatcher/EventDispatcher.php"
"line" => 59
"function" => "callListeners"
"class" => "Symfony\Component\EventDispatcher\EventDispatcher"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php"
"line" => 154
"function" => "dispatch"
"class" => "Symfony\Component\EventDispatcher\EventDispatcher"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/http-kernel/HttpKernel.php"
"line" => 139
"function" => "dispatch"
"class" => "Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/http-kernel/HttpKernel.php"
"line" => 75
"function" => "handleRaw"
"class" => "Symfony\Component\HttpKernel\HttpKernel"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/http-kernel/Kernel.php"
"line" => 202
"function" => "handle"
"class" => "Symfony\Component\HttpKernel\HttpKernel"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php"
"line" => 35
"function" => "handle"
"class" => "Symfony\Component\HttpKernel\Kernel"
"type" => "->"
]
[
"file" => "/var/www/html/vendor/autoload_runtime.php"
"line" => 35
"function" => "run"
"class" => "Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner"
"type" => "->"
]
[
"file" => "/var/www/html/public/index.php"
"line" => 10
"args" => [
"/var/www/html/vendor/autoload_runtime.php"
]
"function" => "require_once"
]
]
|
Flashes
Flashes
No flash messages were created.
Server Parameters
Server Parameters
Defined in .env
| Key | Value |
|---|---|
| CLOUDINARY_API_KEY | "187719847589952" |
| CLOUDINARY_API_SECRET | "2L0-UBEtXjD-ODU3On8eqJrZPFY" |
| CLOUDINARY_CLOUDNAME | "startplatz" |
| CLOUDINARY_URL | "cloudinary://187719847589952:2L0-UBEtXjD-ODU3On8eqJrZPFY@startplatz" |
| OPENAI_API_KEY | "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" |
| OPENAI_ORGANIZATION | "STARTPLATZ" |
| SESSION_SAVE_PATH | "%kernel.project_dir%/var/cache/sessions" |
Defined as regular env variables
| Key | Value |
|---|---|
| APP_DEBUG | "1" |
| APP_ENV | "dev" |
| APP_SECRET | "a8A3I6BRkJE2ppNaBcgPec5i6E8Iwqwm" |
| CONTENT_LENGTH | "" |
| CONTENT_TYPE | "" |
| DATABASE_URL | "mysql://startplatz:kpp8o9pWYAp2@startplatz-staging-mysql:3306/startplatz-wordpress" |
| DOCUMENT_ROOT | "/var/www/html/public" |
| DOCUMENT_URI | "/index.php" |
| FCGI_ROLE | "RESPONDER" |
| GATEWAY_INTERFACE | "CGI/1.1" |
| GPG_KEYS | "528995BFEDFBA7191D46839EF9BA0ADA31CBD89E 39B641343D8C104B2B146DC3F9C39DC0B9698544 F1F692238FBC1666E5A5CCD4199F9DFEF6FFBAFD" |
| HOME | "/home/www-data" |
| HOSTNAME | "dev" |
| HTTP_ACCEPT | "*/*" |
| HTTP_ACCEPT_ENCODING | "gzip, br, zstd, deflate" |
| HTTP_HOST | "www.staging.startplatz.de" |
| HTTP_REFERER | "https://www.staging.startplatz.de/product-market-fit" |
| HTTP_USER_AGENT | "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" |
| HTTP_X_FORWARDED_FOR | "216.73.216.170" |
| HTTP_X_FORWARDED_HOST | "www.staging.startplatz.de" |
| HTTP_X_FORWARDED_PORT | "443" |
| HTTP_X_FORWARDED_PROTO | "https" |
| HTTP_X_FORWARDED_SERVER | "c7c6e7953db4" |
| HTTP_X_REAL_IP | "216.73.216.170" |
| HUBSPOT_API_KEY | "pat-na1-72043aa0-44a4-4dd6-b57a-5759597c4642" |
| HUBSPOT_DEFAULT_FORM_GUID | "1e712a28-62f9-46e0-99f5-13f6bdc0ec70" |
| HUBSPOT_PORTAL_ID | "44225308" |
| HUBSPOT_TRACKING_ID | "2795177" |
| MAILER_DSN | "smtp://STARTPLATZ:md-UPVV0udzlA47hrj9B-LMGQ@smtp.mandrillapp.com:587" |
| PATH | "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" |
| PHPIZE_DEPS | "autoconf \t\tdpkg-dev dpkg \t\tfile \t\tg++ \t\tgcc \t\tlibc-dev \t\tmake \t\tpkgconf \t\tre2c" |
| PHP_ASC_URL | "https://www.php.net/distributions/php-8.1.33.tar.xz.asc" |
| PHP_CFLAGS | "-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" |
| PHP_CPPFLAGS | "-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" |
| PHP_INI_DIR | "/usr/local/etc/php" |
| PHP_LDFLAGS | "-Wl,-O1 -pie" |
| PHP_SELF | "/index.php" |
| PHP_SHA256 | "9db83bf4590375562bc1a10b353cccbcf9fcfc56c58b7c8fb814e6865bb928d1" |
| PHP_URL | "https://www.php.net/distributions/php-8.1.33.tar.xz" |
| PHP_VERSION | "8.1.33" |
| PWD | "/var/www/html" |
| QUERY_STRING | "" |
| REDIRECT_STATUS | "200" |
| REMOTE_ADDR | "172.22.0.12" |
| REMOTE_PORT | "43496" |
| REQUEST_METHOD | "GET" |
| REQUEST_SCHEME | "http" |
| REQUEST_TIME | 1767005157 |
| REQUEST_TIME_FLOAT | 1767005157.0917 |
| REQUEST_URI | "/product-market-fit/" |
| SCRIPT_FILENAME | "/var/www/html/public/index.php" |
| SCRIPT_NAME | "/index.php" |
| SERVER_ADDR | "172.22.0.7" |
| SERVER_NAME | "_" |
| SERVER_PORT | "80" |
| SERVER_PROTOCOL | "HTTP/1.1" |
| SERVER_SOFTWARE | "nginx/1.18.0" |
| SHLVL | "1" |
| STARTPLATZ_BUILDTIME | "001" |
| STARTPLATZ_DATABASE_WORDPRESS_HOST | "startplatz-staging-mysql" |
| STARTPLATZ_DATABASE_WORDPRESS_NAME | "startplatz-wordpress" |
| STARTPLATZ_DATABASE_WORDPRESS_PASSWORD | "kpp8o9pWYAp2" |
| STARTPLATZ_DATABASE_WORDPRESS_USER | "startplatz" |
| STARTPLATZ_ENVIRONMENT | "staging.www.staging.startplatz.de" |
| STARTPLATZ_HOST | "www.staging.startplatz.de" |
| SYMFONY_DOTENV_VARS | "CLOUDINARY_URL,CLOUDINARY_CLOUDNAME,CLOUDINARY_API_KEY,CLOUDINARY_API_SECRET,SESSION_SAVE_PATH,OPENAI_API_KEY,OPENAI_ORGANIZATION" |
| USER | "www-data" |
| argc | 0 |
| argv | [] |
Sub Requests 3
DefaultController :: menuAction (token = ddb1f8)
| Key | Value |
|---|---|
| _controller | "App\StartPlatz\Bundle\WebsiteBundle\Controller\DefaultController::menuAction" |
| _format | "html" |
| _locale | "en" |
| _stopwatch_token | "2f2195" |
| permalink | "https://www.staging.startplatz.de/product-market-fit" |
DefaultController :: showNextEventsAction (token = f25eca)
| Key | Value |
|---|---|
| _controller | "App\StartPlatz\Bundle\EventBundle\Controller\DefaultController::showNextEventsAction" |
| _format | "html" |
| _locale | "en" |
| _stopwatch_token | "5d0ef3" |
DefaultController :: footerAction (token = d70faa)
| Key | Value |
|---|---|
| _controller | "App\StartPlatz\Bundle\WebsiteBundle\Controller\DefaultController::footerAction" |
| _format | "html" |
| _locale | "en" |
| _stopwatch_token | "8d471c" |