フォーラムへの返信

15件の返信を表示中 - 1 - 15件目 (全15件中)
  • トピック投稿者 takachamp

    (@takachamp)

    ご回答ありがとうございます!!

    mura0403さん、あ、これです!
    前に見た気がしていたのですが、正にこれでした。
    ありがとうございます!助かりました。

    gatespaceさんも、いつも本当にありがとうございます。
    投稿や記事、いつも拝見させていただいて勉強させていただいております。

    師匠がたくさんいるって幸せです。
    私も早く誰かに教えられるようにもっと勉強しますー!

    重ねてお礼申し上げます。

    トピック投稿者 takachamp

    (@takachamp)

    nobita様

    試していただいて、ありがとございます!
    やはり、投稿タイプにカテゴリを設定する方法で対処しようと思います。

    私も、困っている方がいらっしゃったらnobitaさんのように、
    親身に助けてあげれるようになりたいと思います。
    今後とも、どうぞよろしくお願いいたします。

    本当にお付き合いいただいてありがとうございました!

    トピック投稿者 takachamp

    (@takachamp)

    nobitaさん

    おはようございます。
    締め後にも拘わらずありがとうございます!

    カテゴリのメタボックスを外して、上記のようにすれば、takachampさんの意図と一致しますか?

    試した結論から申し上げますと「見つかりません」となりました。

    間違っていましたら、すみません。
    「カテゴリのメタボックスを外す」がわからず、試したのは、一般投稿postの編集で、カテゴリー(album)のチェックを外して、example.com/?cat=albumにアクセスしました。

    また、function.phpの設定は、

    function my_post_type_query( $query ) {
    	if ( is_admin() || !$query->is_main_query() ) {
    
    		return;
    	}
    	if ( is_category('album') ) { //カテゴリーalbumに、
    
    		$query->set( 'post_type', array( 'post', 'photos' ) );
            //一般タイプpostと、投稿タイプphotosを表示
    
    		return;
    	}
    }
    
    add_action( 'pre_get_posts', 'my_post_type_query', 1 );

    として試しましたが、「見つかりません」となりました。
    いままでカテゴリーalbumにチェックが入っていた投稿のチェックを外しましたので、当然かと思うのですが、URL example.com/?cat=album が間違っているのでしょうか?

    トピック投稿者 takachamp

    (@takachamp)

    お付き合いいただきまして、大変感謝しております。
    また、お返事が遅れましたこと、重ねてお詫び申し上げます。

    解決事案とさせていただきます。
    ありがとうございました。

    トピック投稿者 takachamp

    (@takachamp)

    nobitaさん!!
    いつも、ありがとうございます!!
    私のヘタな説明をくみ取っていただいて、本当にありがとうございます!

    ある特定のカテゴリを表示する場合に、特定の投稿タイプを同時に表示する場合は、カテゴリが設定されていないと難しいのではないかと思います。

    やはり、そうなんですね。
    たいへんよく理解できました。

    さらに、教えていただきました、

    javascript 等でチェックを入れる。
    自動的にカテゴリを設定する方法を考える

    こちらのいずれかの方法で対処しようと思います。

    トピック投稿者 takachamp

    (@takachamp)

    nobitaさん

    お忙しい処、本当に早速ありがとうございます。

    ということは、カテゴリーページ(example.com/category/album)に、

    一般投稿postのカテゴリーalbumと、投稿タイプ(photos)

    を表示したい場合、投稿タイプ(photos)に対して、一般投稿postと同じカテゴリー(album)を設定して、選択しないと表示されないということですよね。

    しかし、それですと投稿タイプ(photos)を新規作成する度にカテゴリalbumのチェックしないといけませんよね?

    私の3つ目の投稿、

    やはり、投稿タイプ(photos)に、タクソノミーを設定するか、
    ビルトイン分類を設定して一般投稿(post)のカテゴリ(album)を選択するしか、
    方法が無いのでしょうか?

    や、9つ目の投稿

    結局は、投稿タイプにタクソノミー、タームを設定しなければ、
    一般投稿(post)と投稿タイプを混在して表示できないということなんでしょうか。

    というところから、抜け出せてない気がします。

    nobitaさんの御真意と相違していましたら本当に申し訳ございません。

    もう一度要件をまとめますと、

    タクソノミー(カテゴリ)の設定していない投稿タイプ(photos)と、
    一般投稿postの特定のカテゴリ(album)を混在して表示したい。

    です。

    どうぞよろしくお願いいたします。

    トピック投稿者 takachamp

    (@takachamp)

    少し前後しますが、まっさらなWordpressの状態で、テーマtwentytwelveに
    nobita様に教えていただきましたコード

    function my_post_type_query( $query ) {
     if ( is_admin()|| ! $query->is_main_query() )
     return;
    
     if ( is_archive() ) {
     $query->set( 'post_type', array( 'post', 'photos') );
     return;
     }
    
    }

    をfunction.phpに書いたところ、nobita様おっしゃるとおり、月別アーカイブ(example.com/?m=201411)を開くと、通常のpostに加えて、投稿タイプ(photos)もしっかり表示されました。
    しかし、カテゴリー(example.com/?cat=2)の表示をすると、投稿タイプ(photos)は表示されません。

    if ( is_archive() ) {
    の部分を、is_category()や、is_category(‘2’)にしても表示されません。

    一方、if ( is_home() )にて、ホームを見ますと設定通り、投稿タイプ(photos)も表示されます。

    どうやら、カテゴリーページの時だけうまく設定できていないようなのですが、他に考えられる原因はございますでしょうか?
    お手数ではございますが、どうぞよろしくお願いいたします。

    *念のためパーマリンクの更新は都度行っています。

    トピック投稿者 takachamp

    (@takachamp)

    nobita様
    ご連絡が大変滞って申し訳ございません。

    固定ページで表示させようとしていましたが、私には難しそうなので、
    category-album.phpを作り、http://example.com/category/albumにアクセスしたとき、
    投稿(post)のカテゴリー(album)と、投稿タイプ(photos)を表示することにしました。

    まず、nobita様から教えていただきましたコードをfunction.phpに貼り付けました。

    function my_post_type_query( $query ) {
     if ( is_admin()|| ! $query->is_main_query() )
     return;
    
     if ( is_category() ) {
     $query->set( 'post_type', array( 'post', 'photos') );
     return;
     }
    
    }
    add_action( 'pre_get_posts', 'my_post_type_query', 1 );

    そして、category-album.phpに

    <?php get_header(); ?>
    <?php if(have_posts()):while(have_posts()): the_post(); ?>
    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
    <?php
    endwhile;
    endif;
    ?>
    <?php get_footer(); ?>

    と書きました。

    http://example.com/category/album
    にアクセスすると、投稿(post)のカテゴリー(album)は表示されるのですが、投稿タイプ(photos)は表示されませんでした。

    こちらの記事
    https://ja.forums.wordpress.org/topic/24420?replies=14
    も参考にしてみましたが、やはり表示されませんでした。

    どこか、間違っていますか?

    トピック投稿者 takachamp

    (@takachamp)

    nobitaさま。

    引き続きありがとうございます!
    本当にお忙しいところ、お時間さいていただき、本当に感謝しております。

    ご教授いただきましたコード、試させていただきます!
    後ほどご報告させていただきます。

    トピック投稿者 takachamp

    (@takachamp)

    >チョットと遠回りしさせてしまったみたいで、ごめんなさい。

    いえいえ、とんでもございません。
    ご回答ありがとうございます。

    結局は、投稿タイプにタクソノミー、タームを設定しなければ、
    一般投稿(post)と投稿タイプを混在して表示できないということなんでしょうか。

    こちらのトピックは、もう少しオープンにさせていただきたいと思います。

    nobitaさんありがとうございます。

    トピック投稿者 takachamp

    (@takachamp)

    お世話になっております。

    ちなみ、投稿タイプ(photos)にタクソノミー「album_cat」、タームを「n_album」を設定して、下記のようにしたところ、一般投稿(post)の100件も投稿タイプ(photos)の300件も両方表示されます。

    <?php
    $args = array(
    	'posts_per_page' => 100,
        'paged' => $paged,
        'post_type' => array('post','album_new'),
    	'tax_query' => array(
    						array(
    						'taxonomy' => 'category',
    						'field' => 'slug',
    						'terms' => 'album',
    						),
    						array(
    						'taxonomy' => 'album_cat',
    						'field' => 'slug',
    						'terms' => 'n_album',
    						),
    						'relation' => 'OR'
    			)
    		);
    ?>
    <?php query_posts( $args ); ?>
    トピック投稿者 takachamp

    (@takachamp)

    nobita様

    ありがとうございます。
    試させていただきました。

    ページで作成していますので、nobitaさんから教えていただきました、コードの一部を下記のように変更して試させていただきました。

    function my_post_type_query( $query ) {
     if ( is_admin()|| ! $query->is_main_query() )
     return;
    
     if ( is_page(42) ) { //is_archiveからis_pageに変更しました。
     $query->set( 'post_type', array( 'post', 'photos') );
     return;
     }
    
    }
    add_action( 'pre_get_posts', 'my_post_type_query', 1 );

    ページ内のコードは、下記のように書いています。

    <?php
    $args = array(
        'posts_per_page' => 100,
        'paged' => $paged,
        'post_type' => array('post','photos'),
        'tax_query' => array(
                    array(
                    'taxonomy' => 'category',
                    'field' => 'slug',
                    'terms' => 'album',
    		)
    	)
    );
    query_posts( $args );
    ?>
    <?php if(have_posts() ): while(have_posts() ): the_post(); ?>
    ~サムネイル画像表示~
    <?php endwhile; endif; ?>
    <?php wp_reset_query(); ?>

    でも、表示されるのは、依然、一般投稿(post)のカテゴリー(album)の100件のみで、タクソノミーを設定していない、投稿タイプ(photos)300件が表示されません。

    どこか記述が違うとは思いますが、
    引き続きよろしくお願いいたします。

    トピック投稿者 takachamp

    (@takachamp)

    早速ありがとうございます!
    試させていただいた後、ご報告いたします。

    トピック投稿者 takachamp

    (@takachamp)

    以下のように変更しました。

    <?php
    $args = array(
        'posts_per_page' => 100,
        'paged' => $paged,
        'post_type' => array('post','photos'),
        'tax_query' => array(
                    array(
                    'taxonomy' => 'category',
                    'field' => 'slug',
                    'terms' => 'album',
    				)
    			)
    		);
    ?>

    どうしても、タクソノミーを設定していない、投稿タイプ(photos)が
    表示されません。

    やはり、投稿タイプ(photos)に、タクソノミーを設定するか、
    ビルトイン分類を設定して一般投稿(post)のカテゴリ(album)を選択するしか、
    方法が無いのでしょうか?

    初心者のため、日々このことばかり、頭を駆け巡っています・・・。
    どなたかご教授いただけますとうれしいです。

    どうぞよろしくお願いいたします。

    トピック投稿者 takachamp

    (@takachamp)

    お世話になっております!
    もう少し詳しく書かせていただきます。

    一般投稿(post)のカテゴリー(album)に100件、
    taxonomyを設定していない投稿タイプ(photos)に300件ほどあります。

    一般投稿のカテゴリー(album)にあるものを、投稿タイプに振り替えれば(またその逆の作業)をすればよいのですが、SEOの観点とリダイレクトの設定をしなければならないので、可能であれば、そのまま使用したいと考えています。

    このような場合、表示は可能でしょうか?

    <?php
    $args = array(
    'post_type' => array ('post','photos'),
    'category_name' => 'album',
    );
    query_posts( $args );
    ?>

    基本的なところかとも、思うのですが何卒よろしくお願いいたします。

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