自动添加国家/地区标签

时间:2020-01-20 作者:Faruk rıza

我想在明信片上显示国旗。我的计划显示带有以下代码的标志图标:

<img src="/icons/<?php echo $tagName; ?>.png" />
然而,我不知道如何将国家标签添加到Wordpress。你知道世界上有很多国家(如果我没记错的话,联合国有近200个国家)。或者,我将添加为标签的国家编号将取决于我将找到的图标集。那么,如何使用代码自动添加国家标签呢?

1 个回复
SO网友:Waldo Rabie

我建议使用此API:https://www.countryflags.io/.

您还需要一个国家和国家代码列表。在这里下载:https://gist.github.com/keeguon/2310008

然后,您可以这样做,将所有国家注册到自定义帖子类型的分类中。(您实际上只需要运行此代码一次)

$countries_json = file_get_contents(\'/countries.json/\');

$countries = json_decode($countries_json, true);

foreach ( $countries as $country ) {
    $term = $country->name;
    $taxonomy = YOUR_COUNTRY_TAXONOMY;
    $args = array(slug => $country->country_code);

    wp_insert_term( $term, $taxonomy, $args);
}
现在,所有的国家名称都应该出现在该分类下,您可以将任何国家指定给您的明信片。因此,当您在所有帖子中循环并呈现内容时,您可以通过使用get_the_terms( int|WP_Post $post, string $taxonomy ).

当你有一个职位的条件时。可以如下方式渲染国旗:

<img src="/icons/<?php echo $term->code; ?>.png" />