
內容簡介
在你的主題中顯示圖像
有一些過濾器可以在你的主題中使用,來顯示此外掛創建的圖像關聯。請閱讀以下詳細信息。
顯示代表術語檔案庫的單個圖像
以下過濾器將顯示與URL查詢字符串中要求的術語關聯的圖像。此過濾器僅在自然使用模板的視圖中工作,如category.php、tag.php、taxonomy.php和它們的衍生物。請閱讀有關這些模板的模板層次結構以獲取更多信息。這個過濾器的最簡單用法如下所示:
print apply_filters( 'taxonomy-images-queried-term-image', '' );
這段代碼將生成並打印一個圖像標籤。它的輸出可以通過將可選的第三個參數傳遞給apply_filters()來修改。此參數是一個數組,以下鍵可以設置:
after(字符串)--要附加到圖像HTML的文本。
attr(數組)--表示img標籤的屬性的key/value對。可用的選項包括:alt、class、src和title。此數組將不加修改作為第四個參數傳遞給WordPress核心函數wp_get_attachment_image()。
before(字符串)--要向圖像HTML前面添加的文本。
image_size(字符串)--可以是在WordPress註冊的任何圖像大小。如果沒有指定圖像大小,將使用“thumbnail”作為默認值。如果指定了未註冊的大小,此過濾器將返回一個空字符串。
這是一個完全自定義版本的此過濾器的示例:
print apply_filters( 'taxonomy-images-queried-term-image', '', array(
'attr' => array(
'alt' => '自訂替代文字',
'class' => 'my-class-list bunnies turtles',
'src' => '這是圖像存放的地方.png',
'title' => '自訂標題',
),
'before' => '<div id="my-custom-div">',
'after' => '</div>',
'image_size' => 'medium'
) );
相似的功能
如果你只需要獲取圖像的數據庫ID,可以使用:
$image_id = apply_filters( 'taxonomy-images-queried-term-image-id', 0 );
如果你需要獲取圖像的完整對象,可以使用:
$image = apply_filters( 'taxonomy-images-queried-term-image-object', '' );
如果你需要獲取圖像的URL,可以使用以下方法:
$image_url = apply_filters( 'taxonomy-images-queried-term-image-url', '' );
你可以在可選的第三個參數中指定圖像的大小:
$image_url = apply_filters( 'taxonomy-images-queried-term-image-url', '', array(
'image_size' => 'medium'
) );
如果你需要獲取圖像數據,可以使用:
$image_data = apply_filters( 'taxonomy-images-queried-term-image-data', '' );
你可以在可選的第三個參數中指定圖像的大小:
$image_data = apply_filters( 'taxonomy-images-queried-term-image-data', '', array(
'image_size' => 'medium'
) );
列出與文章對象關聯的術語圖像
當你想要在文章內顯示所有與其關聯的術語圖像時,可以使用以下內容:
print apply_filters( 'taxonomy-images-list-the-terms', $post->ID, array( 'size' => 'thumbnail', 'orderby' => 'name', 'order' => 'ASC', 'style' => 'display:inline-block;', 'separator' => ', ', 'before' => '', 'after' => '' ) );
外掛標籤
開發者團隊
原文外掛簡介
Displaying Your Images in Your Theme
There are a few filters that you can use in your theme to display the image associations created by this plugin. Please read below for detailed information.
Display a single image representing the term archive
The following filter will display the image associated with the term asked for in the query string of the URL. This filter only works in views that naturally use templates like category.php, tag.php, taxonomy.php and all of their derivatives. Please read about template hierarchy for more information about these templates. The simplest use of this filter looks like:
print apply_filters( 'taxonomy-images-queried-term-image', '' );
This code will generate and print an image tag. It’s output can be modifed by passing an optional third parameter to apply_filters(). This parameter is an array and the following keys may be set:
after (string) – Text to append to the image’s HTML.
attr (array) – Key / value pairs representing the attributes of the img tag. Available options include: alt, class, src and title. This array will be passed as the fourth parameter to WordPress core function wp_get_attachment_image() without modification.
before (string) – Text to prepend to the image’s HTML.
image_size (string) – May be any image size registered with WordPress. If no image size is specified, ‘thumbnail’ will be used as a default value. In the event that an unregistered size is specified, this filter will return an empty string.
Here’s an example of what a fully customized version of this filter might look like:
print apply_filters( 'taxonomy-images-queried-term-image', '', array(
'attr' => array(
'alt' => 'Custom alternative text',
'class' => 'my-class-list bunnies turtles',
'src' => 'this-is-where-the-image-lives.png',
'title' => 'Custom Title',
),
'before' => '
'after' => '
',
'image_size' => 'medium'
) );
Similar functionality
If you just need to get the database ID for the image, you may want to use:
$image_id = apply_filters( 'taxonomy-images-queried-term-image-id', 0 );
If you need to get the full object of the image, you may want to use:
$image = apply_filters( 'taxonomy-images-queried-term-image-object', '' );
If you need to get the URL to the image, you may want to use the following:
$image_url = apply_filters( 'taxonomy-images-queried-term-image-url', '' );
You can specify the size of the image in an option third parameter:
$image_url = apply_filters( 'taxonomy-images-queried-term-image-url', '', array(
'image_size' => 'medium'
) );
If you need data about the image, you may want to use:
$image_data = apply_filters( 'taxonomy-images-queried-term-image-data', '' );
You can specify the size of the image in an option third parameter:
$image_data = apply_filters( 'taxonomy-images-queried-term-image-data', '', array(
'image_size' => 'medium'
) );
List term images associated with a post object
When a post is being displayed you may want to display the images associated with all of the terms associated with the post. The taxonomy-images-list-the-terms filter does this. Here’s what it looks like in its simplest form:
print apply_filters( 'taxonomy-images-list-the-terms', '' );
This filter accepts an optional third parameter that you can use to customize its output. It is an array which recognizes the following keys:
after (string) – Text to append to the output. Default value is a closing unordered list tag.
after_image (string) – Text to append to each image. Default value is a closing list-item tag.
before (string) – Text to prepend to the output. Default value is an open unordered list tag with an class attribute of “taxonomy-images-the-terms”.
before_image (string) – Text to prepend to each image. Default value is an open list-item tag.
image_size (string) – Any registered image size. Values will vary from installation to installation. Image sizes defined in core include: “thumbnail”, “medium” and “large”. “full” may also be used to get the unmodified image that was uploaded. Defaults to “thumbnail”.
post_id (int) – The post to retrieve terms from. Defaults to the ID property of the global $post object.
taxonomy (string) – Name of a registered taxonomy to return terms from. Defaults to category.
Here’s an example of what a fully customized version of this filter might look like:
print apply_filters( 'taxonomy-images-list-the-terms', '', array(
'before' => '
'after' => '
',
'before_image' => '',
'after_image' => '',
'image_size' => 'detail',
'post_id' => 1234,
'taxonomy' => 'post_tag',
) );
Working with all terms of a given taxonomy
You will want to use the taxonomy-images-get-terms filter. This filter is basically a wrapper for WordPress core function get_terms(). It will return an array of enhanced term objects: each term object will have a custom property named image_id which is an integer representing the database ID of the image associated with the term. This filter can be used to create custom lists of terms. Here’s what it’s default useage looks like:
$terms = apply_filters( 'taxonomy-images-get-terms', '' );
Here is what php’s print_r() function may return:
Array
(
[0] => stdClass Object
(
[term_id] => 8
[name] => Pirate
[slug] => pirate
[term_group] => 0
[term_taxonomy_id] => 8
[taxonomy] => category
[description] => Pirates live in the ocean and ride around on boats.
[parent] => 0
[count] => 1
[image_id] => 44
)
)
As you can see, all of the goodness of get_terms() is there with an added bonus: the image_id parameter!
This filter recognizes an optional third parameter which is an array of arguments that can be used to modify its output:
cache_images (bool) If this value is true all associated images will be queried and cached for later use in various template tags. If it is set to false, this query will be suppressed. Do not set this value to false unless you have a really good reason for doing so 🙂 Default value is true.
having_images (bool) If this value is true then only terms that have associated images will be returned. Setting it to false will return all terms. Default value is true.
taxonomy (string) Name of a registered taxonomy to return terms from. Multiple taxonomies may be specified by separating each name by a comma. Defaults to category.
term_args (array) Arguments to pass to get_terms() as the second parameter. Default value is an empty array.
Here’s an example of a simple custom loop that you can use to display all term images:
$terms = apply_filters( 'taxonomy-images-get-terms', '' );
if ( ! empty( $terms ) ) {
print '
- ';
- ' . wp_get_attachment_image( $term->image_id, 'detail' ) . '
foreach ( (array) $terms as $term ) {
print '
';
}
print '
';
}
Support
If you have questions about integrating this plugin into your site, please add a new thread to the WordPress Support Forum. I try to answer these, but I may not always be able to. In the event that I cannot there may be someone else who can help.
Bugs, Suggestions
Development of this plugin is hosted in a public repository on Github. If you find a bug in this plugin or have a suggestion to make it better, please create a new issue
Hook it up yo!
If you have fallen in love with this plugin and would not be able to sleep without helping out in some way, please see the following list of ways that you can hook it up!:
Rate it! – Use the star tool on the right-hand sidebar of the plugin homepage.
Let me know if it works – Use the Compatibility widget on the plugin homepage to let everyone know that the current version works with your version of WordPress.
Do you Twitter? Help promote by using this shortlink: http://bit.ly/taxonomy-images
Are you a writer? Help promote by writing an article on your website about this plugin.
Need More Taxonomy Plugins?
The original author of this plugin, Michael Fields, released a handful of plugins dealing with taxonomies. Please see his WordPress.org profile for more information.
