WordPress.org

Ready to get started?Download WordPress

Forums

Custom Post Type UI
archive-custom_type.php doesn't work (8 posts)

  1. salgua
    Member
    Posted 5 months ago #

    Hi

    I'm relative new to WP. I'm using Custom Post Type UI to manage my custom post types. I created a CPT "product" and I checked the "Built-in Taxonomies -> categories". I created some products and relative categories. I also set the option "Has Archive" to true. Following this documentation page in my theme folder I created a archive-product.php page with a single main loop like this:

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
      ....

    but wordpress load always the archive page instead of this.
    Any idea?

    https://wordpress.org/plugins/custom-post-type-ui/

  2. Michael Beckwith
    Member
    Plugin Author

    Posted 5 months ago #

    The only things I can think of are issues with the post type slugs not matching between what's registered and the file name, or visiting the wrong url archives.

    I can't confirm any of that at the moment though because of no link to visit.

  3. salgua
    Member
    Posted 5 months ago #

    Thank you for your fast answer. I didn't insert any link because I'm working on a local site. As you suggested I think that the problem is that I'm visiting the wrong url. In fact I want to filter my product custom post by category, but clicking on a category link the url is http://mysite/category/mycategory that's the standard post category url. I don't have any category.php file and wordpress use the archive.php as fallback. My question is: how can I use standard categories to filter custom posts? I tried also using WP_Query in a category.php page, in this way:

    $args = array(
    		'post_type' => 'product'
    	);
    
    	$the_query = new WP_Query( $args );

    and
    <?php if ( have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
    but the returned loop is always empty.

  4. Michael Beckwith
    Member
    Plugin Author

    Posted 5 months ago #

    you'd need to use $the_query->have_posts() in the if statement, for that part.

    If you explain more about the filtering needs, I can potentially offer a solution.

  5. salgua
    Member
    Posted 5 months ago #

    I have a simple sidebar with the list of products categories, when I click on the category link I want to view only the products of this category, in the same way that it works for default posts. If I use $the_query->the_post() in the if statement it fetch all product posts without filter the current category

  6. salgua
    Member
    Posted 5 months ago #

    Hi Michael, I found
    this
    What do you think? Maybe is better to use custom taxonomies?

  7. Michael Beckwith
    Member
    Plugin Author

    Posted 5 months ago #

    The thread that you linked to is related to listings in the admin area, not the frontend, in case you were trying to copy/paste it directly.

    Are you familiar with $_GET parameters? An idea to couple with your new WP_Query would be to use the sidebar to set the category slug or so and add it to the url:

    http://www.domain.com/?mycat=meow
    http://www.domain.com/?mycat=arf

    You could then grab that value and put it into the query arguments right before the query is made.

    you'll need to be careful with what you use in place of mycat because these can accidentally alter the original query for the whole page.

    Hopefully that gives you an idea of how to proceed.

  8. Craig Pettit
    Member
    Posted 3 months ago #

    You should use the template hierarchy

    the template file will be called
    taxonomy-posttype.php

    or in my case
    taxonomy-portfolio.php

Reply

You must log in to post.

About this Plugin

About this Topic