Taxonomy Index

Plugin Description

Displays index of Categories/Tags or other taxonomy types using taxonomy-index Shortcode.

Description

Displays index of Categories/Tags or other taxonomy types using taxonomy-index Shortcode.

Example use: [taxonomy-index taxonomy='category' slug='ice-cream']

Alternative [ti] shortcode can also be used

Taxonomy can be set to category or tag or other taxonomy post type.

This plugin is multisite compatible; default styling can optionally be configured per-site via the admin dashboard.

Installation

  • Download the latest release of the plugin from GitHub.
  • Upload the entire zip file using the Plugins upload function in your ClassicPress admin panel.
  • Activate the plugin.
  • Configure relevant settings via the configuration page in the admin control panel (azurecurve menu).

Frequently Asked Questions

Can I translate this plugin?

Yes, the .pot file is in the plugin’s assets/languages folder; if you do translate this plugin, please send the .po and .mo files to [email protected] for inclusion in the next version (full credit will be given).

Is this plugin compatible with both WordPress and ClassicPress?

This plugin is developed for ClassicPress, but will likely work on WordPress.

Changelog

  • Rebuilt to match the current azurecurve plugin architecture (namespaced code, settings/menu split across includes files, tabbed azrcrv-ui-tabs admin UI matching Page Index/Shortcodes in Comments).
  • Registered the [ti] shortcode alias – the readme and in-admin help text have documented this since 1.0.0, but it was never actually registered.
  • Added real settings (Defaults tab: color, background, width, height, line-height, margin, padding, text-align, font-weight), mirroring Page Index. The pre-2.0.0 settings page fetched an option that was never read from or written to; it had no working settings at all.
  • Fixed a fatal error (PHP 8+) for an unmatched taxonomy/slug combination – get_term_by()’s result is now checked before use.
  • Fixed taxonomy=”tag” always failing to find its term: the ‘tag’ -> ‘post_tag’ remap now happens before the get_term_by() lookup, not after.
  • Fixed the post listing incorrectly using the ‘category’ query var (which only ever filters the built-in category taxonomy) for every taxonomy; now uses a tax_query against the actual requested taxonomy, so it works correctly for tags and custom taxonomies too.
  • Skipped the sub-term listing query entirely for non-hierarchical taxonomies (e.g. tags), where it could only ever return an empty result.
  • Fixed unescaped output (term/category links and names, post permalinks and titles).
  • Fixed an inefficient plugin_action_links hook so it no longer runs for every plugin on the Plugins list page.
  • Replaced the hard-coded, two-plugin “other plugins” list with a standard, auto-generated Other Plugins tab.
  • Replaced the plugin’s shared azurecurve cross-plugin menu population logic (previously re-run unconditionally on every admin_init, always writing to the database) with the activation/upgrade-hook based logic shared with the rest of the azurecurve plugin family, which only writes when something actually changed.
  • Corrected the readme’s stale claim that per-site settings needed to be configured, when none previously existed.
  • Text domain changed from taxonomy-index to azrcrv-ti, and the languages folder moved from /languages to /assets/languages, matching every other azurecurve plugin. Existing translations will need to be rebuilt against the new domain/path.
  • Requires PHP raised from 7.4 to 8.2, matching the rest of the azurecurve plugin family.
  • The [taxonomy-index]/[TAXONOMY-INDEX] shortcode names and their taxonomy/slug attributes are unchanged, so existing content keeps working with no migration step.
  • Security fix: the Defaults tab’s color/background/width/height/line-height/margin/padding/text-align/font-weight settings were only escaped for safe HTML-attribute placement, not validated as CSS – a value such as “#007fff; border: 3px solid red” passed straight through and injected an extra CSS declaration. Every value is now validated against the specific shape that CSS property can legitimately take (see includes/functions-css-sanitize.php); anything that doesn’t match is discarded outright, on save AND again defensively at output, so a value already stored before this fix self-heals without needing to be re-saved.
  • Added a new Border default, e.g. 3px solid red – validated as exactly width style color, each part checked independently.
  • Added an Instructions tab to the settings screen – covers basic use, the [ti] alias, hierarchical vs non-hierarchical taxonomy behaviour, and styling. The static description text previously shown above the tabs was moved into this tab rather than being duplicated.
  • Update readme.md and remove readme.txt (not required for ClassicPress).
  • Update azurecurve menu.
  • Update plugin header for compatibility with ClasssicPress v2.
  • Update plugin header and readme for compatibility with ClassicPress Directory v2.
  • Update Update Manager to version 2.5.0.
  • Update readme file for compatibility with ClassicPress Directory.
  • Update readme files.
  • Update language template.
  • Fix bug with azurecurve menu.
  • Update azurecurve menu.
  • Update readme files.
  • Update azurecurve menu and logo.
  • Fix plugin action link to use admin_url() function.
  • Add plugin icon and banner.
  • Update azurecurve plugin menu.
  • Amend to only load css when shortcode on page.
  • Fix bug with plugin menu.
  • Update plugin menu css.
  • Upgrade azurecurve plugin to store available plugins in options.
  • Update Update Manager class to v2.0.0.
  • Update action link.
  • Update azurecurve menu icon with compressed image.
  • Fix bug with incorrect language load text domain.
  • Add integration with Update Manager for automatic updates.
  • Fix issue with display of azurecurve menu.
  • Change settings page heading.
  • Add load_plugin_textdomain to handle translations.
  • Update azurecurve menu for easier maintenance.
  • Move require of azurecurve menu below security check.
  • Initial release for ClassicPress forked from azurecurve Taxonomy Index WordPress Plugin.

Other Notes

About azurecurve

azurecurve was one of the first plugin developers to start developing for ClassicPress; all plugins are available from azurecurve Development and are integrated with the Update Manager plugin for fully integrated, no hassle, updates.

The plugins available from azurecurve are: