[WordPress] 外掛分享: Post Avatar

首頁外掛目錄 › Post Avatar
WordPress 外掛 Post Avatar 的封面圖片
100+
安裝啟用
★★★★★
5/5 分(1 則評價)
2762 天前
最後更新
問題解決
WordPress 3.9+ PHP 5.6.3+ v1.6.0 上架:2007-05-24

內容簡介

允許作者在文章編輯畫面中從預定義的圖片列表中選擇圖片。這張圖片將與文章一起顯示。

Post Avatar 的概念類似於 LiveJournal userpic,作者可以選擇網站所有者上傳的圖像。由 Dominik Menke 開發。

特點

在文章編輯畫面中輕鬆選擇圖片。
掃描圖片選項文件夾子目錄中的圖片。
允許使用以下檔案類型:.jpg、.jpeg、.gif 和 .png。
靈活地自訂頭像顯示。

使用默認的 HTML/CSS 標記顯示頭像。
可以在“設置”畫面中編輯 HTML/CSS 標記。
使用主題中的模板標記和自定義過濾器進行進階自訂。

白俄羅斯語、捷克語、荷蘭語、法語、德語、印地語、愛爾蘭語、意大利語、波蘭語、羅馬尼亞語、塞爾維亞語克羅埃西亞語、西班牙語的國際語言支援
不顯示缺少的圖片。
可以進一步擴展以顯示頁面和自定義文章類型的圖片。

提交錯誤和論壇支援

WordPress 論壇

Post Avatar 主頁

請投票和評論

非常感謝您的投票和反饋。

進階自訂
前端顯示

預設情況下,外掛使用以下過濾器: the_content() 和 the_excerpt()。

使用過濾鉤 OVERRIDE HTML DISPLAY: gklpa_the_postavatar

gklpa_the_postavatar 鉤子接受兩個參數:

$post_avatar_text - 原始 HTML 顯示。

$post_avatar - 帖子頭像數據,以數組格式提供。其密鑰為:

avatar_url:圖像的 URL
show_image_dim:如果為 1,則顯示圖像尺寸;如果為 0,則隱藏圖像尺寸
image_height:圖像高度的整數值或如果關閉圖像尺寸,則為 null
image_width:圖像寬度的整數值或如果關閉圖像尺寸,則為 null
post_id:當前帖子 ID
post_title:圖像屬性的帖子標題
image_name:圖像文件名

示例:如果未選擇頭像,則顯示預設圖像

此示例使用由站點管理員定義的 HTML/CSS 設置。

