function bp_ensure_pc6( string $pc6 ): bool {
if ( ! function_exists('bp_db') ) return false;
$pc6 = strtoupper( str_replace(' ', '', $pc6) );
// Validate format
if ( ! preg_match('/^\d{4}[A-Z]{2}$/', $pc6) ) return false;
// ── Step 1: ensure PC6 exists in PDOK ────────────────────────
$pdok = bp_db()->get_row(
bp_db()->prepare(
"SELECT * FROM PDOK WHERE PC6 = %s",
$pc6
)
);
if ( empty($pdok) ) {
// Fetch from PDOK Locatieserver API
$url = 'https://api.pdok.nl/bzk/locatieserver/search/v3_1/free?'
. http_build_query([
'q' => $pc6,
'fq' => 'type:postcode',
'rows' => 1,
'fl' => 'id,weergavenaam,gemeentecode,gemeentenaam,'
. 'woonplaatsnaam,straatnaam,postcode,'
. 'provinciecode,provincienaam,centroide_ll'
]);
$response = wp_remote_get( $url, ['timeout' => 5] );
if ( is_wp_error($response) ) return false;
$body = json_decode( wp_remote_retrieve_body($response), true );
$doc = $body['response']['docs'][0] ?? null;
if ( empty($doc) ) return false; // PC6 doesn't exist in PDOK either
// Insert into PDOK table
bp_db()->insert( 'PDOK', [
'PC6' => $pc6,
'woonplaatsnaam' => $doc['woonplaatsnaam'] ?? '',
'gemeentecode' => $doc['gemeentecode'] ?? '',
'gemeentenaam' => $doc['gemeentenaam'] ?? '',
'provinciecode' => $doc['provinciecode'] ?? '',
'provincienaam' => $doc['provincienaam'] ?? '',
'centroide_ll' => $doc['centroide_ll'] ?? '',
'straatnaam' => $doc['straatnaam'] ?? '',
'weergavenaam' => $doc['weergavenaam'] ?? '',
] );
// Re-fetch so we have a consistent $pdok object below
$pdok = bp_db()->get_row(
bp_db()->prepare("SELECT * FROM PDOK WHERE PC6 = %s", $pc6)
);
}
if ( empty($pdok) ) return false;
// ── Step 2: lookup corop_id via gemeente_corop ────────────────
$gem_code = 'GM' . $pdok->gemeentecode;
$corop_id = bp_db()->get_var(
bp_db()->prepare(
"SELECT corop_id FROM gemeente_corop WHERE gem_code = %s",
$gem_code
)
);
// ── Step 3: ensure PC6 exists in master ───────────────────────
$master = bp_db()->get_row(
bp_db()->prepare("SELECT PC6, woonplaatsnaam, straatnaam, corop_id FROM master WHERE PC6 = %s", $pc6)
);
if ( empty($master) ) {
// INSERT new row
bp_db()->insert( 'master', [
'PC6' => $pc6,
'woonplaatsnaam' => $pdok->woonplaatsnaam,
'straatnaam' => $pdok->straatnaam,
'GemCode' => $gem_code,
'GemNaam' => $pdok->gemeentenaam,
'corop_id' => $corop_id ?: null,
] );
} else {
// UPDATE only NULL fields
$updates = [];
if ( empty($master->woonplaatsnaam) ) $updates['woonplaatsnaam'] = $pdok->woonplaatsnaam;
if ( empty($master->straatnaam) ) $updates['straatnaam'] = $pdok->straatnaam;
if ( empty($master->corop_id) ) $updates['corop_id'] = $corop_id ?: null;
if ( ! empty($updates) ) {
bp_db()->update( 'master', $updates, ['PC6' => $pc6] );
}
}
return true;
}
Bürt.nl: Sluisplein 18, 1975 AE IJmuiden
Sluisplein 18
1975 AE IJmuiden
IJmuiden ›
1975 ›
1975 AE ›
Sluisplein 18
Sluisplein 18
is een adres in de straat Sluisplein,
met postcode 1975 AE
in IJmuiden.
Het valt onder de gemeente Velsen , in de provincie Noord-Holland.
De buurt heet Oud-IJmuiden , wijk Wijk 03 IJmuiden-West.
Adres
Sluisplein 18, 1975 AE IJmuiden
Postcode
1975 AE
Woonplaats
IJmuiden
Gemeente
Velsen
Provincie
Noord-Holland
Coördinaten
52.46343366, 4.59122478
Gem. WOZ-waarde
375.000 €
Huurmarkt context
Gemiddelde huurprijzen · april 2026 · bron: buert.nl database
Gemeente
De gemiddelde huurprijs per m² in Velsen is €21,59. Dat is 29.2% lager dan het landelijk gemiddelde van €30,50.
Regio
De gemiddelde huurprijs per m² in IJmond is €21,50. Dat is 29.5% lager dan het landelijk gemiddelde van €30,50.
Provincie
De gemiddelde huurprijs per m² in Noord-Holland is €33,61. Dat is 10.2% hoger dan het landelijk gemiddelde van €30,50.
Regio prijsrange
De goedkoopste huurhuizen in de regio staan in Uitgeest (gem. € 13,62/m² ), de duurste in Beverwijk (gem. € 28,36/m² ).
Regio oppervlakte
De grootste huurwoningen in de regio staan in Castricum (gem. 106 m² ), de kleinste in Beverwijk (gem. 34 m² ).
Andere adressen met postcode 1975 AE: Sluisplein 1 , Sluisplein 3 , Sluisplein 4 , Sluisplein 5 , Sluisplein 6 , Sluisplein 7 , Sluisplein 9 , Sluisplein 15 , Sluisplein 16 , Sluisplein 17 , Sluisplein 18 , Sluisplein 19 , Sluisplein 20 , Sluisplein 21 , Sluisplein 22 , Sluisplein 24 .
←
Terug naar postcode 1975 AE