In this section you’ll discover seafront apartments for sale in Limassol with panoramic sea views, refined interiors, and expansive terraces, allowing you to live where the horizon meets the water in absolute harmony.
Home › Properties for Sale in Limassol › Apartments for Sale in Limassol › Page 14
(function() {
try {
const currentUrl = window.location.href.split('#')[0];
const baseUrl = window.location.origin;
const pageTitle = document.title;
// 1. Το URL για το επίπεδο "Properties for Sale in Limassol" (χωρίς Apartments και χωρίς νούμερο)
const generalCategoryUrl = baseUrl + "/en/sale/Limassol/Properties";
// 2. Το URL για το επίπεδο "Apartments" (αφαιρούμε μόνο τον αριθμό σελίδας π.χ. /2/)
const specificCategoryUrl = currentUrl.replace(/\/\d+\//, '/');
const breadcrumbData = {
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": baseUrl
},
{
"@type": "ListItem",
"position": 2,
"name": "Properties for Sale in Limassol",
"item": generalCategoryUrl
},
{
"@type": "ListItem",
"position": 3,
"name": "Apartments for Sale in Limassol",
"item": specificCategoryUrl
}
]
};
// 3. Αν το URL περιέχει αριθμό σελίδας (π.χ. /2/), πρόσθεσε το 4ο επίπεδο
if (/\/\d+\//.test(currentUrl)) {
breadcrumbData.itemListElement.push({
"@type": "ListItem",
"position": 4,
"name": pageTitle,
"item": currentUrl
});
}
const script = document.createElement('script');
script.type = 'application/ld+json';
script.text = JSON.stringify(breadcrumbData);
document.head.appendChild(script);
} catch (e) {}
})();
document.addEventListener("DOMContentLoaded", function () {
try {
const pageUrl = location.href.split('#')[0];
const base = location.origin;
// Εφόσον υπάρχει μόνο ΕΝΑΣ αριθμός στο URL, τον βρίσκουμε απευθείας
const pathParts = location.pathname.split('/').filter(Boolean);
const pageNum = parseInt(pathParts.find(p => !isNaN(p))) || 1;
const offset = (pageNum - 1) * 9;
const pageTitle = document.title || "";
const pageDesc = (document.querySelector('meta[name="description"]')?.content || "").trim();
let cards = document.querySelectorAll(".result-card");
if (!cards || cards.length === 0) cards = document.querySelectorAll(".re_prop .col-xs-4");
const seen = new Set();
const itemList = [];
cards.forEach((card, index) => {
let href = null;
const links = Array.from(card.querySelectorAll('a[href]'));
links.sort((a, b) => {
const aw = a.matches('a.hcaption') ? 0 : a.closest('h2') ? 1 : 2;
const bw = b.matches('a.hcaption') ? 0 : b.closest('h2') ? 1 : 2;
return aw - bw;
});
for (const a of links) {
const h = (a.getAttribute('href') || '').trim();
if (!h || h[0] === '#' || /^javascript:/i.test(h) || /#myToggle/i.test(h)) continue;
href = new URL(h, base).href;
break;
}
const h2 = card.querySelector("h2.prop-title, h2.prop-title-fixer, h2");
const name = (h2?.textContent || "").trim();
const imgEl = card.querySelector("img");
let image = imgEl ? (imgEl.getAttribute("data-src") || imgEl.getAttribute("data-lazy") || imgEl.getAttribute("src")) : null;
if (image) image = new URL(image, base).href;
const clean = (t) => (t || "").replace(/€/gi, "€").replace(/\u00A0/g, " ").replace(/\s+/g, " ").trim();
const priceText = clean(card.querySelector("p.prop-title-fixer")?.textContent || "");
const infoText = clean(card.querySelector(".res-prop-details .prop-info-fixer")?.textContent || "");
if (href && name && !seen.has(href)) {
seen.add(href);
const li = {
"@type": "ListItem",
"position": offset + index + 1, // Υπολογισμός θέσης: (Σελίδα-1)*9 + σειρά
"url": href,
"name": name
};
if (image) li.image = image;
if (infoText || priceText) {
li.description = infoText + (infoText && priceText ? " — " : "") + priceText;
}
itemList.push(li);
}
});
const graph = [
{
"@type": "CollectionPage",
"@id": pageUrl + "#webpage",
"url": pageUrl,
"name": pageTitle,
"description": pageDesc
},
{
"@type": "ItemList",
"@id": pageUrl + "#itemlist",
"url": pageUrl,
"name": pageTitle,
"numberOfItems": itemList.length,
"itemListElement": itemList
}
];
const s = document.createElement("script");
s.type = "application/ld+json";
s.text = JSON.stringify({ "@context": "https://schema.org", "@graph": graph });
document.head.appendChild(s);
} catch(e) {}
});
In this section you’ll discover seafront apartments for sale in Limassol with panoramic sea views, refined interiors, and expansive terraces, allowing you to live where the horizon meets the water in absolute harmony.
Home › Properties for Sale in Limassol › Apartments for Sale in Limassol › Page 14
...read more