Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
意のままに(わがままに)僕がテーマを作る為に覚えたこと2
Search
Yoshiaki Ogata
April 23, 2018
0
260
意のままに(わがままに)僕がテーマを作る為に覚えたこと2
WordBench群馬 #2で話した「これからWordPressのテーマを作ったり、カスタマイズしたいけど、どう手をつけていったらいいかわからない」方向けのスライドです
Yoshiaki Ogata
April 23, 2018
Tweet
Share
More Decks by Yoshiaki Ogata
See All by Yoshiaki Ogata
ブロックと追加CSSでお手軽カスタマイズ
yosiakatsuki
0
380
自作WordPressテーマを人気テーマにしたい妄想話
yosiakatsuki
0
280
スマホで出来る!WordPressサイト更新
yosiakatsuki
0
110
Gutenberg で「かんたん入力機能」~さよなら入力補助としてのカスタムフィールド~
yosiakatsuki
1
330
プラグイン3分クッキング.pdf
yosiakatsuki
0
33
Gutenbergになっても僕はWordの原稿コピペで投稿を作るという作業を続けられるのか
yosiakatsuki
0
520
WordPressブログカスタマイズ今日から本気出す
yosiakatsuki
0
880
意のままに(わがままに)僕がテーマを作る為に覚えたこと
yosiakatsuki
1
870
WordBench群馬 第1回 自己紹介大会 20171209
yosiakatsuki
0
430
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Thoughts on Productivity
jonyablonski
67
4.3k
It's Worth the Effort
3n
183
27k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
A Philosophy of Restraint
colly
203
16k
What's in a price? How to price your products and services
michaelherold
243
12k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Fireside Chat
paigeccino
33
3k
The Language of Interfaces
destraynor
154
24k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
27
2k
Transcript
意のままに(わがままに) 僕がテーマを作る為に 覚えたこと WordBench群馬 #2 2018.4.21 sat @yosiakatsuki
今日お話すること
WordPressテーマを作るために 覚えたこと
これからテーマを作る時の 情報収集の手がかり
WordPressテーマ作りはコワイ?
HTMLコーディングはできる! WordPressテーマ作りはコワイ? 画像:いらすとや http://www.irasutoya.com/
HTMLコーディングはできる! え?WordPressテーマ…? コワイ… ワカラナイ… WordPressテーマ作りはコワイ? 画像:いらすとや http://www.irasutoya.com/
自分のブログ、やりたいことがたくさん! WordPressテーマ作りはコワイ? 画像:いらすとや http://www.irasutoya.com/
自分のブログ、やりたいことがたくさん! カスタマイズ… プログラムわからないし… WordPressテーマ作りはコワイ? 画像:いらすとや http://www.irasutoya.com/
でも… やりたい気持ちはある! WordPressテーマ作りはコワイ? 画像:いらすとや http://www.irasutoya.com/
気持ちはあるけど… なにから手をつけたらいいかわからない! WordPressテーマ作りはコワイ? 画像:いらすとや http://www.irasutoya.com/
これからテーマを作る時の 情報収集の手がかり
なんとなく自分にもできそうかも!! テーマ作りが少し身近に感じられたら幸いです 画像:いらすとや http://www.irasutoya.com/
自己紹介
尾形 義暁 ニックネーム:よっしー @yosiakatsuki
群馬を中心に活動する Webエンジニア フリーランス x 会社員 画像:ぱくたそ https://www.pakutaso.com/
WordBench Gunma モデレーターの1人 「湯もみわぷー」
ブログ
https://tarahako.com/ • 人生初WordPressサイト • 夏フェス初心者向けブログ
https://yosiakatsuki.net/blog • WordPress初心者向け 技術ブログ
ブログ向け無料WordPressテーマ 作ってます
現在α版検証中
それでは本題に…
WordPressテーマを作るために 覚えたこと
1. WordPressテーマ作りに必要なスキル 2. そもそもテーマってどう作る? 3. テンプレートのお話 4. ページごとにゴリッとコーディングしたいときは 5. 開発環境のおはなし
6. 開発に便利なプラグイン
1. WordPressテーマ作りに必要なスキル 2. そもそもテーマってどう作る? 3. テンプレートのお話 4. ページごとにゴリッとコーディングしたいときは 5. 開発環境のおはなし
6. 開発に便利なプラグイン
「WordPressテーマをカスタマイズ したいので、PHPを覚えます!」
そ、そうなんだけど…
それよりも 「WordPressのお作法」 をたくさん覚えることになる
WordPressテーマを作るために 身につけたいスキル
• HTML,CSS → 必須・重要 • JavaScript → サイトによりけり • PHP
→ かじった程度でも…
HTML・CSS
HTML・CSS • id,classの対応がわかるように • PC上のHTMLファイルをブラウザで表示できるの で、簡単に練習を始められる
JavaScript
JavaScript • 必要に応じて… • 巷で公開されている便利なプラグインを利用する ことが多いかも • (コピペ+αで凌げることもあるので後回しでも…)
PHP
PHP • かじった程度でもなんとかなる • <?php ?>、変数、関数、引数、echo、if、for • 「WordPressの関数」を駆使してテーマを作る為、 「関数」「引数」は掴んでおきたい •
WordPressのお作法(関数)をたくさん覚えていくことになる
「プログラミング」で頭を悩ませるのはPHP • 「土日で作る」系の本 • プログラミング学習サイトの無料でできる範囲 などで基礎を習得!
1. WordPressテーマ作りに必要なスキル 2. そもそもテーマってどう作る? 3. テンプレートのお話 4. ページごとにゴリッとコーディングしたいときは 5. 開発環境のおはなし
6. 開発に便利なプラグイン
そもそもテーマってどう作るの?
.../ wp-content / themes フォルダに入れる
フォルダだけでは テーマとして認識されない
どんなファイルを用意すればいいの?
最低限必要なファイル • style.css • index.php
style.cssにはテーマの情報をコメントで記載 「Theme Name:」を コメントで記入
この2つだけでテーマができてるの?
実際にはもっと多くのファイルで作られている 役割ごととにファイルを分割 • ヘッダー • フッター • 一覧ページ • 投稿詳細
• 固定ページ …など
どんなファイルがあるか • header.php • footer.php • sidebar.php …など • index.php
• archive.php • search.php • page.php • single.php • 404.php
「テンプレート」と呼ばれている
1. WordPressテーマ作りに必要なスキル 2. そもそもテーマってどう作る? 3. テンプレートのお話 4. ページごとにゴリッとコーディングしたいときは 5. 開発環境のおはなし
6. 開発に便利なプラグイン
テンプレートには優先順位がある
テンプレート階層 https://wpdocs.osdn.jp/テンプレート階層
テンプレート階層 例:カテゴリー一覧ページ category.phpがあればそれを使う、 無ければarchive.phpを使う、 archive.phpも無ければindex.phpを使う…
毎回自分でテンプレート作るの?
None
(めんどくさい)
世の中には便利な「スターターテーマ」 が存在している
真っ白な状態から作るなら 「_S」を使うといい
_S (underscores) https://underscores.me/
_S (underscores) • テーマ名を入力してテーマの土台を作成できる
_S (underscores) • ほぼ真っ白なテンプレートがあっという間に完成
_S (underscores) • 必要そうなファイルはほぼ全部揃ってる!
テンプレートは どうやってつなぎ合わせる?
ヘッダー フッター コンテンツ サイドバー
header.php footer.php sidebar.php
WordPressの関数で パーツを読み込み
header.php footer.php single.php sidebar.php get_header() get_sidebar() get_footer() ※single.phpから 各パーツを呼び出す
• get_header() → header.php • get_sidebar() → sidebar.php • get_footer()
→ footer.php …それぞれ対応している
自分でパーツを作りたいときは? CTA、SNSシェア、お知らせ的なやつ…などなど
get_template_part()を使う
get_template_part() • 引数に読み込むPHPファイルのパスを渡す • パスはテーマのルートフォルダからの相対パスを 指定する • 「.php」は削除する
例 get_template_part( ‘template-parts/sns’ );
header.php footer.php sns.php sidebar.php get_header() get_sidebar() get_footer() get_template_part( ‘template-parts/sns’ );
パーツごとにファイルを分けると 後々のメンテも楽
1. WordPressテーマ作りに必要なスキル 2. そもそもテーマってどう作る? 3. テンプレートのお話 4. ページごとにゴリッとコーディングしたいときは 5. 開発環境のおはなし
6. 開発に便利なプラグイン
デザインが決まっていて ゴリッとコーディングする場合
管理画面からなんか書いてられない
特定の固定ページにだけ適用する テンプレート
特定の固定ページだけのレイアウト • 「page-[slug].php」というファイルを作る • カスタムページテンプレートを作る
page-[slug].php
page-[slug].php • 固定ページの「スラッグ」をファイ ル名に加える方法 • スラッグが「about」の場合、 「page-about.php」というファイル を作る
カスタムページテンプレート
カスタムページテンプレート • テンプレートファイルの先頭に 「Template Name: [テンプレート名]」をPHPコメントで書く • 管理画面からテンプレートを選択出来る
1. WordPressテーマ作りに必要なスキル 2. そもそもテーマってどう作る? 3. テンプレートのお話 4. ページごとにゴリッとコーディングしたいときは 5. 開発環境のおはなし
6. 開発に便利なプラグイン
開発環境の話
PC上に WordPressが動く環境を用意する
• MAMP • XAMPP • Local by Flywheel • VCCW
• Wocker …などなど
個人的には 「Local by Flywheel」がおすすめ
Local by Flywheel • 簡単な入力とボタン操作だけでOK • 複数サイトも作れる https://local.getflywheel.com/
1. WordPressテーマ作りに必要なスキル 2. そもそもテーマってどう作る? 3. テンプレートのお話 4. ページごとにゴリッとコーディングしたいときは 5. 開発環境のおはなし
6. 開発に便利なプラグイン
便利なプラグイン
Show Current Template
Show Current Template • 見ているページで使われているテンプレートを表 示してくれる
本日のまとめ
• PHPはちょっとできれば大丈夫!怖くない ◦ WordPressの関数を知ってればなんとかなる! • テーマを構成するテンプレートには役割がある! ◦ 適したファイルを編集する!(最初は迷うけど)
• ページごとのテンプレートでガッツリコーディング ◦ ファイルに直接コーディングする方法もあります!
「なんとなく自分にもできそうかも」
ありがとうございました!