狠狠撸

狠狠撸Share a Scribd company logo
山尾 雅也
静的HTMLファイルを
WordPressのテーマにする
ワークショップ
自己紹介
山尾 雅也 (38
歳)
?2007年
2007年?2008年
2008年?2011年
2014年?現在
CAD/CAMでのマシニングオペレーター
WEB制作会社?広告代理店でコーダー
SEOマーケティング&コーダー
マークアップエンジニア&WEBエンジニア
大阪府吹田市生まれ
三重県桑名市育ち
そして初めてのスピーカーです!!
どうか優しい目でみていただけると助かります。
そしてテーマ作成の経験者の方
手助けしていただけると
すごく喜びます
タイムテーブル
?テーマについて説明
?ワークショップ
?まとめ
?ネクストタイム
テーマとは?
テーマとは
例えば、
デザインの着せ替え
(コンテンツの内容はそのままに
デザインだけを一瞬にして変える)
テーマの作成方法
テーマの作成方法
?親テーマから子テーマ
既存のテーマをベースにカスタマイズする方法
?フルスクラッチ
ゼロから作成する方法
(静的HTMLから関数を埋め込んだり、
共通部分を切り分けたりする)
子テーマでの作成のメリット?デメリット
? メリット
親テーマの必要な部分はそのままに、カスタマイズできる。
ゼロからの作成の必要がないので、少ない時間で完成できる。
? デメリット
親テーマへの依存が大きくなり、学習時間がかかる。
親テーマのアップデートによっては、子テーマの再カスタマ
イズが必要になる。
フルスクラッチでのテーマ作成の
メリットデメリット
? メリット
デザイン、機能など細かいところまで自由にカス
タマイズできる。
? デメリット
ゼロからコードを書くため、制作に時間がかかる。
HTML?CSS?PHPの総合的な知識が必要になる。
今回のワークショップでは
?親テーマから子テーマ
既存のテーマをベースにカスタマイズする方法
?フルスクラッチ
ゼロから作成する方法
(静的HTMLから関数を埋め込んだり、
共通部分を切り分けたりする)
こちらで作成していきます
テンプレート阶层
静的贬罢惭尝ファイルを奥辞谤诲笔谤别蝉蝉のテーマにするワークショップ
index.php
個別投稿ページ=ブログ記事
single-{post_type}.php single.php
index.php
フロントページ=トップページ
front-page.php
category.php
カテゴリーページ
category-{slug}.php
index.php
category-{ID}.php
archive.php
index.php
アーカイブページ
archive-{post_type}.php archive.php
index.php
style.css
があれば動きます
(テーマとしてエラーが出ない)
実际にテーマとして认识されるか操作します
ということで
ワークショップを開始します
関数や参考ページはスライド最後にリンクを載せています
まず静的HTMLのファイルを
ダウンロードしてください
https://wbn1706.mistle.org/wbn.zip
今回の内容が動作しているページは
https://wbn1706.mistle.org/
に載せています。
テーマ情報追加
style.css
/*
Theme Name: テーマの名前
Theme URI: テーマのサイトのURI
Description: テーマの説明
Author: 作者の名前
Author URI: 作者のURI
*/
1行目に追加
ファイルパスの変更
index.php
<link rel=“stylesheet” href=“style.css”>
<link rel=“stylesheet”
href=“<?php echo get_stylesheet_uri(); ?>”>
1行目に追加
ファイルパスの変更
index.php
<img src=/slideshow/htmlwordpress/77109163/“./img/main_image.jpg” alt=“ワークショップ…”>
<img src=“
<?php echo get_stylesheet_directory_uri(); ?>/img/
main_image.jpg” alt=“ワークショップ…”>
1行目に追加
サイトのタイトルと説明文の表示
index.php
<header>
<a href=“#”>
<h1><?php bloginfo(‘name’); ?>
</a>
<p><?php bloginfo(‘description’); ?></p>
</header>
(例)例えば左上にサイトのタイトルと説明文を表示
TOPページへのリンク
index.php
<header>
<a href=“<?php echo esc_url( home_url( ‘/’ ) ); ?>”>
<h1><?php bloginfo(‘name’); ?>
</a>
<p><?php bloginfo(‘description’); ?></p>
</header>
(例)例えば左上にサイトのタイトルと説明文を表示
おまじないの入力
index.php
? wp_head()………</head>の直前に記述
? wp_footer()……</body>の直前に記述
<?php wp_head(); ?>
</head>
<?php wp_footer(); ?>
</body>
</html>
投稿記事を表示
index.php
<?php if (have_posts() ): ?>
<?php while ( have_posts() ) : the_post(); ?>
<article class=“blog-top”>
<h3><a href=“<?php the_permalink(); ?>”><?php the_title(); ?></a></h3>
<div class=“entry-meta”><?php the_time(Y年n月j日); ?></div>
<?php the_content(); ?>
<div class=“more-link”><a href=“<?php the_permalink();>”>続きを読む</a></div>
</article>
<?php endwhile; ?>
<?php endif; ?>
投稿記事の抜粋を表示
index.php
<?php if (have_posts() ): ?>
<?php while ( have_posts() ) : the_post(); ?>
<article class=“blog-top”>
<h3><a href=“<?php the_permalink(); ?>”><?php the_title(); ?></a></h3>
<?php if ( is_front_page() ) : ?>
<?php the_excerpt(); ?>
<div class=“more-link”><a href=“<?php the_permalink();>”>続きを読む</a></div>
<?php else : ?>
<?php the_content(); ?>
<?php endif; ?>
</article>
<?php endwhile; ?>
<?php endif; ?>
記事がない時のエラーメッセージを表示
index.php
<?php if (have_posts() ): ?>
<?php while ( have_posts() ) : the_post(); ?>
<article class=“blog-top”>
</article>
<php endwhile; ?>
<?php else : ?>
<p>ページが見つかりませんでした。</p>
<?php endif; ?>
?
?
?
?
ヘッダ?フッタ?サイドバーの分割
index.phpのヘッダ?フッタ?サイドバーの部分を分割し、
別のファイルにして、汎用性を高めましょう。
例として、次の図のように分割します。
ヘッダ
コンテンツ サイドバー
フッタ
header.php(新規作成)→index.phpからヘッダ部分を持ってくる
footer.php(新規作成)→index.phpからフッタ部分を持ってくる
sidebar.php(新規作成)→index.phpからサイドバーの部分を
持ってくる
『header.php』『footer.php』『sidebar.php』の作成
index.php
header.php?footer.php?sidebar.phpから持って行った部分に以下の内容を記述
<?php get_header(); ?>
<?php get_footer(); ?>
<?php get_sidebar(); ?>
各種ページの作成
? トップページ…front-page.php
? 個別記事ページ…single.php
? 固定ページ…page.php
【参考】
?テンプレート阶层について
http://wpdocs.osdn.jp/テンプレート阶层
(このスライドの12?17ページ)
?テンプレート阶层の図
http://wpdocs.osdn.jp/wiki/images/wp-template-hierarchy.jpg
index.phpを参考に、トップページ?個別記事ページ?固定ページを
作成してみましょう
まとめ
今回、index.htmlから関数を付け足していき、表示がどうなるのか、
ソースがどう変化するのかを見ていただきました。
関数を追加する際、真っ白な画面が出てしまう場合がありますが、
その時はHTMLソースを見て、途中まで書かれていれば、その後の関
数の間違いがある。
何も書かれていなければ、ifやwhileの文に間違いがある。
など、判別できることがありますので、落ち着いて見直してみて下
さい。(これは自分自身への言葉でもあるのですが)
本当にお疲れ様でした
参考ページ
? style.cssのヘッダ名
http://wpdocs.osdn.jp/ファイルヘッダー
? get_stylesheet_uri()
http://wpdocs.osdn.jp/関数リファレンス/get_stylesheet_uri
? get_stylesheet_directory_uri()
http://wpdocs.osdn.jp/関数リファレンス/get_stylesheet_directory_uri
? bloginfo()
http://wpdocs.osdn.jp/テンプレートタグ/bloginfo
? home_url()
http://wpdocs.osdn.jp/テンプレートタグ/home_url
? esc_url()
http://wpdocs.osdn.jp/関数リファレンス/esc_url
? トップページへのリンクでhome_urlをesc_urlでエスケープしてるのかについて
https://www.l2tp.org/archives/5661
http://morilog.com/wordpress/tips/wp_escape/
参考ページ
? wp_head()
http://wpdocs.osdn.jp/関数リファレンス/wp_head
? wp_footer()
http://wpdocs.osdn.jp/テンプレートタグ/wp_footer
? スライド28ページの投稿記事のループについて
http://wpdocs.osdn.jp/ループ
? the_title()
http://wpdocs.osdn.jp/テンプレートタグ/the_title
? the_content()
http://wpdocs.osdn.jp/テンプレートタグ/the_content
? the_permalink()
http://wpdocs.osdn.jp/テンプレートタグ/the_permalink
? the_time(Y年n月j日)
http://wpdocs.osdn.jp/テンプレートタグ/the_time
http://wpdocs.osdn.jp/日付と時刻の書式
参考ページ
? 条件分岐タグ
http://wpdocs.osdn.jp/条件分岐タグ
? is_front_page()
http://wpdocs.osdn.jp/関数リファレンス/is_front_page
? get_header()
http://wpdocs.osdn.jp/関数リファレンス/get_header
? get_footer()
http://wpdocs.osdn.jp/関数リファレンス/get_footer
? get_sidebar()
http://wpdocs.osdn.jp/関数リファレンス/get_sidebar
各関数やタグのページ終盤に【ソースファイル】とあります。
WordPressのコアファイルのどこにあるのか載っていますので参考に

More Related Content

静的贬罢惭尝ファイルを奥辞谤诲笔谤别蝉蝉のテーマにするワークショップ