euureka
フォーラムへの返信
3件の返信を表示中 - 1 - 3件目 (全3件中)
-
フォーラム: 使い方全般
返信が含まれるトピック: 「先頭に固定表示」の記事をトップページ以外で表示させない皆様
返事が遅くなりすみません。
>gatespaceさん
たったしかに。。。
なんというミスをおかしていたのでしょうか。gatespaceさんの指摘通りにしたところ、先頭に固定表示で繰り返し表示がない機能を実現できました。本当にありがとうございます。>nobita
そのような方法もあったのですね!やはり選択肢は沢山あると、より多くの皆さんが将来救われると思います。
兎にも角にも、修行が足りませんでした。けれど、とても勉強になりました。引き続き精進します。
皆様、ありがとうございました。フォーラム: 使い方全般
返信が含まれるトピック: 「先頭に固定表示」の記事をトップページ以外で表示させない皆様
一度解決したと思ったのですが、どうにもうまくいきませんので、より詳しくコードなども記述してみます。
現在、get_postsで取得して表示の方法を試しています。
現在、次のphpがあります。
・functions.php
・content.php
・index.phpfunctions.phpは次のコードを記載しています。
<?php function pre_get_posts_functions( $wp_query ) { if (!is_admin()) { // 管理画面以外で // フロントページのメインクエリでは先頭に固定表示を含めない if ( $wp_query->is_main_query() && $wp_query->is_home() ) { $wp_query->set( 'post__not_in', get_option( 'sticky_posts' ) ); } } } add_action( 'pre_get_posts', 'pre_get_posts_functions' ); ?>
次に、index.phpに次のコードを記載しています。
<?php get_header(); ?> <?php $sticky_posts_arg = array( 'posts_per_page' => -1, 'post__in' => get_option( 'sticky_posts' ), 'ignore_sticky_posts' => 1 ); $sticky_query = new WP_Query( $sticky_posts_arg ); if ( $sticky_query->have_posts() ) { while ( $sticky_query->have_posts() ) : $sticky_query->the_post(); // ここで投稿を表示 get_template_part( 'content' ); // Twenty Elevenと同じです。 endwhile; } wp_reset_postdata(); // リセット ?> <?php get_footer(); ?>
そして、content.phpには次のコードを記載しています。
<div id="content"> <?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <div align="center" class="image"> <?php the_content('続きを読む'); ?> </div> <?php endwhile; ?> <?php else : ?> <div align="center">No ART TO SEE YET</div> <?php endif; ?> </div>
functions.phpはうまく働いて、「先頭に固定表示」の記事を消すことができました。しかし、index.phpに記載したコードが上手く動かず、「先頭に固定表示」の投稿を取得できずにいます。
ちなみに、今私が作ろうとしているサイトはとても簡易的なブログで、作品を文字もタイトルもなしにただ投稿できるサイトです。ですから、コードは非常に単純にしています。
何が原因で動かないのかで苦戦しております。
再三となりますが、アドバイスをいただければと思います。フォーラム: 使い方全般
返信が含まれるトピック: 「先頭に固定表示」の記事をトップページ以外で表示させない
3件の返信を表示中 - 1 - 3件目 (全3件中)