0

これは私が取り組んでいるウェブサイトです:http://canal.es/wordpress/

私が抱えている問題は、「Pasteleria dulce」(category.phpファイル)に移動すると、カテゴリのアクティブなタイトルが付いた左側のサイドバーが表示され、中央に投稿が表示され、下に表示されることです。同じカテゴリの投稿のリストを画像化します。

カテゴリに入ると自動的に開く投稿タイトルを強調表示するための解決策が見つかりません。これは、category.phpファイルで使用しているコードです。

    <!--  Highlight menu from current category -->
    <?php
        if (is_category()) {
            $this_category = get_category($cat);
            }
        if($this_category->category_parent)
            $this_category = wp_list_categories('orderby=id&title_li=&child_of='.$this_category->category_parent."&echo=0"); else
            $this_category = wp_list_categories('orderby=id&title_li=&child_of='.$this_category->cat_ID."&echo=0");
        if ($this_category) { ?>
        <ul class="sub-menu">
            <?php echo $this_category; ?>
        </ul>
    <?php } ?>



    <div class="producto_column">           
       <?php /* Start the Loop */ ?>
        <?php while ( have_posts() ) : the_post(); ?>

            <div class="producto_image">
                <img src="<?php the_field('imagen_producto'); ?>" alt=""/>
            </div>

                <div class="share_item">
                    <a class="minimal" id="premium">
                        <img src="<?php bloginfo('template_directory') ?>/images/share.png" alt="share">
                    </a>
                    <a class="maillink" href="http://canal.local/?page_id=220">
                        <img src="<?php bloginfo('template_directory') ?>/images/email.png" alt="email">
                    </a>
                </div>

            <?php get_template_part( 'content', get_post_format() ); ?>

        <?php endwhile; ?>

    <!--  Post list from current category -->
    <ul id="submenu_productos" class="clearfix">
        <?php
            $IDOutsideLoop = $post->ID;
            while( have_posts() ) {
                the_post();
                foreach( ( get_the_category() ) as $category )
                    $my_query = new WP_Query('category_name=' . $category->category_nicename . '&orderby=title&order=asc&showposts=100');
                if( $my_query ) {
                    while ( $my_query->have_posts() ) {
                        $my_query->the_post(); ?>
                <li<?php print ( is_single() && $IDOutsideLoop == $post->ID ) ? ' class="test"' : ''; ?>>
                    <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a> |
                </li>
        <?php
                }
            }
        }
        ?>
    </ul>

カテゴリページを開いたときに表示される現在の投稿タイトルをアクティブにするにはどうすればよいですか?

4

1 に答える 1

0

このソリューションを使用してみてください:

<ul>

    <?php
        $lastposts = get_posts('numberposts=5&orderby=rand&cat=-52');
        foreach($lastposts as $post) :
        setup_postdata($post); ?>

        <li<?php if ( $post->ID == $wp_query->post->ID ) { echo ' class="current"'; } else {} ?>>

            <a href="<?php the_permalink() ?>"><?php the_title(); ?></a>

        </li>

    <?php endforeach; ?>

</ul>
于 2012-10-18T07:40:12.233 に答える