{"id":282224,"date":"2026-02-22T08:22:48","date_gmt":"2026-02-22T08:22:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/taxonomy-terms-counter\/"},"modified":"2026-04-21T12:07:42","modified_gmt":"2026-04-21T12:07:42","slug":"taxonomy-terms-counter","status":"publish","type":"plugin","link":"https:\/\/bre.wordpress.org\/plugins\/taxonomy-terms-counter\/","author":17268724,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.0.0","stable_tag":"2.0.0","tested":"6.9.4","requires":"6.8","requires_php":"7.4","requires_plugins":null,"header_name":"Taxonomy Terms Counter","header_author":"secretlab48","header_description":"Show taxonomy term counts in the Gutenberg editor sidebar and manage which taxonomies display counts.","assets_banners_color":"c6d8ea","last_updated":"2026-04-21 12:07:42","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/www.privat24.ua\/send\/iqtg5","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":273,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"secretlab48","date":"2026-02-22 08:34:43"},"2.0.0":{"tag":"2.0.0","author":"secretlab48","date":"2026-04-21 12:07:42"}},"upgrade_notice":{"1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon.svg":{"filename":"icon.svg","revision":3466769,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3466769,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","2.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3466769,"resolution":"1","location":"assets","locale":"","width":2278,"height":1816},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3466769,"resolution":"2","location":"assets","locale":"","width":564,"height":1778}},"screenshots":{"1":"Settings page for enabling counts per taxonomy.","2":"Counts displayed in the Gutenberg taxonomy panel."}},"plugin_section":[],"plugin_tags":[442,1332,260708,91,1901],"plugin_category":[46,57],"plugin_contributors":[256349],"plugin_business_model":[],"class_list":["post-282224","plugin","type-plugin","status-publish","hentry","plugin_tags-count","plugin_tags-editor","plugin_tags-tags-gutenberg","plugin_tags-taxonomy","plugin_tags-terms","plugin_category-editor-and-writing","plugin_category-taxonomy","plugin_contributors-secretlab48","plugin_committers-secretlab48"],"banners":{"banner":"https:\/\/ps.w.org\/taxonomy-terms-counter\/assets\/banner-772x250.jpg?rev=3466769","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/taxonomy-terms-counter\/assets\/icon.svg?rev=3466769","icon":"https:\/\/ps.w.org\/taxonomy-terms-counter\/assets\/icon.svg?rev=3466769","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/taxonomy-terms-counter\/assets\/screenshot-1.png?rev=3466769","caption":"Settings page for enabling counts per taxonomy."},{"src":"https:\/\/ps.w.org\/taxonomy-terms-counter\/assets\/screenshot-2.png?rev=3466769","caption":"Counts displayed in the Gutenberg taxonomy panel."}],"raw_content":"<!--section=description-->\n<p>Taxonomy Terms Counter adds term counts to taxonomy panels in the editor sidebar for both Gutenberg and Classic Editor.\nYou can enable or disable counts per taxonomy and post type from the plugin settings page.<\/p>\n\n<h3>Source Code<\/h3>\n\n<p>Full source code is available on GitHub:\nhttps:\/\/github.com\/secretlab48\/taxonomy-terms-counter<\/p>\n\n<p>Notes:\n- The settings page lists taxonomies that are available in REST for the selected post type.\n- The plugin works on admin post screens for both Gutenberg and Classic Editor.\n- If an existing post type is missing on the settings page, it likely has <code>show_in_rest<\/code> set to <code>false<\/code>.\n- If a taxonomy is missing for a post type, it likely has <code>show_in_rest<\/code> set to <code>false<\/code>.<\/p>\n\n<h3>Hooks<\/h3>\n\n<p>The plugin provides the following hooks for customization:<\/p>\n\n<h4>PHP Filters<\/h4>\n\n<ul>\n<li><code>ttcounter_term_count_taxonomies<\/code> \u2014 Filter taxonomies list for term counts. Args: <code>$taxonomies<\/code>, <code>$post_type<\/code>, <code>$request<\/code>.<\/li>\n<li><code>ttcounter_term_count_get_terms_args<\/code> \u2014 Filter <code>get_terms()<\/code> args. Args: <code>$args<\/code>, <code>$taxonomy<\/code>, <code>$post_type<\/code>.<\/li>\n<li><code>ttcounter_term_count_value<\/code> \u2014 Filter count value per term. Args: <code>$count<\/code>, <code>$term<\/code>, <code>$taxonomy<\/code>, <code>$post_type<\/code>.<\/li>\n<li><code>ttcounter_term_counts_response<\/code> \u2014 Filter REST response. Args: <code>$results<\/code>, <code>$post_type<\/code>, <code>$taxonomies<\/code>.<\/li>\n<li><code>ttcounter_sanitized_settings<\/code> \u2014 Filter sanitized settings before save. Args: <code>$sanitized_taxs<\/code>, <code>$request<\/code>.<\/li>\n<li><code>ttcounter_classic_hierarchical_label<\/code> \u2014 Filter classic editor hierarchical label text. Args: <code>$label<\/code>, <code>$term<\/code>, <code>$taxonomy<\/code>, <code>$post_type<\/code>, <code>$count<\/code>.<\/li>\n<li><code>ttcounter_classic_hierarchical_item_html<\/code> \u2014 Filter classic editor hierarchical item HTML. Args: <code>$item_output<\/code>, <code>$term<\/code>, <code>$taxonomy<\/code>, <code>$post_type<\/code>, <code>$count<\/code>.<\/li>\n<li><code>ttcounter_classic_flat_term_label<\/code> \u2014 Filter classic editor flat term label key. Args: <code>$label<\/code>, <code>$term<\/code>, <code>$taxonomy<\/code>, <code>$post_type<\/code>, <code>$count<\/code>.<\/li>\n<\/ul>\n\n<h4>PHP Actions<\/h4>\n\n<ul>\n<li><code>ttcounter_settings_updated<\/code> \u2014 Fires after settings are saved. Args: <code>$sanitized_taxs<\/code>, <code>$request<\/code>.<\/li>\n<\/ul>\n\n<h4>JS Filters<\/h4>\n\n<ul>\n<li><code>ttcounter.termCountTaxonomies<\/code> \u2014 Filter taxonomy list before REST request. Args: <code>taxonomies<\/code>, <code>postType<\/code>.<\/li>\n<li><code>ttcounter.termCountData<\/code> \u2014 Filter REST response data before rendering. Args: <code>data<\/code>, <code>postType<\/code>.<\/li>\n<li><code>ttcounter.restrictedPostTypes<\/code> \u2014 Filter restricted post types list in settings. Args: <code>restrictedPostTypes<\/code>.<\/li>\n<li><code>ttcounter.restrictedTaxonomies<\/code> \u2014 Filter restricted taxonomies list in settings. Args: <code>restrictedTaxonomies<\/code>.<\/li>\n<li><code>ttcounter.termCountLabel<\/code> \u2014 Filter sidebar label text. Args: <code>value<\/code>, <code>{ name, count, label }<\/code>.<\/li>\n<li><code>window.TTCounterClassicFilterLabel<\/code> \u2014 Filter classic editor flat checklist label text. Args: <code>{ taxonomy, name, count, label }<\/code>.<\/li>\n<\/ul>\n\n<h4>JS Actions<\/h4>\n\n<ul>\n<li><code>ttcounter.sidebarUpdated<\/code> \u2014 Fires after sidebar counts update. Args: <code>termsByTax<\/code>.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to your <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the plugin through the \u201cPlugins\u201d menu in WordPress.<\/li>\n<li>Go to \u201cTaxonomy Counter\u201d to configure which taxonomies show counts.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20work%20with%20custom%20taxonomies%3F\"><h3>Does it work with custom taxonomies?<\/h3><\/dt>\n<dd><p>Yes, any taxonomy that is exposed to REST and enabled in settings.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20custom%20post%20types%3F\"><h3>Does it work with custom post types?<\/h3><\/dt>\n<dd><p>Yes. Enable per taxonomy in the settings page.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20the%20classic%20editor%3F\"><h3>Does it work with the Classic Editor?<\/h3><\/dt>\n<dd><p>Yes. The plugin works with both Gutenberg and Classic Editor.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>Added Classic Editor support for both hierarchical and non-hierarchical taxonomies.<\/li>\n<li>Added Classic Editor hooks for hierarchical and flat taxonomies.<\/li>\n<li>Added Gutenberg support for non-hierarchical taxonomies.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Show taxonomy term counts in the editor sidebar and manage which taxonomies display counts.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/282224","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=282224"}],"author":[{"embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/secretlab48"}],"wp:attachment":[{"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=282224"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=282224"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=282224"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=282224"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=282224"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=282224"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}