サポート » 使い方全般 » ホーム(固定ページ)から投稿一覧ページへのリンク方法

  • 解決済 ijsdotnet

    (@ijsdotnet)


    こんにちは。
    ホーム(固定ページ)のサイドバーにお知らせ欄をつくりましたが、投稿記事一覧ページのへリンクがうまく出来なくて困っています。
    こちらのフォーラムで検索させていただきましたが、解決にいたらなかったため、投稿させていただきました。

    構成は以下の通りです。
    トップ(固定ページ) ー home.php
    投稿記事一覧 ー index.php
    投稿個別記事 ー single.php
    下層(固定ページ) ー page.php

    環境は、ローカル環境を作っております(XAMPP)
     
    ホームのサイドバーに投稿した記事を4つだけ表示させてあります。
    各記事をクリックすると投稿個別記事ページへリンクしています。
    (ここまでは、うまく行きました)
    一番下に「記事一覧へ」ボタンを設けて、リンク指定で、
    <a href="<?php echo home_url('/'); ?>index.php">と指定しました。
    当然の事ながら、再度トップページが表示されるだけでした。

    あと、必要かどうか分からずですが、ダッシュボードより固定ページ(新着情報)を新規作成し、設定→表示設定→投稿ページにて新着情報を選択してあります。

    根本的なページ構成などが間違っているかもしれません。
    その辺もふまえてご教授いただけると大変ありがたいです。

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • 投稿記事一覧ページのURLが先々変わる事がなければURLを直接書いたらどうですか?

    投稿記事一覧を index.php の代わりにテンプレートファイル archive.php として用意してはどうでしょうか? index.php を単独で指定すると (WordPressにとっては投稿一覧かどうか判断がつかないので) サイトトップだと判断して home.php を表示してしまうのだと思います。

    トピック投稿者 ijsdotnet

    (@ijsdotnet)

    stranger-jp様

    ご回答ありがとうござます。
    直接書いたものが、<a href="<?php echo home_url('/'); ?>index.php">でした。
    あと、先々変わる予定はありませんが、リンク先のアドレスが変わったとしても臨機応変に対応出来るwordpressらしい指定方法などがあれば、勉強のつもりでやってみたと思っております。

    トピック投稿者 ijsdotnet

    (@ijsdotnet)

    ghvst様

    ご回答ありがとうございます。
    全くの素人で申し訳ないのですが、index.phpが存在しなくても成り立つのでしょうか?
    一度、トライさせていただきます。

    ちなみにarchive.phpを指定した場合、リンク先の指定は
    <a href="<?php echo home_url('/'); ?>">archive.php</a>
    で問題ないでしょうか?

    また、結果報告させていただきます。

    テーマを自作しておられるようですね。
    index.phpは、個別用途のテンプレートファイルがないときに最後の手段として使われるので、作っておくのをお勧めします。
    日本語Codexの「テンプレート階層」も参考になさって下さい。

    トピック投稿者 ijsdotnet

    (@ijsdotnet)

    ghvst様

    お返事ありがとうございます。
    今まで、ブログ形式の新着方法は作成したことがありましたが、今回はじめてサイト全てをWordpressにて作成しております。
    index.phpは、ブログのトップページとして扱ってきましたが、今回は色々複雑になってしまい少し混乱をしています。
    書籍を見ながら、作成しているのですが、自分でアレンジして作ってみると上手く行かない事だらけです。

    また、トライしてみますので結果報告をさせていただきます。

    トピック投稿者 ijsdotnet

    (@ijsdotnet)

    ありがとうございます!
    上手く行きました。

    実施した作業を報告させていただきます。

    home.php → top.php に変更
    top.php内に<?php /* Template Name:Top */ get_header(); ?>
    を記述。

    ダッシュボードより
    固定ページで「新着情報」というページを作成。
    パーマリンクをhttp://*******/「notice」と指定。
    リンク先の指定は、
    <a href="<?php echo home_url('/'); ?>/archive.php">新着一覧へ</a>
    は辞めて、
    <a href="http://*******/notice/">新着一覧へ</a>
    に変更。(ここが一番怪しい気がします)
    同じく固定ページ「トップページ」を作成し、テンプレートのプルダウンより「Top」を選択。

    設定→表示設定より
    フロントページ → トップページ
    投稿ページ → 新着情報を選択

    ここまでの作業で、top.phpがトップページと認識。
    index.phpが投稿ページのトップページ(新着一覧)と認識されたのかな?と理解しております。

    ちなみに、home.phpのままで同じ作業をしてみましたが、新着情報一覧へは飛ばず、再度トップページを表示させるだけでした。
    (恐らくちゃんとしたやり方があるだけで、私の設定方法に誤りがあったと思います)
    なので、関係のなさそうなtop.phpに変更しました。

    すごく単純な事をしたいだけなのにかなり苦労をしました。

    きっと回りくどいやりかたで、良くないとは思いますが、とりあえずは希望通りの結果が出たので良しとします。

    勉強を重ね、もっとシンプルな作り方を目指したいと思います。

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック「ホーム(固定ページ)から投稿一覧ページへのリンク方法」には新たに返信することはできません。