single-product.php无法打开

时间:2016-03-22 06:34:01

标签: php wordpress custom-taxonomy singlepage

我创建了一组页面。在第一页product.php中显示所有自定义类别(标题和图像)。如果用户点击它,那么它将移动到taxonomy-product_categories页面,其中显示特定类别的产品。现在我希望如果用户点击产品,那么它将转到single-product.php页面。

代码在这里

<?php
get_header();
$slug = get_queried_object()->slug; // get clicked category slug
$name = get_queried_object()->name; // get clicked category name
$tax_post_args = array(
    'post_type' => 'products', // your post type
    'posts_per_page' => 999,
    'orderby' => 'id',
    'order' => 'ASC',
    'tax_query' => array(
        array(
            'taxonomy' => 'product_categories', // your taxonomy
            'field' => 'slug',
            'terms' => $slug
        )
    )
);
?>
<div id="main-wrap">
    <div class="container">
        <?php
        $counter = 1;
        $tax_post_qry = new WP_Query($tax_post_args);
        if ($tax_post_qry->have_posts()) {
            while ($tax_post_qry->have_posts()) {
                $tax_post_qry->the_post();
                $the_url = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), $type);
                //var_dump($the_url);


                if ($counter % 4 == 0) {
                    echo '<div class="row product-gallery">';
                }
                ?>
                <div class="col-sm-3">
                    <div class="product-warp">
                        <div class="product">
                            <a href="#"><img src="<?php echo $the_url[0] ?>" title="" alt=""></a>
                        </div>
                        <div class="product-name">
                            <h5>
                                <a href="">
                                    <?php echo get_the_title();
                                    ; ?>
                                </a>
                            </h5>
                        </div>
                    </div>
                </div>
                <?php
                if ($counter % 4 == 0) {
                    echo '</div>';
                }
                ?>

                <?php
            }
        }
        ?>
    </div>
</div>
<?php get_footer(); ?>

这是用户点击的地方,然后应该转到single-product.php

<a href="#"><img src="<?php echo $the_url[0] ?>" title="" 

有人一步一步指导我

2 个答案:

答案 0 :(得分:1)

请尝试

'post_type' => 'products'

您的帖子类型是“产品”。 而wordpress ruls是“single-{post_type}.php”。 您制作“single-products.php”并删除“single-product.php

https://codex.wordpress.org/Post_Type_Templates

答案 1 :(得分:1)

如果您的post_type => products那么您的文件名必须与此single-products.php

相同

阅读此article

并采取预防措施(如果页面尚未打开。表示出现404错误)转到

  
      
  1. 管理面板
  2.   
  3. 设置
  4.   
  5. 固定链接
  6.   

首先将永久链接保存为普通版并刷新您的网站主页。

然后将永久链接保存为post_name并再次刷新主页

希望这会对你有所帮助。