私のウェブサイト上のすべてのコメントは匿名で登録なしです。コメントを投稿するには、フィールド名(必須ではありません)とコメントのテキスト(必須である)を入力する必要があります。
アバターに問題があります。それらはすべて同じように生成されます。
それらを違うものにするにはどうすればいいですか。
デフォルトのアバターをカスタマイズする方法は2つあります。
get_avatar()
の出力を変更してください。最初の選択肢から始めましょう。これは少し速くなります。
フィルタ'avatar_defaults'
があります。ここにもっとアバターを追加することができます。
キーがURLで値が表示名のデフォルトイメージの配列を取得します。
add_filter( 'avatar_defaults', 'wpse_58373_kitten_avatar' );
/**
* Add a new default avatar.
*
* @param array $avatar_defaults Key = URL, Value = Visible name.
* @return array
*/
function wpse_58373_kitten_avatar( $avatar_defaults )
{
$avatar_defaults['http://placekitten.com/32/32'] = 'Kitty';
return $avatar_defaults;
}
get_avatar()
の出力を変更してください。get_avatar()
は最初に'avatar_default'
という名前のオプションを検索します。 'pre_option_avatar_default'
にフックしてカスタム(ランダム)URLを返すことができます。
add_filter( 'pre_option_avatar_default', 'wpse_58373_custom_default_avatar');
/**
* Return a random image URL
*/
function wpse_58373_custom_default_avatar()
{
/* We use images from WP here, you should change this and put some default
* images into your theme or plugin directory.
*/
$base_url = admin_url( 'images' ) . '/';
$images = array ( 'wp-logo-vs.png', 'wpspin_dark.gif', 'yes.png' );
$Rand = Rand( 0, ( count( $images ) - 1 ) );
return $base_url . $images[ $Rand ];
}
ご覧のとおり、テーマのアバターサイズと一致するサイズの画像を返す必要があります。 :)
ランダムなアバター生成に関しては、これは非常に有益な答えであり、1つのマイナーな変更で御馳走を働かせた - 問題の機能は通過するために議論を必要とした。引数がないと、返されるコードには、画像の目的のURLと、gravitarのデフォルトアイコンのURLの両方を含むhtmlの寄せ集めが含まれていました。私はこれからそれを変更しました:
wpse_58373_custom_default_avatar
()
これに:
wpse_58373_custom_default_avatar($value)
そしてそれはごちゃごちゃせずに画像のURLを生成するようだ。使いやすさのために、管理フォルダーではなくテーマをターゲットにするためのget_template_directory_uri()を追加した最後のコードと、変数を隠したいくつかのコードがあります。
// Random Avatar
add_filter( 'pre_option_avatar_default', 'mind_bullets_default_avatar' );
function mind_bullets_default_avatar ( $value ) {
$tix_array = array ( 'Amer_Cyborg.jpg', 'Die_hard_3.jpg', 'Thing.jpg' );
// Include randomizer in url generator
return get_template_directory_uri().'/images/Avatars/'.$tix_array [Rand( 0, ( count( $tix_array ) - 1 ) )];
}
ユーザーがすぐに自分のものを選択できるようにしたいですが、ただコメントしたい人のために、それはサイトの外観を一貫した状態に保ちます。