私はWordpressを使用しています。記事をループしています。記事ごとにケースを作成してクラスを追加しています。ケース名とクラス名は、各投稿に添付されたカスタムフィールドから取得されます。投稿記事をPHPでループし、ポリゴン(リーフレット)にクラスを追加する
ただし、国に関連する記事が2つあるとします。オーストラリアでは、ループは "このクラスでオーストラリアのための記事を見つけ、ケースを設定し、そのクラスを追加"と言うでしょう。しかし、オーストラリアに関連する記事が2つある場合、そのケースはすでに作成されているため、2番目のクラスを追加することはできません。スキップします。したがって私は間違っていると思うし、switch case
を使用しないでください。
country custom field
とsovereignt property within the geoson
の一致をチェックすることで、記事が国に関連している場合は国ポリゴンを描画できますが、ある国に関連する記事が2つある場合はそのポリゴンは一度描いたが、上記のようなクラスの問題がある。
geojson = L.geoJson(statesData, {
style: style,
style: function(feature) {
<?php
query_posts(array(
'post_type' => 'post',
'showposts' => -1
));
?>
switch (feature.properties.sovereignt) {
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
case '<?php the_field("country"); ?>': return {className: '_<?php the_field("year"); ?>'};
<?php endwhile; endif;?>
}
},
onEachFeature: onEachFeature
}).addTo(map);
スイッチケースの例私はPHPとJavaScriptごとに2本のラインを混合されて何が間違ってやっているleaflet docs
P.S.私の錆びたPHPを許してください、それはしばらくありました。 – IvanSanchez
post.countryとは何ですか?つまり、the_field( "country")のようなフィールドを出力する必要があります。 ? –
必要な方法で出力します。私のPHPが擬似コードであると考えてください。 – IvanSanchez