About this plugin
This plugin is meant for developers, it allows to attach a thumbnail to taxonomy terms.
UI for setting the thumbnails
The thumbnail can be added on term creation or later on the term edition page.
The terms list has a column displaying the current thumbnail (so far, no specific action here).
5), not the old thickbox.
I made some extra efforts to enhance accessibility. I’m not an a11y expert but the UI is not only a “Add thumbnail” button. speak() is used when available.
Please give me feedback if you think it can be improved.
Works with or without JavaScript.
If JavaScript is enabled, thumbnails are set via ajax in the term edition window, no need to update the term.
By default, the UI is displayed for all public taxonomies, but this can be filtered that way:
add_filter( 'sftth_taxonomies', 'my_taxonomies_with_thumbnail' );
function my_taxonomies_with_thumbnail( $taxonomies ) { unset( $taxonomies['post_tag'] ); $taxonomies['my_custom_tax'] = 'my_custom_tax'; return $taxonomies; }
Template tags
php.
4+, these functions use term_id. 4, they use term_taxonomy_id.
I tried to mimic the post thumbnail functions:
- get_term_thumbnail_id( $term_id ): Retrieve term thumbnail ID.
- has_term_thumbnail( $term_id ): Check if a term has a thumbnail attached to it.
- the_term_thumbnail( $term_id, $size = 'post-thumbnail', $attr = '' ): Display the term thumbnail.
- get_term_thumbnail( $term_id, $size = 'post-thumbnail', $attr = '' ): Retrieve the term thumbnail.
- set_term_thumbnail( $term_id, $thumbnail_id ): Set a term thumbnail.
- delete_term_thumbnail( $term_id ): Detach a thumbnail from a term.
Store the data
4, the term metas API is used.
4, there are two ways to store the thumbnail IDs:
- Use term metas with the plugin Meta for Taxonomies.
- Use an option (an array association of term_taxonomy_id => thumbnail_id integers). The option name can be customized by defining the constant SFTTH_OPTION_NAME in wp-config.php.
Get terms
Use get_terms() with a specific parameter to retrieve only terms with a thumbnail:
$terms = get_terms( array( 'with_thumbnail' => true, ) );
4, you can also use a small helper to build your meta query:
$terms = get_terms( array( 'meta_query' => array( 'relation' => 'AND', array( // Any meta query. ), sftth_meta_query(), ), ) );
4, if you use the plugin Meta for Taxonomies, you should always cache thumbnails.
When using 'with_thumbnail' => false you will retrieve all terms, even those without a thumbnail, but the thumbnails will be cached, saving calls to the database later:
$terms = get_terms( array( 'with_thumbnail' => false, ) );
Uninstall
php:
define( 'SFTTH_KEEP_DATA', true );
Translations
- US English
- French
Requirements
2+ so far.
Credits
0 ).