質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

3回答

3441閲覧

wordpressのアーカイブページを表示させるには?

runout

総合スコア15

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2019/11/16 19:54

よろしくお願いします。
wordpressのオリジナルテーマを作成中です。
front-page.phpを作ってトップはオリジナルデザインにしてあります。
front-page.phpからarchive.phpへ投稿一覧としてリンクを飛ばしたいのですが404.phpが表示されてしまいます。

ネットで、wordpressでは基本トップページが投稿一覧となるのでアーカイブページを作る場合は別途functions.phpに設定が必要とあったのですがうまくいきません。
codex確認しfunctions.phpに

$arg = array( 'has_archive' => true, ); register_post_type('post', $arg);

書きましたがarchive.phpでは無く404.phpが表示されます。

front-page.php に記述しているリンクは

<a href="<?php echo home_url(); ?>/archive.php">すべての記事をみる</a>

です。

archive.phpに記述されているのは、
codexのアーカイブの作り方です。

どのようにしたらarchive.phpが表示されるのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

WordPressの仕組みとして、アクセスされたURLをindex.phpで、テーマ内のテンプレートへ割り振るようになっています。
archive.phpは、そのアーカイブページを表示するためのテンプレートであり、直接アクセスはできません。

アーカイブページへのリンクは、get_post_type_archive_link()を使用して下さい。

get_post_type_archive_link()

投稿2019/11/17 05:44

編集2019/11/17 11:35
madone99

総合スコア1855

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

  • フロントページはテーマ内にfront-page.phpをおいて、その内容で固定
  • front-page.phpには記事をださず、別のURLで一覧ページを表示したい

という前提で回答します。

archive.php は/date/2019や /tags/foo といった分類別ページに利用されるものなので、全投稿一覧のファイルとしては利用できません。


管理画面の表示設定から

  • フロントページの表示を「固定」にする
  • 適当な固定ページを作成して、「フロントページ」「投稿ページ」に設定する

(phpで内容書くのであれば、両方とも内容は空でいいです)

上記の手順で「投稿ページ」に設定した固定ページのURLで全投稿一覧が表示可能です。
この際に利用されるテンプレートファイルはhome.phpです。(ない場合はindex.php)

参考:
静的フロントページの作成
管理画面/表示設定

投稿2019/11/17 16:24

Eggpan

総合スコア2727

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

出力されたhtmlはどうなってますか?
ブラウザのアドレスバーに表示されているURLは意図通りですか?
リンクでしたら始めからリンクで確認するのではなく、直にURLを打って確認してからリンクURLに入れるようにすると問題の切り分けもやりやすくなり間違いも起きにくいですよ

投稿2019/11/16 22:58

m.ts10806

総合スコア80848

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

runout

2019/11/17 05:24

アドレスバーのurlはサイトドメイン/archive.phpです。 直にURLを打っても404が表示されます。 出力されるhtmlとはリンクの部分ですか? リンク部分のhtmlは<a href="サイトドメイン/archive.php"></a>です。 表示されるページは404.phpで間違いありません。
m.ts10806

2019/11/17 05:51

直に打って404であればそもそもURL間違ってます。 それにWordPressなどのCMSでは「.php」でアクセスすることはほとんどないはずなのでリンクを提供する機能を探してください
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問