Geo Mashupプラグインは、WordPressで地図(Google Maps V2 / V3 / OpenStreetMap)を表示するプラグインです。
このプラグインでは、カテゴリーごとに地図を表示できます。
今回、その「カテゴリーごとのページ」に件数を表示してみました。
shortcodes.php
上のほうに "add_shortcode()"がたくさん並んでいる個所があります。そこに、以下のコードを追加します。
add_shortcode('geo_mashup_category_count', array( 'GeoMashup', 'category_count' ) );
geo-mashup.php
1066行目あたりに "function category_name()" という関数があります。これをコピーして、「カテゴリー名から件数を調べる」処理を付け足します。
public static function category_count($option_args = null) {
$category_name = '';
$category_count = 0;
if (is_string($option_args)) {
$option_args = wp_parse_args($option_args);
}
if (is_page() && isset($_SERVER['QUERY_STRING'])) {
$option_args = $option_args + self::explode_assoc('=','&',$_SERVER['QUERY_STRING']);
}
if (isset($option_args['map_cat'])) {
$category_name = get_cat_name($option_args['map_cat']);
}
if($category_name != ''){
$cat_properties = get_term_by( 'name', $category_name , 'category' );
$category_count = $cat_properties->count;
}
return $category_count;
}
これで、カテゴリーごとの地図が表示されたページに[geo_mashup_category_count]と書くと、件数が表示されます。
最初に紹介したサイトでは、固定ページに次のように記述しています。
[geo_mashup_category_name]の結婚式場マップ([geo_mashup_category_count]件)<br /> [geo_mashup_map]







