webサイト制作の勉強|2019年10月クラス用ブログ

ファリカテクニカルアカデミーのwebサイト制作科の授業解説ブログです。フェリカテクニカルアカデミーは池袋にある求職者支援訓練の学校です。

wordpressの公式テーマに子テーマを作ってカスタマイズする

wordpressでサイトを制作する場合、大きく分けると2つの方法があります。
1つは真っ白い状態からオリジナルでテーマを作っていく場合(travel sketch)、もう1つは既存のテーマを自身でカスタマイズしていく方法です。

今回は既存のテーマを自身でカスタマイズしていく方法の中で「子テーマ」を作る方法で進めていきます。

wordpressの子テーマ

wordpressの既存のテーマを使って制作する場合、既にcssも含めて出来上がっている状態ですが「一部のスタイルを書き換えたい」という様な場合に既存のテーマ自身を弄ってしまうと、そのテーマがアップデートした場合に書き換えた内容が上書きされてしまう可能性があるので「子テーマ」を作ります。
「子テーマ」とは、選択した既存のWordPressテーマである「親テーマ」の機能やスタイルを継承した上で編集していくためのテーマです。既存テーマのカスタマイズ専用テーマということです。


子テーマの作り方

「子テーマ」を作るために必要なファイルは「style.css」と「functions.php」の2つのファイルのみです。これら2つのファイルに必要な記述をして「親テーマの名前-child」という名前のフォルダーに入れて、「親テーマ」と同じ階層にアップロードするだけです。



style.cssに必要な記述

/*
Theme Name:twentyseventeen-child
Description:WordPress2017年公式テーマの自作子テーマです。
Template:twentyseventeen
Author:自身の名前
*/


functions.phpに必要な記述

<?php
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
  wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
  wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', array('parent-style')
);
}
?>

add_action:WordPressに機能を追加する宣言です。ここでは子テーマのCSSJavascriptを読み込んでいます。
4行目のwp_enqueue_style:親テーマのCSSを読み込みます。
5行目のwp_enqueue_style:親テーマのCSSを上書きします。
ここでは、4行目のstyle.cssの後に子テーマが読み込むよう設定するのがポイントです。こうすることで、親テーマのスタイルの後から、追加した子テーマのスタイルを読み込みます。


最後に子テーマ用のサムネイル画像を作成しましょう。
サイズ:600x450px
ファイル名:screenshot.jpg




サイト100選に固定ページを追加する

以前作ったサイト100選にオリジナルのトップページと自己紹介ページを追加します。

ページ構成
  • トップページのコンテンツ:キービジュアル、自己紹介ページの概要、サイト100選ブログの概要、新着ニュース、サイト100選の最新記事(よく見られている記事)
  • 自己紹介ページ:キービジュアル、詳細な自己紹介、SNSプラグイン、お問い合わせフォーム
  • ブログページ:サイト100選

トップページの作成

まずはトップページを作成しましょう。この時ファイル名は必ず「front-page.phpにしましょう。
ヘッダー部分とフッター部分は既存のテーマにあるものを使うので、中のmain部分のみ作っていきます。
またスタイルシートも「style.css」は親テーマで使われているので、違うファイル名にします。



f:id:yachin29:20190821163703j:plain


<!DOCTYPE HTML>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>2017公式テーマの子テーマ(仮)|トップ</title>
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="css/child-style.css">
</head>

<body>

<div class="child-main">
<div class="about">
<div class="txt-box">
<h2>About</h2>
<p class="txt">この文章はダミーです。文字の大きさ、量、字間、行間等を確認するために入れています。この文章はダミーです。文字の大きさ、量、字間、行間等を確認するために入れています。この文章はダミーです。文字の大きさ、</p>
<p class="link"><a href="#">aboutページへ</a></p>
</div>
<p><img src="https://placehold.jp/83838a/ffffff/800x500.jpg" alt=""></p>
</div><!--/.about-->

<div class="site100">
<div class="txt-box">
<h2>web site 100</h2>
<p class="txt">この文章はダミーです。文字の大きさ、量、字間、行間等を確認するために入れています。この文章はダミーです。文字の大きさ、量、字間、行間等を確認するために入れています。この文章はダミーです。文字の大きさ、</p>
<p class="link"><a href="#">サイト100選ページへ</a></p>
</div><!--/.txt-box-->
<p><img src="https://placehold.jp/83838a/ffffff/800x500.jpg" alt=""></p>
</div><!--/.site100-->

