{"id":912,"date":"2025-10-11T12:48:23","date_gmt":"2025-10-11T12:48:23","guid":{"rendered":"https:\/\/tennisradar.gr\/blog\/?page_id=912"},"modified":"2025-10-18T18:52:47","modified_gmt":"2025-10-18T18:52:47","slug":"athens-all-tennis-courts","status":"publish","type":"page","link":"https:\/\/tennisradar.gr\/blog\/athens-all-tennis-courts\/","title":{"rendered":"\u038c\u03bb\u03b1 \u03c4\u03b1 \u03b3\u03ae\u03c0\u03b5\u03b4\u03b1 \u03c4\u03ad\u03bd\u03b9\u03c2(\u03b1\u03bd\u03c4\u03b9\u03c3\u03c6\u03b1\u03af\u03c1\u03b9\u03c3\u03b7\u03c2) \u03c4\u03b7\u03c2 \u0391\u03b8\u03ae\u03bd\u03b1\u03c2"},"content":{"rendered":"<form role=\"search\" method=\"get\" action=\"https:\/\/tennisradar.gr\/blog\/\" class=\"wp-block-search__button-outside wp-block-search__text-button aligncenter wp-block-search\"    ><label class=\"wp-block-search__label screen-reader-text\" for=\"wp-block-search__input-1\" >\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7<\/label><div class=\"wp-block-search__inside-wrapper\"  style=\"width: 50%\"><input class=\"wp-block-search__input\" id=\"wp-block-search__input-1\" placeholder=\"TK \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03b2\u03c1\u03b5\u03af\u03c4\u03b5 \u03c4\u03b1 \u03ba\u03bf\u03bd\u03c4\u03b9\u03bd\u03ac \u03b3\u03ae\u03c0\u03b5\u03b4\u03b1 \u03c4\u03ad\u03bd\u03b9\u03c2\" value=\"\" type=\"search\" name=\"s\" required \/><button aria-label=\"\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7\" class=\"wp-block-search__button wp-element-button\" type=\"submit\" >\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7<\/button><\/div><\/form>\n\n<p>&nbsp;<\/p>\n\n\n<div class=\"wp-block-spacer\" style=\"height: 20px;\" aria-hidden=\"true\">\u00a0<\/div>\n\n\n\n<style>\n.area-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n  gap: 1rem;\n  max-width: 1000px;\n  margin: 1rem auto;\n}\n.area-link {\n  display: block;\n  background: #fff;\n  padding: 1rem 1.25rem;\n  text-align: center;\n  text-decoration: none;\n  font-weight: 700;\n  color: #0b3d91;\n  border-radius: 10px;\n  box-shadow: 0 6px 14px rgba(0,0,0,0.08);\n  transition: transform .18s, box-shadow .18s;\n}\n.area-link:hover { transform: translateY(-4px); box-shadow: 0 12px 24px rgba(0,0,0,0.12); }\n.container-center { max-width:1100px; margin:0 auto; padding:1rem; text-align:center; }\n.search-row { margin-bottom: 1.2rem; }\n<\/style>\n\n<div class=\"container-center\">\n\n  <div class=\"area-grid\" id=\"areaGrid\">\u03a6\u03cc\u03c1\u03c4\u03c9\u03c3\u03b7 \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ce\u03bd\u2026<\/div>\n<\/div>\n\n<script>\n(async function(){\n  \/\/ Option A: fetch the JSON file you created with the Python script.\n  \/\/ Put the correct URL to postcode_to_area.json on your site:\n  const JSON_URL = \"\/blog\/wp-content\/uploads\/postcode_to_area.json\"; \/\/ <- adjust path\n\n  let mapping = {};\n  try {\n    const r = await fetch(JSON_URL);\n    if (!r.ok) throw new Error(\"Fetch failed\");\n    mapping = await r.json();\n  } catch (err) {\n    \/\/ Fallback: small inline example (you can replace by the full mapping manually)\n    mapping = {\n  \"10434\": \"\u03a4\u039a 10434 - (\u0391\u03b8\u03ae\u03bd\u03b1)\",\n  \"10441\": \"\u03a4\u039a 10441 - \u039a\u03bf\u03bb\u03c9\u03bd\u03cc\u03c2\",\n  \"10443\": \"\u03a4\u039a 10443 - Academy\",\n  \"10447\": \"\u03a4\u039a 10447 - \u0391\u03b8\u03b7\u03bd\u03ce\u03bd\",\n  \"10558\": \"\u03a4\u039a 10558 - \u0391\u03b8\u03b7\u03bd\u03ce\u03bd\",\n  \"10676\": \"\u03a4\u039a 10676 - \u0395\u03c5\u03b1\u03b3\u03b3\u03b5\u03bb\u03b9\u03c3\u03bc\u03cc\u03c2\",\n  \"11141\": \"\u03a4\u039a 11141 - (\u0391\u03b8\u03ae\u03bd\u03b1)\",\n  \"11475\": \"\u03a4\u039a 11475 - \u0393\u03ba\u03cd\u03b6\u03b7\",\n  \"11476\": \"\u03a4\u039a 11476 - \u0393\u03ba\u03cd\u03b6\u03b7\",\n  \"11525\": \"\u03a4\u039a 11525 - \u03a4\u03ad\u03bd\u03bd\u03b9\u03c2\",\n  \"11528\": \"\u03a4\u039a 11528 - \u039c\u03b9\u03c7\u03b1\u03bb\u03b1\u03ba\u03cc\u03c0\u03bf\u03c5\u03bb\u03bf\u03c5\",\n  \"11853\": \"\u03a4\u039a 11853 - \u039a\u03ac\u03c4\u03c9\",\n  \"11855\": \"\u03a4\u039a 11855 - \u0392\u03bf\u03c4\u03b1\u03bd\u03b9\u03ba\u03cc\u03c2\",\n  \"12043\": \"\u03a4\u039a 12043 - \u0391\u03b8\u03ae\u03bd\u03b1\",\n  \"12135\": \"\u03a4\u039a 12135 - \u03a0\u03b5\u03c1\u03b9\u03c3\u03c4\u03ad\u03c1\u03b9\",\n  \"12243\": \"\u03a4\u039a 12243 - \u03c4\u03ad\u03bd\u03b9\u03c2\",\n  \"12351\": \"\u03a4\u039a 12351 - \u0392\u03b1\u03c1\u03b2\u03ac\u03c1\u03b1\u03c2\",\n  \"12461\": \"\u03a4\u039a 12461 - \u03a7\u03b1\u03ca\u03b4\u03ac\u03c1\u03b9\",\n  \"12462\": \"\u03a4\u039a 12462 - \u03c4\u03ad\u03bd\u03b9\u03c2\",\n  \"13121\": \"\u03a4\u039a 13121 - \u039d.\u039b\u03b9\u03cc\u03c3\u03b9\u03b1-\u03a0\u03b1\u03bb\u03b1\u03b9\u03c4\u03b1\u03bd\u03ae\",\n  \"13232\": \"\u03a4\u039a 13232 - \u03a0\u03b5\u03c4\u03c1\u03bf\u03cd\u03c0\u03bf\u03bb\u03b7\",\n  \"13561\": \"\u03a4\u039a 13561 - \u0391\u03b3.\u0391\u03bd\u03ac\u03c1\u03c5\u03b3\u03c1\u03bf\u03b9\",\n  \"13562\": \"\u03a4\u039a 13562 - \u0391\u03b3.\u0391\u03bd\u03ac\u03c1\u03c5\u03b3\u03c1\u03bf\u03b9\",\n  \"14231\": \"\u03a4\u039a 14231 - Tennis\",\n  \"14233\": \"\u03a4\u039a 14233 - \u039d\u03b5\u03ac\u03c0\u03bf\u03bb\u03b5\u03c9\u03c2\",\n  \"14262\": \"\u03a4\u039a 14262 - \u0391\u03b8\u03ae\u03bd\u03b1\",\n  \"14342\": \"\u03a4\u039a 14342 - \u03c4\u03ad\u03bd\u03bd\u03b9\u03c2\",\n  \"15001\": \"\u03a4\u039a 15001 - \u0391\u03b8\u03ae\u03bd\u03b1\",\n  \"15123\": \"\u03a4\u039a 15123 - \u039c\u03b1\u03c1\u03bf\u03cd\u03c3\u03b9-\u039d.\u03a6\u03b9\u03bb\u03bf\u03b8\u03ad\u03b7\",\n  \"15125\": \"\u03a4\u039a 15125 - \u039c\u03b1\u03c1\u03bf\u03cd\u03c3\u03b9-\u03a0\u03b1\u03c1\u03ac\u03b4\u03b5\u03b9\u03c3\u03bf\u03c2\",\n  \"15126\": \"\u03a4\u039a 15126 - \u039c\u03b1\u03c1\u03bf\u03cd\u03c3\u03b9-\u039d.\u039b\u03ad\u03c3\u03b2\u03bf\u03c2\",\n  \"15127\": \"\u03a4\u039a 15127 - \u039c\u03b5\u03bb\u03af\u03c3\u03c3\u03b9\u03b1\",\n  \"15231\": \"\u03a4\u039a 15231 - \u03a7\u03b1\u03bb\u03ac\u03bd\u03b4\u03c1\u03b9-\u0391\u03b3.\u0392\u03b1\u03c1\u03b2\u03ac\u03c1\u03b1\",\n  \"15234\": \"\u03a4\u039a 15234 - \u03a7\u03b1\u03bb\u03ac\u03bd\u03b4\u03c1\u03b9\",\n  \"15236\": \"\u03a4\u039a 15236 - \u03a0\u03b5\u03bd\u03c4\u03ad\u03bb\u03b7-\u039d.\u03a0\u03b5\u03bd\u03c4\u03ad\u03bb\u03b7\",\n  \"15237\": \"\u03a4\u039a 15237 - \u03a6\u03b9\u03bb\u03bf\u03b8\u03ad\u03b7\",\n  \"15238\": \"\u03a4\u039a 15238 - \u03a7\u03b1\u03bb\u03ac\u03bd\u03b4\u03c1\u03b9\",\n  \"15341\": \"\u03a4\u039a 15341 - \u0391\u03b3.\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae\u03ae-\u039d.\u0396\u03c9\u03ae\",\n  \"15342\": \"\u03a4\u039a 15342 - \u0391\u03b3.\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae\u03ae-\u0391\u03b3\u03af\u03b1\u03bd\u03bd\u03b7\",\n  \"15343\": \"\u03a4\u039a 15343 - \u0391\u03b3.\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae\u03ae-\u03a0\u03b5\u03c5\u03ba\u03ac\u03ba\u03b9\",\n  \"15344\": \"\u03a4\u039a 15344 - \u0391\u03bd\u03b8\u03bf\u03cd\u03c3\u03b1\",\n  \"15349\": \"\u03a4\u039a 15349 - \u0391\u03bd\u03b8\u03bf\u03cd\u03c3\u03b1\",\n  \"15351\": \"\u03a4\u039a 15351 - \u03a0\u03b1\u03bb\u03bb\u03ae\u03bd\u03b7\",\n  \"15354\": \"\u03a4\u039a 15354 - \u039d\u03b5\u03c1\u03ac\",\n  \"15451\": \"\u03a4\u039a 15451 - \u03a4\u03ad\u03bd\u03bd\u03b9\u03c2\",\n  \"15452\": \"\u03a4\u039a 15452 - \u03a8\u03c5\u03c7\u03b9\u03ba\u03cc-\u0391\u03b3.\u0394\u03b7\u03bc\u03ae\u03c4\u03c1\u03b9\u03bf\u03c2\",\n  \"15562\": \"\u03a4\u039a 15562 - Courts\",\n  \"15669\": \"\u03a4\u039a 15669 - \u03a0\u03b1\u03c0\u03ac\u03b3\u03bf\u03c5\",\n  \"15771\": \"\u03a4\u039a 15771 - \u0399\u03bb\u03af\u03c3\u03b9\u03b1\",\n  \"15772\": \"\u03a4\u039a 15772 - \u0399\u03bb\u03af\u03c3\u03b9\u03b1\",\n  \"15773\": \"\u03a4\u039a 15773 - \u03c4\u03ad\u03bd\u03bd\u03b9\u03c2\",\n  \"15780\": \"\u03a4\u039a 15780 - \u03a4\u03ad\u03bd\u03bd\u03b9\u03c2\",\n  \"16122\": \"\u03a4\u039a 16122 - \u039a\u03b1\u03b9\u03c3\u03b1\u03c1\u03b9\u03b1\u03bd\u03ae-\u0391.\u039a\u03b1\u03b9\u03c3\u03ac\u03c1\u03b9\",\n  \"16232\": \"\u03a4\u039a 16232 - \u0392\u03cd\u03c1\u03c9\u03bd\u03b1\u03c2\",\n  \"16233\": \"\u03a4\u039a 16233 - \u03a0\u03b7\u03b3\u03ae\",\n  \"16341\": \"\u03a4\u039a 16341 - \u0397\u03bb\u03b9\u03bf\u03cd\u03c0\u03bf\u03bb\u03b7-\u039a.\u0397\u03bb\u03b9\u03bf\u03cd\u03c0\u03bf\u03bb\",\n  \"16342\": \"\u03a4\u039a 16342 - \u0397\u03bb\u03b9\u03bf\u03cd\u03c0\u03bf\u03bb\u03b7-\u0391\u03c3\u03c4\u03c5\u03bd\u03bf\u03bc\u03b9\u03ba\u03ac\",\n  \"16344\": \"\u03a4\u039a 16344 - \u0397\u03bb\u03b9\u03bf\u03cd\u03c0\",\n  \"16346\": \"\u03a4\u039a 16346 - \u0397\u03bb\u03b9\u03bf\u03cd\u03c0\u03bf\u03bb\u03b7-\u039a.\u0397\u03bb\u03b9\u03bf\u03cd\u03c0\u03bf\u03bb\",\n  \"16451\": \"\u03a4\u039a 16451 - \u0391\u03c1\u03b3\u03c5\u03c1\u03bf\u03cd\u03c0\u03bf\u03bb\u03b7\",\n  \"16452\": \"\u03a4\u039a 16452 - \u0391\u03c1\u03b3\u03c5\u03c1\u03bf\u03cd\u03c0\u03bf\u03bb\u03b7\",\n  \"16671\": \"\u03a4\u039a 16671 - \u0392\u03bf\u03c5\u03bb\u03b9\u03b1\u03b3.-\u039c.\u039a\u03b1\u03b2\u03bf\u03cd\u03c1\u03b9\",\n  \"16672\": \"\u03a4\u039a 16672 - \u0392\u03ac\u03c1\u03b7\",\n  \"16673\": \"\u03a4\u039a 16673 - \u0392\u03bf\u03cd\u03bb\u03b1\",\n  \"16674\": \"\u03a4\u039a 16674 - \u0393\u03bb\u03c5\u03c6\u03ac\u03b4\u03b1\",\n  \"16675\": \"\u03a4\u039a 16675 - \u0393\u03bb\u03c5\u03c6\u03ac\u03b4\u03b1\",\n  \"16701\": \"\u03a4\u039a 16701 - \u0391\u03b8\u03ae\u03bd\u03b1\",\n  \"16777\": \"\u03a4\u039a 16777 - \u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03cc-\u0391\u03b3.\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae\",\n  \"17122\": \"\u03a4\u039a 17122 - \u039d.\u03a3\u03bc\u03cd\u03c1\u03bd\u03b7\",\n  \"17124\": \"\u03a4\u039a 17124 - \u039d.\u03a3\u03bc\u03cd\u03c1\u03bd\",\n  \"17341\": \"\u03a4\u039a 17341 - \u0391\u03b3.\u0394\u03b7\u03bc\u03ae\u03c4\u03c1\u03b9\u03bf\u03c2\",\n  \"17455\": \"\u03a4\u039a 17455 - \u0386\u03bb\u03b9\u03bc\u03bf\u03c2-\u039a\u03b1\u03bb\u03b1\u03bc\u03ac\u03ba\u03b9\",\n  \"17456\": \"\u03a4\u039a 17456 - \u0386\u03bb\u03b9\u03bc\u03bf\u03c2-\u0395\u03ba\u03c4\u03b5\u03bb\u03c9\u03bd\u03b9\u03c3\u03c4\u03ce\u03bd\",\n  \"17561\": \"\u03a4\u039a 17561 - \u03a0.\u03a6\u03ac\u03bb\u03b7\u03c1\u03bf\",\n  \"17562\": \"\u03a4\u039a 17562 - \u03a0.\u03a6\u03ac\u03bb\u03b7\u03c1\u03bf\",\n  \"17676\": \"\u03a4\u039a 17676 - \u039a\u03b1\u03bb\u03bb\u03b9\u03b8\u03ad\u03b1-\u03a0\u03bb.\u039a\u03b1\u03bb\u03bb\u03b9\u03b8\u03ad\u03b1\",\n  \"17778\": \"\u03a4\u039a 17778 - \u03a4\u03b1\u03cd\u03c1\u03bf\u03c2\",\n  \"18233\": \"\u03a4\u039a 18233 - \u0391\u03b3.\u0399.\u03a1\u03ad\u03bd\u03c4\u03b7\u03c2\",\n  \"18344\": \"\u03a4\u039a 18344 - \u039c\u03bf\u03c3\u03c7\u03ac\u03c4\u03bf\u03c5\",\n  \"18454\": \"\u03a4\u039a 18454 - \u03a7\u03ce\u03bc\u03b1\u03c4\u03b1\",\n  \"18533\": \"\u03a4\u039a 18533 - \u03a0\u03b5\u03b9\u03c1\u03b1\u03b9\u03ac\u03c2-\u039a\u03b1\u03c3\u03c4\u03ad\u03bb\u03bb\u03b1\",\n  \"18534\": \"\u03a4\u039a 18534 - \u03a0\u03b5\u03b9\u03c1\u03b1\u03b9\u03ac\u03c2-\u03a0\u03bb.\u0391\u03bb\u03b5\u03be\u03b1\u03bd\u03b4\u03c1\",\n  \"18537\": \"\u03a4\u039a 18537 - \u03a0\u03b5\u03b9\u03c1\u03b1\u03b9\u03ac\u03c2-\u0391\u03b3.\u039d\u03b9\u03ba\u03cc\u03bb\u03b1\u03bf\u03c2\",\n  \"18538\": \"\u03a4\u039a 18538 - \u03a0\u03b5\u03b9\u03c1\u03b1\u03b9\u03ac\u03c2-\u03a7\u03b1\u03c4\u03b6\u03b7\u03ba\u03c5\u03c1\u03b9\u03b1\u03ba\u03bf\u03cd\",\n  \"18541\": \"\u03a4\u039a 18541 - \u0391\u03c0\u03cc\u03bb\u03bb\u03c9\u03bd\u03bf\u03c2\",\n  \"18758\": \"\u03a4\u039a 18758 - \u039a\u03b5\u03c1\u03b1\u03c4\u03c3\u03b9\u03bd\u03af\u03bf\u03c5\",\n  \"19002\": \"\u03a4\u039a 19002 - \u03a0\u03b1\u03b9\u03b1\u03bd\u03af\u03b1\",\n  \"19400\": \"\u03a4\u039a 19400 - \u039a\u03bf\u03c1\u03c9\u03c0\u03af-\u039a\u03b1\u03c1\u03ad\u03bb\u03bb\u03b1\u03c2\"\n};\n    console.warn(\"Could not load postcode_to_area.json:\", err);\n  }\n\n  const container = document.getElementById(\"areaGrid\");\n  container.innerHTML = \"\";\n\n  \/\/ Build links sorted by numeric postcode\n  const keys = Object.keys(mapping).sort((a,b)=>parseInt(a,10)-parseInt(b,10));\n  for (const pc of keys) {\n    const title = mapping[pc];\n    \/\/ URL: category page path used in your site (adjust if needed)\n    const href = `\/blog\/category\/tennis-courts-athens\/tk-${pc}\/`;\n    const a = document.createElement(\"a\");\n    a.href = href;\n    a.className = \"area-link\";\n    a.textContent = title;\n    container.appendChild(a);\n  }\n\n  \/\/ search: jump to category if exact postcode typed\n  document.getElementById(\"btnSearch\").addEventListener(\"click\", ()=>{\n    const v = document.getElementById(\"postcodeSearch\").value.replace(\/\\s+\/g,'');\n    if (!v) return;\n    if (mapping[v]) {\n      window.location.href = `\/blog\/category\/tennis-courts-athens\/tk-${v}\/`;\n    } else {\n      alert(\"\u0394\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5 \u03a4\u039a: \" + v);\n    }\n  });\n})();\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; \u03a6\u03cc\u03c1\u03c4\u03c9\u03c3\u03b7 \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ce\u03bd\u2026<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-912","page","type-page","status-publish"],"_links":{"self":[{"href":"https:\/\/tennisradar.gr\/blog\/wp-json\/wp\/v2\/pages\/912","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tennisradar.gr\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/tennisradar.gr\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/tennisradar.gr\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tennisradar.gr\/blog\/wp-json\/wp\/v2\/comments?post=912"}],"version-history":[{"count":12,"href":"https:\/\/tennisradar.gr\/blog\/wp-json\/wp\/v2\/pages\/912\/revisions"}],"predecessor-version":[{"id":2989,"href":"https:\/\/tennisradar.gr\/blog\/wp-json\/wp\/v2\/pages\/912\/revisions\/2989"}],"wp:attachment":[{"href":"https:\/\/tennisradar.gr\/blog\/wp-json\/wp\/v2\/media?parent=912"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}