Skip to main content
2 of 4
added 3521 characters in body
Disha
  • 21
  • 2

Unable to differentiate between two categories under custom post type on single.php

I have created A custom post type as mentioned in my older question

When I try to use get_the_category() function to retrieve the category of the post(if it is symphony or noir). It returns "Array". How can I keep the posts under the two categories separate which do not interfere in the pagination of one category.My custom post type with a taxonomy 14kgoldsilver

The section where I select the category for each post

/*Custom post type 14K Gold and Silver*/

function my_custom_post_14kgs() { $labels = array( 'name' => _x( '14k Gold & Silver', 'post type general name' ), 'singular_name' => _x( '14k Gold & Silver', 'post type singular name' ), 'add_new' => _x( 'Add New', 'book' ), 'add_new_item' => __( 'Add New Item' ), 'edit_item' => __( 'Modify Item' ), 'new_item' => __( 'New Item' ), 'all_items' => __( 'All Items' ), 'view_item' => __( 'View Item' ), 'search_items' => __( 'Search Items' ), 'not_found' => __( 'No Products found' ), 'not_found_in_trash' => __( 'No products found in trash' ), 'parent_item_colon' => '', 'menu_name' => '14k Gold & Silver' ); $args = array( 'labels' => $labels, 'description' => '', 'public' => true, 'menu_position' => 5, 'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments' ), 'has_archive' => true, 'hierarchical' => true, 'rewrite' => array('slug' => '14k-gold-silver/%14kgscollection%','with_front' => false), 'query_var' => true, //'rewrite' => true, //'publicly_queryable' => false, ); register_post_type( '14kgs', $args ); } add_action( 'init', 'my_custom_post_14kgs' );

function my_taxonomies_product_14kgs() { $labels = array( 'name' => _x( '14kgscollection', 'taxonomy general name' ), 'singular_name' => _x( '14kgscollection', 'taxonomy singular name' ), 'search_items' => __( 'Search Product Categories' ), 'all_items' => __( 'All Product Categories' ), 'parent_item' => __( 'Parent Product Category' ), 'parent_item_colon' => __( 'Parent Product Category:' ), 'edit_item' => __( 'Edit Product Category' ), 'update_item' => __( 'Update Product Category' ), 'add_new_item' => __( 'Add New Product Category' ), 'new_item_name' => __( 'New Product Category' ), 'menu_name' => __( '14kgscollection' ), ); $args = array( 'labels' => $labels, 'hierarchical' => true, 'public' => true, 'query_var' => '14kgscollection',

              'rewrite'     =>  array('slug' => '14k-gold-silver' ),
              '_builtin'        => false,
   );
   register_taxonomy( '14kgscollection', '14kgs', $args );

} add_action( 'init', 'my_taxonomies_product_14kgs', 0 );

/Filter permalink structure/ add_filter('post_link', 'collection14kgs_permalink', 1, 3); add_filter('post_type_link', 'collection14kgs_permalink', 1, 3);

function collection14kgs_permalink($permalink, $post_id, $leavename) { if (strpos($permalink, '%14kgscollection%') === FALSE) return $permalink; // Get post $post = get_post($post_id); if (!$post) return $permalink;

        // Get taxonomy terms
        $terms = wp_get_object_terms($post->ID, '14kgscollection');
        if (!is_wp_error($terms) && !empty($terms) && is_object($terms[0]))
            $taxonomy_slug = $terms[0]->slug;
        else $taxonomy_slug = 'no-collection';

    return str_replace('%14kgscollection%', $taxonomy_slug, $permalink);
}
Disha
  • 21
  • 2