<div class="news">
<h2 class="news-tit">News Release</h2>
<dl>
<a href="#">
<dt>2019.07.27</dt>
<dd class="blog-txt">ブログ記事タイトル</dd>
</a>
<a href="#">
<dt>2019.07.27</dt>
<dd class="blog-txt">ブログ記事タイトル</dd>
</a>
<a href="#">
<dt>2019.07.27</dt>
<dd class="blog-txt">ブログ記事タイトル</dd>
</a>
<a href="#">
<dt>2019.07.27</dt>
<dd class="blog-txt">ブログ記事タイトル</dd>
</a>
</dl>
</div>

<div class="blog">
<h2>site100-新着記事</h2>
<ul class="site_post">
<a href="">
<li class="site_post_list">
<p class="site_post_thumbnail"><img src="https://placehold.jp/e8a348/ffffff/240x180.jpg" alt=""></p>
<h3>ブログ記事タイトル</h3>
</li>
</a>

<a href="">
<li class="site_post_list">
<p class="site_post_thumbnail"><img src="https://placehold.jp/e8a348/ffffff/240x180.jpg" alt=""></p>
<h3>ブログ記事タイトル</h3>
</li>
</a>

<a href="">
<li class="site_post_list">
<p class="site_post_thumbnail"><img src="https://placehold.jp/e8a348/ffffff/240x180.jpg" alt=""></p>
<h3>ブログ記事タイトル</h3>
</li>
</a>

<a href="">
<li class="site_post_list">
<p class="site_post_thumbnail"><img src="https://placehold.jp/e8a348/ffffff/240x180.jpg" alt=""></p>
<h3>ブログ記事タイトル</h3>
</li>
</a>
</ul>

<p class="more"><a href="#">他の記事を見る</a></p>
</div>
</div>

</body>
</html>

OSS(オープンソースソフトウェア)とは?

オープンソースソフトウェアとは、利用者の目的を問わずソースコードを使用、調査、再利用、修正、拡張、再配布が可能なソフトウェアの総称である。

GithubやCodePenのようにソースコードをオープンして共有する、と言う考え方は最近出来た考え方では無くPCの黎明期からある、IT全体の根幹を成す考え方です。よく知られているOSSにはオペレーティングシステムであるLinux、データベース管理システムのMySQLプログラミング言語JavaPerlPHPPythonなどがあります。ただ、OSSは「なんでもOK」と言う訳で無く、色々と細かい「決まり」があります。





コピーレフト

f:id:yachin29:20200313131630p:plain

コピーレフト(英: copyleft)は、著作権に対する考え方で、著作権を保持したまま、二次的著作物も含めて、すべての者が著作物を利用・再配布・改変できなければならないという考え方である






www.sbbit.jp





fancyapps.com

ポートフォリオのテンプレート

ポートフォリオを作るに当たって、WordPressやBootstrapなどのフレームワークを使用する事も視野に入れておきましょう。
それぞれの長所・短所を理解し、自身にとって最も有効だと思う物を選択する事が大事です。

bootstrapのテンプレート

coliss.com


tetra-themes.com

HTML5&CSS3ベースのテンプレート

coliss.com


photoshopvip.net

フィルタリング機能とモーダルウィンドウを使ったギャラリー

複数のjQueryプラグインを使って、フィルタリング機能とモーダルウィンドウを使ったギャラリーを作成しましょう。
複数のプラグインを使うことで、管理すべきファイルの数が多くなるので、気を付けましょう。


参考サイト
chiyo-katsumasa.com


<!DOCTYPE HTML>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>mix it upの実装</title>
<style>
img {
vertical-align:bottom;
}
header {
display:flex;
justify-content:center;
}
button {
display:block;
padding:10px;
width:80px;
margin:10px;
cursor:pointer;
}
.container {
width:960px;
margin:40px auto;
overflow:hidden;
}
.mix {
margin:10px;
float:left;
}
</style>
<link rel="stylesheet" href="css/jquery.fancybox.css">
</head>

