考虑一个插件,它添加了一个自定义的分类法,然后用一个大的术语层次结构填充分类法(数十个层次结构术语,在特定的安装中可能会变成数百个)。我明白这一点register_taxonomy()
不在数据库中存储数据,因此it must be used via the init
hook 以便在每次页面加载时注册分类。然而wp_insert_term()
does store data in the database.
考虑到这一点,是否最好wp_insert_term()
从…起register_activation_hook()
在确保register_taxonomy()
是否已运行?然后仅运行register_taxonomy()
在每个页面加载的“init”挂钩上?
作为参考,我的具体用例是GeoAreas WP插件,目前约有50个术语。我正在开发插件的下一个版本,该版本将支持更多不同的地理区域,并应支持数百个用于大型地理区域(如欧洲或美国)的术语。