サポート » テーマ » カテゴリの自動追加&自動設定

  • 投稿記事を年別に分けていて、年別にカテゴリにしています。
    新しく投稿したら、その投稿日の年だけをカテゴリを自動追加し、自動設定できるようにしたいです。
    可能でしょうか?

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • こんにちは、自動追加は出来ますが、自動設定は javascriptかなんかで考えてみてください

    functions.php に以下のフィルターを追加してみてください

    
    add_filter( 'default_content', 'my_default_content',10,2 );
     
    function my_default_content( $content,$post ) {
    
    	if( $post->post_type == 'post' ) {
    				
    		$y = absint( date('Y') );
    		
    		$my_cat = array('cat_name' => date('Y'), 
    						'category_description' => "{$y}年の投稿", 
    						'category_nicename' => $y, 
    						'category_parent' => '');
    		wp_insert_category( $my_cat );
    	}
     
        return $content;
    }
    

    追記:カテゴリーを事前に作れば、おんなじなので、年に一回なら、意味なさそうですね… 忘れてください

    • この返信は4年、 4ヶ月前にnobitaが編集しました。
    • この返信は4年、 4ヶ月前にnobitaが編集しました。
    • この返信は4年、 4ヶ月前にnobitaが編集しました。

    書き直します

    
    add_filter( 'default_content', 'my_default_content', 10, 2 );
    
    function my_default_content( $content, $post ) {
    
    	if ( $post->post_type == 'post' ) {
    
    		$y = absint( date( 'Y' ) );
    
    		$my_cat = array( 'cat_name'	 => date( 'Y' ),
    			'category_description'	 => "{$y}年の投稿",
    			'category_nicename'		 => $y,
    			'category_parent'		 => '' );
    		wp_insert_category( $my_cat, $wp_error );
    		$cat_id	 = get_cat_ID( $y );
    		
    		wp_set_post_categories( $post->ID, array( $cat_id ), true );
    	}
    
    	return $content;
    }
    
    • この返信は4年、 4ヶ月前にnobitaが編集しました。
    • この返信は4年、 4ヶ月前にnobitaが編集しました。
    • この返信は4年、 4ヶ月前にnobitaが編集しました。
    • この返信は4年、 4ヶ月前にnobitaが編集しました。

    訂正

    
    wp_insert_category( $my_cat, $wp_error );
    

    
    wp_insert_category( $my_cat );
    

    2016とかのカテゴリーは、年に1回なので、自分で作成しておけば、削除して大丈夫だと思います

    
    		$my_cat = array( 'cat_name'	 => date( 'Y' ),
    			'category_description'	 => "{$y}年の投稿",
    			'category_nicename'		 => $y,
    			'category_parent'		 => '' );
    		wp_insert_category( $my_cat );
    
    • この返信は4年、 4ヶ月前にnobitaが編集しました。
    スレッド開始 taka224

    (@taka224)

    皆さん、ありがとうございます。
    やってみます!

    スレッド開始 taka224

    (@taka224)

    この方法だと、新規投稿で公開日を2010とかにしても自動的に2016が追加されます!

    簡単な変更で済むことなので、工夫してみてください。

    簡単な変更で済むことなので、工夫してみてください。

    と簡単にできそうに書きましたが、考えてみると、出来ません。

    そういう使い方なら、このコードはあきらめて別の方法を探してください

    794うぐいす平安京的な歴史上の事柄を扱う年表のようなものでなく、投稿の日付なら下記リンクではないでしょうか。
    アーカイブインデックスページの作り方

    wp_get_archiveは試し済みだったんですね、すいません。
    とりあえず、こちらのスレでいいので、いまスレ主さんがしていることとやりたいことををまとめてみるといいと思います。
    いろいろ対処療法的にスレッドが立って、原点がぼやけてるような気がします。

    個人的な心象いえば、
    各カテゴリー、少なくともニュースというカテゴリーの記事を年別にが大前提で

    • 1ページですべての記事を年代見出しと年代属記事一覧、年代見出しと年代属記事一覧のループで見せたいのか
    • 1ページに一つの年代とその記事一覧を見せたいのか

    どちらなんだろうと思います。

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • トピック「カテゴリの自動追加&自動設定」には新たに返信することはできません。