こんにちは
3のコードに、少し追加
<?php
function my_random_images($count=1, $size='thumbnail'){
$args = array(
'showposts' => $count,
'post_type' => 'attachment',
'post_mime_type' => 'image',
'orderby' => 'rand',
);
$images = get_posts($args);
echo '<div class="my-images">';
foreach($images as $key=>$image){
?>
<p><a href="<?php echo get_permalink($images[$key]->post_parent); ?>" rev="attachment"><?php echo get_the_title($images[$key]->post_parent); ?></a><br />
<?php
echo wp_get_attachment_image($image->ID, $size);
}
echo '</p></div>';
}
で、どうですか?
nobitaさん、ありがとうございます。
ご教示いただいたコードで試してみたのですが、
http://xxxxxxx.com/ を取得中にウェブサイトでエラーが発生しました。 ウェブサイトがメンテナンスのために停止しているか、正しく設定されていない可能性があります。
という、4と同じサーバーエラーになってしまいました。。。
あれ、
ちょっと、メモ用にきれいに書いたやつは、こちらです。
http://tenman.info/labo/snip/?p=2463
私の環境では、動くんですけど、ペーストしたコードの最後に、?>
入っていないとかではないですか?
自分のテーマで、画像のページのところで、投稿へのリンクを付けている所があるんですが、考え方は同じなので、うまくいかないようだったら、勘違いしているといけないので、そっちも見てください。
http://www.tenman.info/wp3/previewraindrops/2008/06/10/post-format-test-gallery/dsc20040724_152504_532/
ご指摘の通りでした、お恥ずかしい。
で、やってみたのですが、ダメみたいです・・・
ウィジェットは空白のままでした。
ただ、試しにやってみた他のサイトではできました。
ということはこのサイトで使用しているテーマファイルに何か問題があるということなんでしょうか?
WallPressというテーマなんですが・・・
http://www.designwall.com/wordpress-theme/wallpress/
で、やってみたのですが、ダメみたいです・・・
ウィジェットは空白のままでした。
「ウィジェットが空白のまま、」という事ですが、サイドバーに表示するために、どのような手順を踏んだか、具体的に教えていただけますか?
WallPressというテーマは、現在公式テーマのレビューを受けていますが、まだ合格していないようです。
最新版1.0.8をレビュー審査の申請に出していますが、直近のレビュー結果は、以下のリンクにあります。
http://themes.trac.wordpress.org/ticket/9407
ウィジェットにphpのコードを使用できるようにするために「Executable PHP widget」というプラグインを入れています。
ウィジェット管理の画面で「PHP Code」といウィジェットをサイドバーに追加して、本文に
<?php my_random_images(3); ?>
と入力しました。
どうでしょうか?
Executable PHP widget は、使った事がないので、なんともいえません。
開発者は、WordPressのコアのメンバーだと思いますが、以下のようなフォーラムでの質問も見受けられます。
http://wordpress.org/support/topic/dont-work-ver21?replies=2
sidebar.php等のテンプレートに直接コードを書いてみてはいかがでしょうか
動作確認はしていませんが、
<div id="sidebar" class="widget-area" >
<div class="sidebar-inner">
<!--このあたりに記述して見てください
CSS的なことは、幅がアレなので、ご自身で調整してください-->
<?php if ( ! dynamic_sidebar( 'sidebar-main' ) ) : ?>
functions.phpにコードを書いたところで、やはりまたサーバーエラーになってしまいました。
うーん・・・ functions.phpはいじらないほうがいいんでしょうか・・・
すみません、できました!
ただ、表示が、例えば幅200pxのサイドバーに<?php my_random_images(4); ?>と書くと横に50pxずつ4枚並んでしまうのですが、100pxを2枚ずつ、縦2列などに変更できますか?
http://tenman.info/labo/snip/?p=2463
にコードを追加しておきましたので、サイドバー用の関数を使ってみてください。
いろいろ調整したいところもあると思いますが、二つの関数を見比べると、どのように変更すればいいか見当がつくと思いますので後はご自身で、研究してみてくださいね :)
nobitaさん、何度もご丁寧にありがとうございます!
教えていただいたコードを元に、自分の思い通りの表示ができるように試行錯誤してみます!
お付き合いいただき、本当にありがとうございました!