<?php    @import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,700&family=Montserrat:wght@300;400;500;600&display=swap");   add_action('wp_head', 'add_cape_cache_schema');
function add_cape_cache_schema() {
if ( is_page(17403) ) { 
?>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "House",
"name": "Cape Cache",
"description": "A 48-square-metre bespoke coastal cabin in Suiderstrand, designed by sailor-designers Carin and Fouché. Features yacht-inspired interiors, biomimetic hexagonal tiles, and sustainable site-specific architecture.",
"url": "https://capecache.co.za/cape-cache-bespoke-coastal-cabin/",
"address": {
"@type": "PostalAddress",
"addressLocality": "Suiderstrand",
"addressRegion": "Western Cape",
"addressCountry": "ZA"
},
"creator": {
"@type": "Person",
"name": "Carin and Fouché",
"jobTitle": "Bespoke Designers"
},
"floorSize": {
"@type": "QuantitativeValue",
"value": 48,
"unitCode": "MTK"
},
"numberOfRooms": 2,
"amenityFeature": [
{
"@type": "LocationFeatureSpecification",
"name": "Construction",
"value": "Elevated timber cabin on 120mm posts with discrete concrete pad foundations"
},
{
"@type": "LocationFeatureSpecification",
"name": "Sustainability",
"value": "8000L conservancy tank, 2x 2500L rainwater harvesting, solar-ready north-facing roof"
},
{
"@type": "LocationFeatureSpecification",
"name": "Materials",
"value": "Bespoke hexagonal cement tiles, sloped birch plywood ceilings, Garapa wood, reclaimed nautical rope"
}
]
}
</script>
<?php
}
} add_filter( 'style_loader_tag', 'remove_broken_google_fonts_stylesheet', 9999, 2 );
function remove_broken_google_fonts_stylesheet( $html, $handle ) {
if ( strpos( $html, 'fonts.googleapis.com' ) !== false ) {
return ''; // Deletes the broken link entirely
}
return $html;
}[...document.scripts].forEach((s,i)=>{ if(!s.src && s.type!=='application/ld+json'){ const t=s.textContent; console.log('widget-script#'+i, (t.includes('“')||t.includes('”')||t.includes('‘')||t.includes('’')) ? 'STILL CORRUPTED ✗' : 'CLEAN ✓'); }});