投稿の先頭に固定表示について
-
こんにちは、
sticky postの設定の事でいいですか?
投稿画面の公開設定の先頭に固定表示をチェックした場合は、カテゴリに関係なくトップページの先頭に表示されますが、
先頭に固定表示をチェックした投稿が複数ある場合は、最も新しいsticky postが先頭に表示されます。古いものは、その次に表示されるのが通常の動作になると思います。
アーカイブカテゴリが3つ有、そのうちの2つと1つそれぞれに個別の先頭表示の記事を指定するにはどのようにすればいいのでしょうか?
おっしゃる意味が、よく理解できないのですがカテゴリアーカイブなどでは、
FEATURED という表示はされますが、先頭に固定表示される事はありません、単に時系列に並ぶだけです。
WordPressのSticky Postは、トップページの先頭に固定表示する機能で、他のアーカイブなどでは、固定表示されるように作られていないと思います。
アーカイブページでも、先頭に固定する機能が必要で、その方法を知りたいという事でしょうか?
お返事ありがとうございます
すみません、説明がうまく出来ないもので、たとえば、
カテゴリー:神戸店
:神戸西店
:京都店
として新規カテゴリーを作って
新規投稿を追加で
:神戸休みの記事←先頭に固定表示 (カテゴリー一覧の 神戸店、神戸西店にチェック)
:京都休みの記事←先頭に固定表示 (カテゴリー一覧の 京都店にチェック)
上記のような感じで神戸店と神戸西店の休みの記事をいつも記事のトップにもってきて、
京都店の方は休みが違うのでこちらは京都店の休みの記事をトップにもってくるようにしたいのです。それで、神戸の方と京都の方にそれぞれ先頭固定になる記事をそれぞれ
●神戸休み (カテゴリー /神戸店、神戸西店)
●京都休み (カテゴリー /京都店)として
ダッシュボード→投稿→公開状態→編集→ この投稿を先頭に固定表示にチェックしたのですがそれぞれの(神戸店、神戸西店、京都店)カテゴリー指定で記事を書くが、先頭固定にした記事の後に書いた記事がその上に表示されてしまいます。
ちなみに、HP本体はhtmlで作って神戸店、神戸西、京都それぞれリンク先に
このwordpressで作ったカテゴリー別の投稿ページのリンクを貼り付けています。ちなみに、HP本体はhtmlで作って神戸店、神戸西、京都それぞれリンク先に
このwordpressで作ったカテゴリー別の投稿ページのリンクを貼り付けています。Stick Post機能は、WordPressのトップページでしか機能しないため
カテゴリアーカイブにリンクした場合には、先頭に固定表示する事はできません。
category.php テンプレートをカスタマイズする必要があります。
簡単な修正方法としては、新たにテンプレートを作成し(extend.php)、そのテンプレートをcategory.phpの先頭に固定表示同等の場所で、
<?php get_template_part('extend');?>
として読み込むようにする
extend.phpの内容は、(厳密な分岐はできませんが)以下のようにすると、それぞれ対応した内容が表示できるようになると思います
<?php if ( wp_get_referer() == '神戸西のURL' ) { echo '神戸西'; } if ( wp_get_referer() == '神戸URL' ) { echo '神戸'; } if ( wp_get_referer() == '京都のURL' ) { echo '京都'; } ?>
もし、投稿編集画面のsticky post機能を使って表示したい場合は、以下などを参照してみてください
http://codex.wordpress.org/Sticky_Postsnobita様、色々と勉強になります。
wordpressを始めたのは最近なもので、phpを勉強しだしたのも最近で苦戦しています。それでお恥ずかしいのですが
>簡単な修正方法としては、新たにテンプレートを作成し(extend.php)
とありますが新しいテンプレートはwordpressのダッシュボードからテンプレートの新規で作るのでしょうか?
先ほど試しにwordpressのダッシュボード左下のテンプレートの新規追加でtest.phpを新規登録してみたのですが、ダッシュボードのテーマの編集画面右側のphpファイル一覧には表示されなかったです。
これはデフォルトで表示はされないのですか?
修正の時はテンプレートの画面から編集で修正することでしょうか。またはメモ帳などでextend.phpとしてnobita様が記載して頂いた条件分岐のコードを記述して
アップロードする方法でも同じ事と考えてよろしいのでしょうか?>そのテンプレートをcategory.phpの先頭に固定表示同等の場所で、
とあり“同等の場所で”とありますが
category.phpの<?php get_template_part( ‘content’, get_post_format() );?>のところを
↓
<?php get_template_part(‘extend’);?>
とすればいいのでしょうか?
いろいろとお恥ずかしい質問をして申し訳ありません。
新しいテンプレートはwordpressのダッシュボードからテンプレートの新規で作るのでしょうか?
WordPressのテーマの編集から、新しいテンプレートファイルを作成する事はできません。
一般的に、テンプレートのカスタマイズを行うためには、チャイルドテーマというものを作成します。
チャイルドテーマ内に、extend.phpを作成すると良いと思います。
これらのカスタマイズのためには、WEBサーバーにFTPでアクセスできるようにしておくと便利です。FTPを使えない場合でも、レンタルサーバーの管理画面から、ファイルやホルダーを作成できる機能がたいていあると思いますので、そのような機能を使っても可能です。
http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%BC%E3%83%9E%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9
<?php get_template_part( 'content', get_post_format() );?>のところを ↓ <?php get_template_part('extend');?> とすればいいのでしょうか?
いいえ、違います。
これだと、アーカイブページの本文が消えてしまい、extend.phpの内容が、投稿回数分表示されてしまいます。
カスタマイズを行うためには、WordPressテンプレート関数や、表示の仕組みを知る必要がありますので、WordPressの入門書書籍等で学ぶ事をお勧めします。
nobita様、今回はいろいろとご教授ありがとうございました。
大変勉強になりました。
phpの基礎がやはり不可欠だと思い、今一から勉強しています。
まだ、表題の問題は解決していませんが・・・。こちらのプラグインで要望のことが出来るんじゃないでしょうか?
一応私の環境ではカテゴリー一覧ページでStick Postが効きました。
- トピック「投稿の先頭に固定表示について」には新たに返信することはできません。