Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
第18回WordBench羽田ーカスタムフィールドを活用しよう
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
ryuh_a
March 26, 2018
Technology
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
第18回WordBench羽田ーカスタムフィールドを活用しよう
LT資料
開催日:2018年3月25日
ryuh_a
March 26, 2018
More Decks by ryuh_a
See All by ryuh_a
Wordpressのセキュリティーについて考える
ryuh_a
0
230
Other Decks in Technology
See All in Technology
HRC_Frontend_Conference_Fukuoka_2026.pdf
ts020
0
720
【技術的負債conf】事業成長に伴う技術的負債の説明責任とAIによるモニタリング、認知的負債について
i35_267
2
1.6k
GoにおけるFFIのこれまでとこれから
goccy
5
3.3k
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
23
15k
越境するなら専門用語を使うな高校校歌 / If you wanna cross border, you shouldn't use jargon
vtryo
0
140
AI de Idea
kawaguti
PRO
2
110
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
1
1.3k
新機種発売前に見直そう!端末移行で再ログインが要るアプリ・要らないアプリは何が違うのか 〜シームレスに再開できる設計と実装〜
zozotech
PRO
0
190
空間オーディオで過去の 自分(ゴースト)と競うランニング 〜HealthKitのルートを足音に変える実装〜
nao_randd
0
210
顧客に向き合う開発組織へ。リアーキテクチャとフィーチャーチーム化で挑む組織改革
safie
0
1.9k
開発投資の期待値を上げるプロダクトロードマップづくり ~プロダクトエンジニアが越境して事業を伸ばす~
kekekenta
1
160
20260912_スクラムにジェネラリストは必要か
ryugen04
0
420
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
200
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Utilizing Notion as your number one productivity tool
mfonobong
4
590
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
The Cult of Friendly URLs
andyhume
79
7k
Test your architecture with Archunit
thirion
2
2.4k
Code Review Best Practice
trishagee
74
20k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
202
76k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Transcript
第18回WordBench羽田 カスタムフィールドを活用しよう。 (補足追記版) Ryu
自己紹介 • ペットショップさくら 子犬の仲介販売サイトを運営しています。 http://pet-shop-sakura.com/ 動物取扱業登録 【販売】川崎市24幸販第1号 【保管】川崎市24幸保第1号 • 40代のおっさんです。
得意分野・趣味など • ネットワーク系(IPルーティング、VPNなど) • 機械いじり(事務機器など) • 犬猫の飼育指導 • 一眼レフ(Canon EOS
KISS X7i) • WordPress(勉強中) • Ruby on Rails(勉強を始めた超初心者) • ロードバイク
カスタムフィールドって何? WordPress Codex 「カスタムフィールドの使い方」によると WordPress には、投稿者が投稿に「カスタムフィールド」を追加できる機能がありま す。この任意の情報は「メタデータ」と呼ばれており・・・ http://wpdocs.osdn.jp/%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%95%E3% 82%A3%E3%83%BC%E3%83%AB%E3%83%89%E3%81%AE%E4%BD%BF%E3%81%84%E6%96% B9
つまり 任意の情報をメタデータとして、投稿に追加できる機能です。
何に使えるの? アイデア次第でいろいろなことに使えるかもしれません。 入力する場所が投稿記事と別れている為、記事を再編集するような場合(特に再編 集することがあらかじめわかっているような場合※1)に変更箇所を探す必要がなくな ります。 ※1:Example • ECサイトなどの商品のページで、ステータスが“販売中”→“売約済み”となるよう なもの •
ユーザーに対して入力箇所を制限したいような場合
例えば • サブループを使用して、複数の場所でデータを使用する • フラグをたてて、ステータスの変更をする • 固定ページ、投稿内で使用する • 他のプラグイン(Ex.Contact Form
7)と連携する ・・・・など
使い方(登録方法1)
使い方(登録方法2)
使い方(登録方法3) 新規追加より 名前 : helloworld 値 : 任意の値(例えば、 WordPressの世界にようこそ!)
使い方(値取得方法) カスタームフィールドに登録した値を取得する方法は、以下のようなものがあります。 1. ショートコードによる取得 2. WordPressのテンプレートファイルを編集する get_post_meta($post_id, $key, $single); 3.
プラグインを使用する 例):Advanced Custom Fields
使い方(値取得:ショートコード1) テーマ(※1)functions.phpに以下のようなショートコードを記述する。 function getHelloworld(){ $helloworld = esc_html( get_post_meta( get_the_ID(), ‘helloworld',
true ) ); return $helloworld; } add_shortcode('viewHelloworld', 'getHelloworld'); ※1 functions.phpはテーマを更新すると上書きされますので、子テーマを作成するな ど対策が必要です。
使い方(値取得:ショートコード2) 投稿記事に以下のショートコードを追加して、公開すると、カスタムフィールドに登録 した値が表示されると思います。 [viewHelloworld]
使い方(値取得:テンプレートファイル編集) テンプレートファイル内でカスタムフィールドの値を取得する場合、以下の関数を利用 します。 get_post_meta($post_id, $key, $single); ※ループ内で使用すること ※詳細はWordPress Codex 日本語版をご参照ください。
http://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3% 83%AC%E3%83%B3%E3%82%B9/get_post_meta
使い方(値取得:テンプレートファイル編集1-1) カスタムフィールドに登録したURLを使いリンクボタンを追加する
使い方(値取得:テンプレートファイル編集1-2) <ブラウザで表示した場合>
使い方(値取得:テンプレートファイル編集1-3) < Source code > <?php // IFでカスタムフィールドに値が入っている場合のみHTMLタグを追加 if( get_post_meta(
$post->ID, 'puppy-db-url', true ) ): ?> <!-- 追加するボタン(リンク)のHTMLタグ --> <div class="puppy-db-link"><a href="<?php echo esc_url( get_post_meta( $post->ID, 'puppy-db-url', true ) ); ?>" title="<?php the_title(); ?>" target="_blank">詳細・お問合せはこちら</a></div> <?php // IFここまで endif; ?>
使い方(値取得:テンプレートファイル編集2-1) カスタムフィールドにフラグを登録してステータスを変更する場合
使い方(値取得:テンプレートファイル編集2-2) <ブラウザ表示>
使い方(値取得:テンプレートファイル編集2-3) < Source code > <!-- IF文:値が”1”ではない場合 --> <?php if(
!get_post_meta( $post->ID, 'selling-state', true ) == '1' ): ?> <!-- 追加されるHTMLタグ --> <div class="puppy-info-sale"><?php echo esc_html( 'オーナー様募集中' ); ?></div> <!-- 値が”1”の場合 --> <?php else: ?> <!-- 追加されるHTMLタグ --> <div class="puppy-info-sold-out"><?php echo esc_html( 'オーナー様決定しました。' ); ?></div> <?php endif; ?>
使い方(Contact Form 7との連携1) カスタムフィールドの値をコンタクトフォームで使用する場合
使い方(Contact Form 7との連携2) コンタクトフォームの編集に以下のコードを登録します。 <p class="no-display">子犬ID番号<br /> [text* puppy-id default:post_meta]</p>
※HTMLタグの<p>タグは別のタグでも問題ありません。 上記の場合、CSSで非表示(display: none;)にしています。
ご清聴ありがとうございました。 次回:WordPressのセキュリティー対策について考える おしまい