フォーラムへの返信

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • 失礼しました!
    $attachment_tag[0]->slugで解決しました。

    gblsmさん本当にありがとうございました!

    失礼しました!
    パラメーターが一つ抜けていました。

    $attachment_tag = get_the_terms( $attachment->ID, ‘attachment_tag’);

     
     
    ただvar_dumpで調べた所
    $attachment_tag  は[slug]を含めた要素たちをしっかり取得できているのですが
    $attachment_tag->slug  はNULLと表示されてしまいます。
    コードの書き方がいけないのでしょうか…。

    初歩的なことばかりのようで申し訳ありません…。
     
     
    ■2行目が機能しないためvar_dumpで調べました

    $attachment_tag = get_the_terms( $attachment->ID, 'attachment_tag' );
    $term_link = get_term_link( $attachment_tag->slug, 'attachment_tag' );
    	if ( is_wp_error( $term_link ) ) { return; }
    	echo '<a href="' . esc_url( $term_link ) . '">' . $attachment_tag->name . '</a>';

    gblsmさんお返事ありがとうございます!

    僕のやり方が悪いのかエラーになってしまいます。
    「Warning: Missing argument 2 for get_the_terms() 」

    下記のコードのように、簡略化したループでもエラーだったので
    なにか$argsに要素を入れるべきなのでしょうか…。

    <?php
    	$args = array(
    		'post_type' => 'attachment', 'numberposts' => -1, 'post_status' => null,
    		'tax_query' => array( array( 'taxonomy' => 'attachment_category',
    					     'field' => 'term_id', 'terms' => 7 ))
    	);
    
    	$attachments = get_posts( $args );
    	if ( $attachments ) { // 該当する投稿があったら
    		foreach ( $attachments as $attachment ) :
    			$attachment_tag = get_the_terms( $attachment->ID );
    			var_dump($attachment_tag);
    		endforeach; // 投稿のループ終わり
    	}
    	wp_reset_postdata();
    ?>
    フォーラム: 使い方全般
    返信が含まれるトピック: メディア画像の表示をforループで表現したい

    返信遅くなりましてすみません。
    jim912さんのアドバイスのおかげで解決しました!!

    本当にありがとうございました!
     

    保存用に書き換えたコード残しておきます。

    $where = array( 'orderby' => 'post_date', 'post_type' => 'attachment', 'order' => 'desc',
    			 'numberposts' => 1, 'tax_query' => array( array( 'taxonomy' => 'attachment_category',
    			 'field' => 'term_id', 'terms' => $taxs[$i]->term_id )) );
            $newest_atms = get_posts($where);

    フォーラム: 使い方全般
    返信が含まれるトピック: WordPressの新着情報を違うサイトに出したい

    wordpressの基本文字コードはUTF-8ですし
    HTMLファイルの文字コードをShift_JISからUTF-8に変えてみては。

    あてずっぽですみません…。

    mypacecreaterさんのアドバイスのおかげで解決しました!
    本当にありがとうございます。
     

    前述の

    1.「メディア」に直接追加された写真とサムネイルをthe_post_thumbnail()で表示?
    課題A…the_post_thumbnail()が機能しない。(↓資料ア)
    課題B…原本写真へリンクするためのURL取得コードがわからない

    ではthe_post_thumbnail()を使っていましたが
    それでは「投稿」にある添付写真しか表示できませんでした。
    「メディア」にある全ての画像を表示するには仰るとおり
    wp_get_attachment_image関数を使い、第1引数に$attachment->IDを
    持ってくることですべての画像を表示することができました。

    原本写真へのリンクについても
    $img = wp_get_attachment_image_src( $attachment->ID, ” );で表現できました。

    以下、完成コードです。
     

    <div id="conteiner">
    	<ul id="photo-box">
    	<?php
    		$args = array(
    			'post_type' => 'attachment',
    			'numberposts' => -1,
    			'post_status' => null,
    		);
    
    		$attachments = get_posts( $args );
    		if ( $attachments ) { // 該当する投稿があったら
    			foreach ( $attachments as $attachment ) :
    			$img = wp_get_attachment_image_src( $attachment->ID, '' );
    				echo '<a href="' . $img[0] . '"><li class="photo-list">';
    				echo wp_get_attachment_image( $attachment->ID, 'thumbnail' );;
    				echo '</li></a>';
    			endforeach; // 投稿のループ終わり
    		}
    		wp_reset_postdata();
    	?>
    	</ul>
    </div><!--#conteiner-->

    mypacecreatorさんご返信ありがとうございます!!

    ※資料アに関して
    ①「この1行が話をややこしくしている気がします。一旦消してください。」
     →消しましたがサムネイルは表示されませんでした。
     

    ②ご質問に対して
    ・完全自作のテーマです。 完成イメージはこのサイトです。
     各カテゴリーを固定ページに分類し、カスタムテンプレート(もしくはpage.php)で
     サムネイル一覧表示をしたいです。

    ・資料アは現状、カスタム固定ページテンプレートに書いています。

    ・「サムネイル画像の取得・一覧表示」をしたいのは
     固定ページ(テンプレート)とトップページのindex.phpです。
     ただしindex.phpにはカテゴリー別+更新順の「サムネイル画像の取得・一覧表示」を
     トップページ1枚にまとめて実装したいと考えています…。
     各サムネイル画像が、カテゴリーの更新順に自動配置されるイメージです。
     

    ※wp_get_attachment_image_src関数について
    目から鱗でした。ありがとうございます!
    貴重なヒントをもとにもう少し自分でやってみようと思います!

    あっさり解決しました!笑
    やっぱり基礎をちゃんと勉強しないといけませんね…
    ありがとうございます!

8件の返信を表示中 - 1 - 8件目 (全8件中)