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
WordPress テーマ作成超入門
Search
RyoUozumi
June 09, 2018
Technology
0
170
WordPress テーマ作成超入門
@WordBench Nagoya 201806
How-to-create-wp-theme-firststep-WBN201806
RyoUozumi
June 09, 2018
Tweet
Share
More Decks by RyoUozumi
See All by RyoUozumi
ブログをスタートする人にオススメのプラグインとエディタの紹介
ryoraspp
0
120
ブロックエディター(Gutenberg)をもっと活用しよう! Aichi WordPress Meetup #5
ryoraspp
0
73
WordPress テーマ作成超入門
ryoraspp
0
71
WordPressを使う上で知っておくと 幸せ になること
ryoraspp
0
87
WordPressの関数から踏む一歩は初心者にとって大きな一歩! [WordFes Nagoya 2017 5216教室] #WordFes #WordFes03
ryoraspp
0
1.8k
大学生によるWordPress活用事例紹介 -1-大学生にこそ普及してほしいWordPress
ryoraspp
0
100
Other Decks in Technology
See All in Technology
LangSmith×Webhook連携で実現するプロンプトドリブンCI/CD
sergicalsix
1
130
2025-06-26 GitHub CopilotとAI駆動開発:実践と導入のリアル
fl_kawachi
1
190
ひとり情シスなCTOがLLMと始めるオペレーション最適化 / CTO's LLM-Powered Ops
yamitzky
0
450
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
5
4.3k
データプラットフォーム技術におけるメダリオンアーキテクチャという考え方/DataPlatformWithMedallionArchitecture
smdmts
5
660
CursorによるPMO業務の代替 / Automating PMO Tasks with Cursor
motoyoshi_kakaku
1
530
2025-06-26_Lightning_Talk_for_Lightning_Talks
_hashimo2
2
100
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.9k
使いたいMCPサーバーはWeb APIをラップして自分で作る #QiitaBash
bengo4com
0
990
米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
2
1.2k
Fabric + Databricks 2025.6 の最新情報ピックアップ
ryomaru0825
1
150
怖くない!はじめてのClaude Code
shinya337
0
240
Featured
See All Featured
A designer walks into a library…
pauljervisheath
207
24k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Raft: Consensus for Rubyists
vanstee
140
7k
Making Projects Easy
brettharned
116
6.3k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Practical Orchestrator
shlominoach
188
11k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
800
How GitHub (no longer) Works
holman
314
140k
How to Ace a Technical Interview
jacobian
277
23k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
Automating Front-end Workflow
addyosmani
1370
200k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Transcript
WORDPRESS ςʔϚ࡞ೖ ڕॅྒɹ@WordBench Nagoya 201806
ࣗݾհ • ڕॅྒ • ࠓͦ͜ଔۀ͍ͨ͠௨৴ͷେੜʢӳޠΛओʹษڧதʣ • δϟζτϥϯϖοτͱΨδΣοτ͕͖ • 20138݄29ΑΓݱryo.nagoyaͰWordPressσϏϡʔ •
Twitter:@ryoraspp • Facebook: https://www.facebook.com/blog.ryoraspp/
NHKʹग़ԋͨ͜͠ͱ
ͦͦςʔϚͬͯԿʁ
צҧ͍ͯ͠͠·͏ͷ
–ίτόϯΫ(σδλϧେࣙઘͷղઆ) “ςʔϚʢʪυΠπʫThemaʣ ߦಈ࡞ͳͲͷجௐͱͳΔߟ͑ɻओɻ·ͨɺจͷɺָۂͷओટͳͲɻ ʮڞಉݚڀͷςʔϚΛܾΊΔʯʮʹͱͬͯۀࡦ͕ࠓޙͷςʔϚʹͳΔʯ ग़యɹখֶؗ ”
ͬͪ͜ͷςʔϚͱ͍͏ҙຯͰͳ ͍ʂ ύιίϯۀքͰͷςʔϚͷҙຯ
–ίτόϯΫʢύιίϯͰࠔͬͨͱ͖ʹ։͘ຊͷղઆʣ “ςʔϚ ιϑτͷഎܠϘλϯɺϑΥϯτͳͲͷσβΠϯΛ·ͱΊͯมߋ͠ɺݟͨΛม͑Δػೳͷ͜ͱͰ͢ɻʮεΩϯʯ ͱݺͿ͜ͱ͋Γ·͢ɻΟϯυζ8ͷσεΫτοϓʹʮݸਓઃఆʯʹςʔϚͷઃఆ͕͋Γ·͢ɻ ग़యɹ(ג)ே৽ฉग़൛ൃߦʮύιίϯͰࠔͬͨͱ͖ʹ։͘ຊʯύιίϯͰࠔͬͨͱ͖ʹ։͘ຊʹ͍ͭͯɹใ ”
ͭ·ΓWORDPRESͷ ςʔϚ ݟͨΛม͑ΔػೳͰ͢ʂ
ςϯϓϨʔτ֊
https://wpdocs.osdn.jp/wiki/images/wp-template-hierarchy.jpg
HTMLͷ߹ <header> <body> <footer> style.css
ςʔϚͷ߹ header.php single.php footer.php style.css sidebar.php index.php page.php front-page.php archive.php
404.php functions.php
• index.php ͷςϯϓϨʔτϑΝΠϧ • archive.php ΞʔΧΠϒϖʔδΛදࣔ͢ΔςϯϓϨʔτϑΝΠϧ • single.php ݸผߘϖʔδΛදࣔ͢ΔςϯϓϨʔτϑΝΠϧ •
page.php ݻఆϖʔδΛදࣔ͢ΔςϯϓϨʔτϑΝΠϧ • front-page.php αΠτϑϩϯτϖʔδΛදࣔ͢ΔςϯϓϨʔτϑΝΠϧ • sidebar.php αΠυόʔΛදࣔ͢ΔςϯϓϨʔτϑΝΠϧ • header.php <?php get_header(); ?> ͷத • footer.php <?php get_footer(); ?> ͷத • functions.php ςʔϚͷػೳʢϓϥάΠϯͱಉ͜͡ͱ͕Ͱ͖Δʣ
͜͜Ͱ͜Μͳ͜ͱ͕ٙੜ·Ε·͢
ςϯϓϨʔτϑΝΠϧʹ ػೳ͔͚Δ functions.phpʹ ϓϥάΠϯʹ
ͱ͍͏͜ͱʂ
ςϯϓϨʔτϑΝΠϧʹػೳΛ͔͖͍ͨؾ࣋ͪ ͱ functions.phpʹػೳΛ͔͖͔͍ͨؾ࣋ͪ ͱ ϓϥάΠϯʹػೳΛॻ͖͍ͨؾ࣋ͪ ͕ ಉ࣌ʹ༙͖ىͬͯ͜͠·͏
ରॲ๏ • ςϯϓϨʔτϑΝΠϧʹςϯϓϨʔτλά Λओʹ • functions.phpʹςʔϚͷػೳΛ͔͘ • ϓϥάΠϯʹςʔϚʹؔ͢ΔҎ֎ͷ͜ͱΛ͔ ͘
͔͠͠ॳ৺ऀʹHOOKSͱ͍͏ٕज़Λ͏ͷ ͍͠ͷͰɺجૅతͳςΫχοΫΛʹ͚ͭΔ· ͰςʔϚςʔϚͷͨΊͷؔʢςϯϓϨʔτ λάʣΛ͔͘Α͏զຫ͠·͠ΐ͏ɻ
ςʔϚΛ࡞͍ͬͯ͜͏ʂ
ςʔϚΛ࡞͢Δલʹ • WordPressͷσόοάϞʔυΛ༗ޮԽ • ϓϥάΠϯʢShow Current Template ຢWP Extend ToolbarʣΛΠϯετʔϧ+༗ޮԽ
• ςʔϚϢχοτςετͷΠϯϙʔτ • style.cssͷίϝϯτʹςʔϚʹؔ͢Δ༰Λهड़
STYLE.CSSΛॻ͍ͯΈΑ͏ /* Theme Name: ςʔϚͷ໊લ Theme URI: ςʔϚͷαΠτ Description: ςʔϚͷઆ໌
Version: 0.1 όʔδϣϯ1ʹͯ͠(ͤͯ͞)ެ։͠Α͏ʂ Author: WBN ࣗͷ໊લΛΒ͠ΊΕΔ Author URI: ࣗͷαΠτ License: GNU General Public License v2 or later */ •
ςʔϚΛ࡞͢Δલʹ • <?php get_header(); ?> • header.phpΛಡΈࠐΉ • <?php get_sidebar();
?> • sidebar.phpΛಡΈࠐΉ • <?php get_footer(); ?> • footer.phpΛಡΈࠐΉ
Τεέʔϓॲཧ • Τεέʔϓॲཧͷඞཁੑ • ͠URLʹ༗ͳϦϯΫΛೖྗ͞ΕͯɺແԽͰ͖ɺXSSΛࢭͰ͖Δ • <?php echo esc_url( home_url(
'/' ) ); ?> • ྫ:<script>ѱ͍.js</script> • ݕࡧཝίϝϯτཝʹ͔͔Εͯ • <script>ѱ͍.js</script> • ͱͳΓѱ͍Javascript͕ແޮԽ͞ΕΔ •
HEADER.PHPΛॻ͍ͯΈΑ͏ • <!DOCTYPE html> • <html <?php language_attributes(); ?> •
<head> • <meta charset="<?php bloginfo( 'charset' ); ?>”> • <?php wp_head(); ?> • </head>
NAVIGATION • wp_nav_menuʢʣΛ༻͢Δ • ԼهΛfunctions.phpʹ͔͘ • register_nav_menus( array( • 'menu-1'
=> esc_html__( 'Primary', 'wbn' ), • ) );
FOOTER.PHPΛॻ͍ͯΈΑ͏ • Copyright(ஶ࡞ݖදࣔʣ • <?php wp_footer() ?> • </body> •
</html>
SINGLE.PHPΛॻ͍ͯΈΑ͏ • while ( have_posts() ) : • the_post(); •
the_post_navigation(); • comments_template();
SIDEBAR.PHPΛॻ͍ͯΈΑ͏ • <aside id="secondary" class="widget-area"> • <?php dynamic_sidebar( 'sidebar-1' );
? > • </aside>
FUNCTIONS.PHP • add_theme_support( 'title-tag' ); • λΠτϧλάΛՃͯ͘͠ΕΔ • add_theme_support( 'post-thumbnails'
); • ΞΠΩϟονը૾Λొ
FUNTIODNS.PHP 2 • CSSjsͳͲΛfunctions.phpͰཧ͍ͨ͠߹ • function wbn_scripts() { • wp_enqueue_style(
'wbn-style', get_stylesheet_uri() ); • wp_enqueue_script( 'wbn-navigation', get_template_directory_uri() . '/js/ navigation.js', array(), '20151215', true ); • wp_enqueue_script( 'wbn-skip-link-focus-fix', get_template_directory_uri() . '/js/skip-link-focus-fix.js', array(), '20151215', true );
FUNCTIONS.PHP 3 • ઌ΄Ͳ࡞ͬͨαΠυόʔΛfuntions.phpʹొ • function wbn_widgets_init() { • register_sidebar(
array( • 'name' => esc_html__( 'Sidebar', 'wbn' ), • 'id' => 'sidebar-1', • 'description' => esc_html__( 'Add widgets here.', 'wbn' ), • 'before_widget' => '<section id="%1$s" class="widget %2$s">', • 'after_widget' => '</section>', • 'before_title' => '<h2 class="widget-title">', • 'after_title' => '</h2>', • ) );
॓ɿ͜ͷςϯϓϨʔτΛ ͔͍ͯΈΑ͏ • page.phpʢݻఆϖʔδΛදࣔ͢ΔςϯϓϨʔτʣ • singular.php(page.phpͱsingle.php͕ແ͍ࡍʹಡΈࠐ·ΕΔ (4.3લindex.php͕ಡΈࠐ· Εͯͨ)) • index.php
• archive.php • category.php • author.php <?php get_template_part( ‘template/page’); ?> ʮςϯϓϨʔτ ύʔπʯͰݕࡧ
THEME CHECK WordPress.org ͰఆΊΒΕ͍ͯΔςʔϚͷ࣭ ʹؔ͢ΔΨΠυϥΠϯʯΛຬ͍ͨͯ͠Δ͔Λ νΣοΫͰ͖ΔϓϥάΠϯ
None
͝ਗ਼ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ʂ
͜ͷεϥΠυॳ৺ऀ͚ʹ࡞ͬͨͷͰͳ͘ɺ ॳ৺ऀ͕࡞ͬͨͷͳͷͰؒҧͬͯͨΓɺͨ͠ Β͝ࢦఠ͍ͩ͘͞ ΑΖ͓͘͠ئ͍͠·͢ɻ