add_filter( 'gklpa_the_postavatar', 'prefix_show_default_image', 10, 2 );
function prefix_show_default_image( $post_avatar_html, $post_avatar_array ){
global $post, $gklpa_plugin_settings;

// 顯示預設圖像;
if( is_null( $post_avatar_array ) ){
if( !empty( $gklpa_plugin_settings['css_class'] ) {
$css = 'class="' . $gkl_plugin_settings['css_class']. '"';
}
$post_avatar_html = $gklpa_plugin_settings['html_before' ] . '<img '. $css . ' src="http://wplatest.dev/images/default-image.jpg" alt="' . esc_attr(strip_tags($post->post_title) ) . '" />'. $gklpa_plugin_settings['html_after'];
}
return $post_avatar_html;
}

使用自定義內容鉤覆蓋 HTML 顯示

如果您想要完全更改 HTML 或覆蓋它,則可以使用自定義內容鉤。

外掛標籤

開發者團隊

⬇ 下載最新版 (v1.6.0) 或搜尋安裝

① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「Post Avatar」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

Allow authors to select an image from a pre-defined list while in the Post Editor screen. This image will be displayed together with a post.
Post Avatar is similar in concept to Livejournal userpics wherein authors choose images uploaded by the site owner. Developed with Dominik Menke.
Features

Easy selection of images from within the Post Editor screen.
Scans images in sub-directories of the image option folder.
Allows the following file types: .jpg, .jpeg, .gif and .png.
Flexible with customizing avatar display.

Display avatars using the default HTML/CSS tags.
HTML/CSS tags can be edited from with the Settings screen.
Use template tags and custom filters within themes for advanced customization.

International language support for Belorussian, Czech, Dutch, French, German, Hindi, Irish, Italian, Polish, Romanian, Serbo-Croatian, Spanish
Does not display missing images.
Can be further extended to show images for pages and custom post types

Bug Submission and Forum Support
WordPress Forum
Post Avatar home page
Please Vote and Review
Your votes and feedback are greatly appreciated. Thanks.
Advanced Customization
For Front End Display
By default, the plugin hooks into the following filters: the_content() and the_excerpt().
OVERRIDE HTML DISPLAY USING FILTER HOOK: gklpa_the_postavatar
The gklpa_the_postavatar filter takes two parameters:

$post_avatar_text – Original HTML display

$post_avatar – Post Avatar data in array format. The keys are:
avatar_url: The URL to the image
show_image_dim: 1 indicates to show image dimensions, 0 to hide them
image_height: integer value of image height or null if image dimensions is turned off
image_width: integer value of image width or null if image dimensions is turned off
post_id: ID of current post
post_title: Post title for the image attribute
image_name: Image file name

Example: Display a default image if no avatar is selected
This example makes use of the HTML/CSS settings defined by the site admin.
add_filter( 'gklpa_the_postavatar', 'prefix_show_default_image', 10, 2 );
function prefix_show_default_image( $post_avatar_html, $post_avatar_array ){
global $post, $gklpa_plugin_settings;

// Display default image;
if( is_null( $post_avatar_array ) ){
if( !empty( $gklpa_plugin_settings['css_class'] ) {
$css = 'class="' . $gkl_plugin_settings['css_class']. '"';
}
$post_avatar_html = $gklpa_plugin_settings['html_before' ] . '' . esc_attr(strip_tags($post->post_title) ) . ''. $gklpa_plugin_settings['html_after'];
}
return $post_avatar_html;
}

OVERRIDE HTML DISPLAY WITH CUSTOM CONTENT HOOK
If you want to change the HTML completely or override the option to display avatars automatically, use the remove_filter() like so:
remove_filter(‘the_content’, ‘gkl_postavatar_filter’, 99 );
remove_filter(‘the_excerpt’, ‘gkl_postavatar_filter’, 99 );
You can then define your own the_content filter function that makes use of the gkl_postavatar() or gkl_get_postavatar() functions
You will need to use the function gkl_get_postavatar() which takes the post object and returns the array of post avatar information.

$post_avatar_array – Post Avatar data in array format. The keys are:
avatar_url: The URL to the image

show_image_dim: 1 indicates to show image dimensions, 0 to hide them

image_height: integer value of image height or null if image dimensions is turned off

image_width: integer value of image width or null if image dimensions is turned off

post_id: ID of current post

post_title: Post title for the image attribute

image_name: Image file name

Example:
add_filter( 'the_content', 'my_custom_post_avatar' );
function my_custom_post_avatar( $content ){
global $post;

$current_avatar = gkl_get_postavatar( $post );
$html_before = '';
$html_after = '
';
// Display default image
if( is_null( $current_avatar ) ) {
$image_url = 'http://wplatest.dev/images/default-image.jpg';
$alt_text = esc_attr(strip_tags($post->post_title) );
} else {
$image_url = $current_avatar['avatar_url'];
$alt_text = $current_avatar['post_title'];
}
$post_avatar_html = $html_before . '' . $alt_text . ''. $html_after;

return $post_avatar_html;
}

OVERRIDE HTML DISPLAY WITH template tag gkl_postavatar
If you want the post avatar to appear outside of the content, e.g. with the entry’s meta information, make use of the gkl_postavatar() template tag.
It takes four paramters:
class: CSS class to use in the `` tag.
before: HTML to appear before the image.
after: HTML to appear after the image.
do_what: Use `echo` to display the post avatar, `return` to pass it to a variable. Defaults to `echo`.

Example: In a template file:

Or you can make your own template tag function like in the example for “Override HTML display with custom content hook”, except you call the function directly in your template instead of hooking into the_content().
For Administration Screens
Add Post Avatar to Pages and Custom Post Types
Use the filter hook gklpa_allowed_post_types to add further post types that you want the Post Avatar selection to appear on.
It takes an array of post type slugs as a parameter.
add_filter( 'gklpa_allowed_post_types', 'prefix_my_custom_post_types' );
function prefix_my_custom_post_types( $current_post_types ){
$current_post_types = array( 'post', 'page', 'review', 'event' );
return $current_post_types;
}

Enable Image Selection for Folder Outside of WordPress Installation
By default, Post Avatar looks for your images folder in relation to your WordPress installation. If you want to move your folder elsewhere, use these pair of filter hooks: gklpa_image_url and gklpa_image_dir. They take a single parameter: Image folder url and absolute path to the image folder, respectively.
add_filter( 'gklpa_image_url', 'prefix_change_folder_url' );
function prefix_change_folder_url( $current_url ){
return esc_url( 'http://mysite.com/images/' );
}

add_filter( 'gklpa_image_dir', 'prefix_change_folder_dir' );
function prefix_change_folder_dir ){
return '/user/public_html/images/';
}

Please visit the Post Avatar Page for details on customizing the avatar display.
Translations
Post Avatar is translation-ready and supports a number of languages. If you can’t find your language here, please consider contributing a language pack.
If you’re interested, please check out the “Codestyling Localization” plugin and for validating the “Poedit Editor”.
Send in your translations to [email protected]
Thanks to the following for their language packs.

Belorussian (ru_RU) Fat Cower
Czech (cz_CZ) Lelkoun
Dutch (nl_NL) Jay August
French (fr_FR) Mathieu Haratyk
German (de_DE) Dominik Menke
Hindi (hi_IN_Hindi) Outshine Solutions
Irish (ga_IR) Ray S.
Italian (it_IT) Gianni Diurno
Polish (pl_PL) Meloniq
Romanian (ro_RO) Webhosting Geeks
Serbo-Croatian (sr_RS) Webhosting Hub
Spanish (es_ES) gogollack

延伸相關外掛

文章
Filter
Apply Filters
Mastodon