0

This following code is custom post type:

add_action( 'init', 'wpt_technology_posttype' );
function wpt_technology_posttype() {

  register_post_type( 'technology',
    array(
      'labels' => array(
        'name' => __( 'Technology Providers List' ),
        'singular_name' => __( 'Technology' ),
        'add_new' => __( 'Add Techonology Provider' ),
        'add_new_item' => __( 'Add New Technology' ),
        'edit_item' => __( 'Edit Technology' ),
        'new_item' => __( 'Add New Technology' ),
        'view_item' => __( 'View Technology' ),
        'search_items' => __( 'Search Technology' ),

        'not_found' => __( 'No News found' ),
        'not_found_in_trash' => __( 'No Technology found in trash' )
      ),
      'public' => true,
      'has_archive' =>'true',
      'hierarchical'        => true,
      'supports' => array( 'title','thumbnail','editor', 'comments' ),
      'capability_type' => 'post',
      'rewrite' => array("slug" => "techno_type"), // Permalinks format
      'menu_position' => 22,
     )
  );

  register_taxonomy('techno_type', 'technology', 
  array('hierarchical' => true, 'label' => 'Add New Technology', 'query_var' => true, 'rewrite' => true));
}

I created the page name archive-technology.php. I wrote script but page not found. How to display post in archive page.I also used following code in the functions.php:

function custom_post_archive( $query ){
    if ( is_post_type_archive('technology') ) {
         include 'archive-technology.php';
    }
}
add_action('pre_get_posts','custom_post_archive');
  • Please format your code properly. Also, did you flush the permalinks? – fuxia Dec 19 '16 at 5:06
  • When I used this code. I was change permalinks, But could not find the solution. Where is my coding problem? can you give any solution ? – wplover Dec 20 '16 at 7:47
  • Have you tried "archive_template" ? codex.wordpress.org/Plugin_API/Filter_Reference/… – Nur Hasan Dec 20 '16 at 9:53
4

I don't think you need to use the hook pre_get_posts on this. Remove that part from functions.php. Then just put the archive-technology.php in themes root directory. Then go to you Permalinks settings page and hit Save Changes button. WordPress will need to regenerate the .htaccess file to use new archive template.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.