ヘッダーバナーを毎日変更して、画像のリスト/フォルダから(たとえばランダムに)選択します。
これまでのところ、投稿ごとまたはページビューごとにランダムなバナーを選択するプラグインしか見つかりませんでした。どちらも私が望むものではありません。あなたはプラグイン、または他の方法を知っていますか?
編集:例Wordpressのインストールにフォルダを追加しています。このフォルダにはヘッダ画像がいくつか含まれています。 24時間ごとに、このフォルダからランダムな画像が選択され、別のランダムな画像が選択されるまで24時間のヘッダー画像になります。
実際には、画像がどのように選択されているのかはあまり気にしません。フォルダ内のすべての画像を順番に回転させても大丈夫です。私が気にするのは、選んだ画像が24時間そこに残っているということだけです。
基本的に、毎日新しいヘッダー画像を手動で選択しているのと同じです。
<div id="header">
<?php
mt_srand((int)date('z'));
$headers=glob(PATH_TO_FILES .'/*.jpg');
$header=mt_Rand(0,count($headers)-1 );
?>
<img id="header-image" `src="<?php echo URL_TO_FILES . '/'.basename($headers[$header]); ?>" alt="header" />
</div>
現在のヘッダをこれで置き換えてください。あなたが助けを必要とするならば、私はもちろんあなたがこれをさらに実行するのを助けます。 (または説明したコードが必要な場合)
コーディングできない場合は、申し訳ありません。
コーディングできたら、これらのプラグインが使用しているフックを調べて、それに応じて新しいプラグインを作成します。
Croncoの答えと多くの実験(私はPHPもWordpress自体の内部動作にも精通していません)といくつかのクリーンアップに基づいて、私は私のニーズを完全に満たす解決策を見つけました。
テーマTwentyTenを使用して、私はそのheader.phpをこのように編集しました:
<?php
// Check if this is a post or page, if it has a thumbnail, and if it's a big one
if ( is_singular() &&
has_post_thumbnail( $post->ID ) &&
( /* $src, $width, $height */ $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'post-thumbnail' ) ) &&
$image[1] >= HEADER_IMAGE_WIDTH ) :
// Houston, we have a new header image!
echo get_the_post_thumbnail( $post->ID, 'post-thumbnail' );
else : ?>
<!-- patch mafu begin -->
<?php
$headers = glob( get_template_directory() . '/banners/*.jpg' );
$header = (int)date('z') % count($headers);
?>
<img src="<?php echo get_template_directory_uri() . '/banners/' . basename($headers[$header]); ?>" width="<?php echo HEADER_IMAGE_WIDTH; ?>" height="<?php echo HEADER_IMAGE_HEIGHT; ?>" alt="" />
<!-- patch mafu end -->
<?php endif; ?>
表示されているページに特定の画像が設定されていない場合(これはこのテーマに固有のものです)、theme_directory/banners
フォルダ内のすべてのjpg画像から当日に基づいてヘッダ画像が選択されます。
私は画像の順序をもっとランダムにしようとしましたが、どうやらこれは簡単な方法では不可能であるので、私は固定の順序で行きました。
あなたは この Javascriptの例を見てみることができます、それをあなたのテーマに実装するのはとても簡単です。