HOME  /WordPress(応用)
 /固定ページをデザインする
2017年11月22日

固定ページをデザインする

このサイトは固定ページは、1つのトップページと一般固定ページから構成させています。

両者とも画面デザインは同じですが、一般固定ページは先頭に更新日付を表示し、コンテンツの新鮮度を訪問者に知らせる方式を取っています。

尚、表示プログラムは下記になります。

トップページ :front-page.php

一般固定ページ:page.php

1.固定ページのデザインとプログラム

固定ページのデザインは下記の様になっています。

上図のパンくずの下からが本文領域です。

本文領域は下記から構成されています。

①灰色の背景(id=’background’)がある。

②この背景の上に白い紙をイメージしたドキュメントコンテナ(id=’page-contener’)がある。

③このコンテナの中ににコンテンツ(id=’page-contener-data’)が書かれている。

page.phpとfront-page.phpの違いは下記コラップスを開閉して確認してください。

<!--固定ページ(page.php)-->

<?php get_header();?>

<div id='background'>
 <div id='page-contener'>
  <div id='page-contener-data'>
   <?php while ( have_posts() ) : the_post(); ?>
				<div> <span class="glyphicon glyphicon-time" aria-hidden="true"></span>【<?php  the_modified_date('Y年m月d日'); ?>】</div>
				<div class='contents'>
					<?php the_content(); ?>
				</div>
			<?php endwhile;?>
  </div>
  <?php edit_post_link('編集','<','>',''); ?>
 </div>
</div>
		
<?php get_footer();?>

※1.上記の赤字の所が背景やコンテナ及びコンテナの中のデータ部分です。

※2.青字の部分が固定ページの中のデータを読み出す部分になります。
尚、<div class=’contents’>を指定する事によりビジュアルエディタのCSSを適用させています。

※3.ピンクの部分が固定ページの表示画面から編集画面に移行する関数です。

 

<!-- トップページ(front-page.php) -->

<?php get_header();?>

<div id='background'>
	<div id='page-contener'>
		<div id='page-contener-data'>
   <?php while ( have_posts() ) : the_post(); ?>
				<div class='contents'>
					<?php the_content(); ?>
				</div>
			<?php endwhile;?>
  </div>
  <?php edit_post_link('編集','<','>',''); ?>
	</div>
</div>
		
<?php get_footer();?>

※1.page.phpと異なる場所は、更新日付を表示する部分だけです。

2.CSSでデバイス対応処理を行う

ヘッダの時は下記のデバイスデザインを行いました。

①PC画面は左右8%の余白

②タブレット画面は左右2%の余白

③スマホ画面は画面幅一杯に表示

そこで固定ページも上記と同様な形でデザインします。

/*****************************************/
/* コンテンツ設定                        */
/*****************************************/
#background{
	display:flex;
	background:#f7f7f7;}
/**** 固定ページコンテナの設定 ************/
/* PCの場合は左右に8%の余白 */
#page-contener{
	margin:0 8%;                
	margin-top:2%;
	border:1px solid #c0c0c0;
	box-shadow:1px 1px 10px #c0c0c0;
	background:#fff;}
#page-contener-data{margin:5%}	
/* タブレットの場合は左右に2%の余白 */
@media screen and (min-width:768px) and (max-width:991px){ 
 #page-contener{
	 margin:0 2%;
	 margin-top:2%;}
}
/* スマホの場合は画面枠一杯 */
@media screen and (max-width:767px){
	#page-contener{margin:0;} 
	#page-contener-data{margin:2%;}
}

※1.背景(#background)は灰色でdisplay:flexを指定しています。
display:flexは投稿ページで投稿文書とサイドバーを1行に並べる為の処置です。

※2.ページコンテナ(#page-contener)は、デバイスによって左右のマージンを変更しています。

3.その他の情報

WordPressのホームページの優先順位は下記になります。

①front-page.php
この名前のプログラムがあると総てに優先されます。

②管理者画面の表示設定の「フロントページ」で指定したページ
front-page.phpが無い時にここで指定したページのテンプレートが使われます。

③home.php
上記の①②が無い時に使われるプログラムです。

④index.php
上記の①②③が無い時に使われるプログラムです。

 メモ

このサイトはfront-page.php方式を採用しています。

よって、このサイトのURLがクリックされた時に動くプログラムはfront-page.phpです。

しかしこのサイトのホームページはコンテンツを表示したいので、管理者画面の表示設定の「フロントページ」で指定したページをfront-page.phpで表示する形にしています。