サポート » テーマ » index.phpの前に静的ページを挟む場合

  • index.phpの前に認証ページ(その画像をクリックするとトップになる)のような静的ページがトップページに挟む場合、index.htmlはどうしても一番前に持ってこないといけません。

    index.php(top.php)には、ニュース一覧が組み込まれているため、index.htmlに変わるものは静的ページにすることはできません。

    この場合は、下層を作って index.html/top/ のようなカタチで作成しないといけないのでしょうか。

    極力、index.html以降は下層ページにしたくはないのですが、そうしない方法はありますでしょうか。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • index.htmlを使う必要はありません。
    WordPressでは固定ページもトップページにすることができます。

    ニュース一覧との分割方法も合わせて
    このページの解説がとてもわかりやすいです。
    http://ateitexe.com/wordpress-blogtop-page/

    こんにちは

    通常、index.phpと、index.htmlを共存させて、使い分ける事は、ワードプレスではリダイレクトなどの関係で、難しいと思いますが、

    状況によって、テンプレートの読み込みを変更する事は出来ます。

    方法は、たくさんあります。

    3.0位から、使えるようになった、テンプレートフィルタリングについて書いてみますので、参考になれば幸いです。

    add_filter( 'home_template', 'my_template' );
    
    function my_template( $templates ){
    	if ( is_home() and isset( $_GET['oreore'] ) and !empty( $_GET['oreore'] ) ){
    		$templates = get_template_directory().'/oreore.php';
    	}
    	return $templates;
    }

    テーマの、functions.php に記述します。

    動作としては、

    http://example.com/?oreore=true

    だと、oreore.phpというファイルを読み込みます。

    そうでなければ、通常のトップページが表示されます。

    これを使うと、従来のテンプレート階層では出来なかった事が比較的簡単にできるようになります。

    上のコードは、サンプルコードなので、実用になるかは、よくテストしてみてください

    追伸:認証を付けるのだと、いろいろ弊害が出るかもしれないので、慎重に判断してください

    個人的には、WordPressのログイン機構を使うとかプラグインの利用がおすすめです

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「index.phpの前に静的ページを挟む場合」には新たに返信することはできません。