<body>
<header>
<button type="button" data-filter="all">All</button>
<button type="button" data-filter=".red">赤色</button>
<button type="button" data-filter=".green">緑色</button>
<button type="button" data-filter=".blue">青色</button>
<button type="button" data-filter=".even">偶数</button>
<button type="button" data-filter=".youtube">動画</button>
<button type="button" data-sort="order:asc">番号順</button>
<button type="button" data-sort="order:descending">逆番号順</button>
<button type="button" data-sort="random">ランダム</button>
</header>
<div class="container">
<div class="mix red" data-order="1">
<a data-fancybox="gallery" href="img/1-2.jpg">
<img src="img/1.jpg" alt="">
</a>
</div>
<div class="mix red even" data-order="2">
<a data-fancybox="gallery" href="img/2-2.jpg">
<img src="img/2.jpg" alt="">
</a>
</div>
<div class="mix red" data-order="3">
<a data-fancybox="gallery" href="img/3-2.jpg">
<img src="img/3.jpg" alt="">
</a>
</div>
<div class="mix green even" data-order="4">
<a data-fancybox="gallery" href="img/4-2.jpg">
<img src="img/4.jpg" alt="">
</a>
</div>
<div class="mix green" data-order="5">
<a data-fancybox="gallery" href="img/5-2.jpg">
<img src="img/5.jpg" alt="">
</a>
</div>
<div class="mix green even" data-order="6">
<a data-fancybox="gallery" href="img/6-2.jpg">
<img src="img/6.jpg" alt="">
</a>
</div>
<div class="mix blue" data-order="7">
<a data-fancybox="gallery" href="img/7-2.jpg">
<img src="img/7.jpg" alt="">
</a>
</div>
<div class="mix blue even" data-order="8">
<a data-fancybox="gallery" href="img/8-2.jpg">
<img src="img/8.jpg" alt="">
</a>
</div>
<div class="mix blue" data-order="9">
<a data-fancybox="gallery" href="img/9-2.jpg">
<img src="img/9.jpg" alt="">
</a>
</div>
<div class="mix even youtube" data-order="10">
<a data-fancybox="gallery" href="https://www.youtube.com/watch?v=tKsB5ID134o">
<img src="img/10.jpg" alt="">
</a>
</div>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="js/jquery.fancybox.js"></script>
<script src="js/mixitup.js"></script>
<script>
var mixer = mixitup('.container');
</script>
</body>
</html>

配色の基本

webサイトはおおまかに別けるとテキスト・画像・色の3つの情報から成り立っています。
3つの中でも色はユーザーに最初に伝わる情報なので、配色次第でサイトの第一印象が決まってしまいます。
初心者にとって配色は難しい部分ですが、まずは既存のサイトやサービスを良く調べ、一般的にその色が持つ印象やイメージをしっかりと理解し、上手く使いましょう。

配色的にダメな例

f:id:yachin29:20190529140130p:plain



www.slideshare.net


www.slideshare.net



補色

この中で1つだけ特に人気が出たカラーバリエーションがあります。それはどれでしょう?またどのような理由からでしょう。
f:id:yachin29:20160303140453j:plain



f:id:yachin29:20160303135303j:plain

配色ツール
nipponcolors.com



[ HUE / 360 ] The Color Scheme Application


Colours


colormind.io


色数はできるだけ少ない方がいい

色が難しくなるのは、たくさんの色を同時に使おうとするからです。例えば、白と黒、白と赤だけの配色を見て、バランスが悪い、まとまりがないと思うことはほとんどありません。しかし、そこに青や黄などが混ざってくることで、配色は一気に難しくなります。裏返せば、色をできるだけ使わないようにすれば、誰でもそこそこまとまりのある配色にすることができるということです。


f:id:yachin29:20180726135439p:plain

メインカラー

その名の通りサイトの印象を決定づける主役の色です。


ベースカラー

最も大きな面積を占める基本となる色で、余白や背景などに用いることが多い色です。メインとアクセントのカラーを引き立てる脇役的な立ち位置。


アクセントカラー

全体の5%と少ない使用量ながら一番目立つ色で、全体を引き締める、ユーザーの目を引く役割があります。




カラースキーム

カラースキーム【color scheme】 色彩計画。 色のもつ心理的・生理的・物理的な性質を利用して、まとまりのある雰囲気を作るなど、目的に合った配色を行うための設計。


デザインガイドライン

デザインガイドラインとは、全体を通して一貫性のあるデザインを作成するために、様々なデザイン要素の指針などを定めたものです。 WEBサイト制作におけるデザインガイドラインは、静的なビジュアル面はもちろん、アニメーションやUIといった動作の指示も含まれる事が多いです。



note.com


https://developer.apple.com/design/human-interface-guidelines/





qiita.com






参考サイト
satohmsys.info



www.find-job.net



WEBデザインで押さえるべき配色(ベース、メイン、アクセント)の基本「3つのカラー」|テクニカルブログ|株式会社エムハンド



photoshopvip.net


baigie.me



photoshopvip.net