Submit Search
Upload
これからのpre_get_postsの話をしよう
•
38 likes
•
66,838 views
Hishikawa Takuro
Follow
第24回WordBench神戸で話した資料です。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 99
Download now
Download to read offline
Recommended
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)
OWASP Nagoya
Definir un projet professionnel qui vous ressemble 1
Definir un projet professionnel qui vous ressemble 1
Dominique GARREAU de LOUBRESSE
Comment Augmenter Sa Confiance En Soi Et Vaincre Le Trac ?
Comment Augmenter Sa Confiance En Soi Et Vaincre Le Trac ?
CoachDrague
Git github tortoise git
Git github tortoise git
maxrosan
Construire son projet professionnel
Construire son projet professionnel
NOREB2000
Projet Professionnel et Personnel
Projet Professionnel et Personnel
Hemant Ramphul
IT エンジニアのための 流し読み Windows 10 - IE11 のサポート終了と Microsoft Edge について
IT エンジニアのための 流し読み Windows 10 - IE11 のサポート終了と Microsoft Edge について
TAKUYA OHTA
Parcours citoyen : Parler en public
Parcours citoyen : Parler en public
docs ducdi
Recommended
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)
OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)
OWASP Nagoya
Definir un projet professionnel qui vous ressemble 1
Definir un projet professionnel qui vous ressemble 1
Dominique GARREAU de LOUBRESSE
Comment Augmenter Sa Confiance En Soi Et Vaincre Le Trac ?
Comment Augmenter Sa Confiance En Soi Et Vaincre Le Trac ?
CoachDrague
Git github tortoise git
Git github tortoise git
maxrosan
Construire son projet professionnel
Construire son projet professionnel
NOREB2000
Projet Professionnel et Personnel
Projet Professionnel et Personnel
Hemant Ramphul
IT エンジニアのための 流し読み Windows 10 - IE11 のサポート終了と Microsoft Edge について
IT エンジニアのための 流し読み Windows 10 - IE11 のサポート終了と Microsoft Edge について
TAKUYA OHTA
Parcours citoyen : Parler en public
Parcours citoyen : Parler en public
docs ducdi
Présentation Personal Branding Féminin by SG PBaumeister
Présentation Personal Branding Féminin by SG PBaumeister
Pascale Baumeister
用 C# 與 .NET 也能打造機器學習模型:你所不知道的 ML.NET 初體驗
用 C# 與 .NET 也能打造機器學習模型:你所不知道的 ML.NET 初體驗
Ko Ko
Storytelling ... mode d'emploi
Storytelling ... mode d'emploi
François - Sylvie MEULEMAN
Les secrets dune équipe de travail performante
Les secrets dune équipe de travail performante
Drake International
Quelles sont mes qualités?
Quelles sont mes qualités?
Pascal KUFEL
HTML İşaretleme Diline Giriş Eğitimleri 1
HTML İşaretleme Diline Giriş Eğitimleri 1
Univerist
そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?
Yuta Matsumura
Présentation PBaumeister - Personal Branding - Printemps du Networking - MEDE...
Présentation PBaumeister - Personal Branding - Printemps du Networking - MEDE...
Pascale Baumeister
Carte mentale de la méthode Motiva
Carte mentale de la méthode Motiva
Prof. Zwi Segal
Introduction au Personal Branding
Introduction au Personal Branding
KOKOA BUTTER
Maitriser l'assertivite.pptx
Maitriser l'assertivite.pptx
Vales8
Comment rédiger un mail
Comment rédiger un mail
antjosegarcia
Inside WebM
Inside WebM
mganeko
ゲームインフラコンテナ実践導入
ゲームインフラコンテナ実践導入
Hiroki Tamiya
安全なPHPアプリケーションの作り方2016
安全なPHPアプリケーションの作り方2016
Hiroshi Tokumaru
Rakutenとsreと私 yanagimoto koichi
Rakutenとsreと私 yanagimoto koichi
Rakuten Group, Inc.
hardningproject(公開用).pdf
hardningproject(公開用).pdf
Hamamoto Tsuneyoshi
You Don't Know Query (WordCamp Netherlands 2012)
You Don't Know Query (WordCamp Netherlands 2012)
andrewnacin
WordPressで投稿記事情報の取得方法
WordPressで投稿記事情報の取得方法
regret raym
クライアントに感謝されるCMS導入のコツ
クライアントに感謝されるCMS導入のコツ
Hishikawa Takuro
CMS導入で企業のWebサイト運営はこう変わる!
CMS導入で企業のWebサイト運営はこう変わる!
Hishikawa Takuro
あなたがWordCamp Kansai 2014に行くべき5つの理由
あなたがWordCamp Kansai 2014に行くべき5つの理由
Kojiro Fukazawa
More Related Content
What's hot
Présentation Personal Branding Féminin by SG PBaumeister
Présentation Personal Branding Féminin by SG PBaumeister
Pascale Baumeister
用 C# 與 .NET 也能打造機器學習模型:你所不知道的 ML.NET 初體驗
用 C# 與 .NET 也能打造機器學習模型:你所不知道的 ML.NET 初體驗
Ko Ko
Storytelling ... mode d'emploi
Storytelling ... mode d'emploi
François - Sylvie MEULEMAN
Les secrets dune équipe de travail performante
Les secrets dune équipe de travail performante
Drake International
Quelles sont mes qualités?
Quelles sont mes qualités?
Pascal KUFEL
HTML İşaretleme Diline Giriş Eğitimleri 1
HTML İşaretleme Diline Giriş Eğitimleri 1
Univerist
そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?
Yuta Matsumura
Présentation PBaumeister - Personal Branding - Printemps du Networking - MEDE...
Présentation PBaumeister - Personal Branding - Printemps du Networking - MEDE...
Pascale Baumeister
Carte mentale de la méthode Motiva
Carte mentale de la méthode Motiva
Prof. Zwi Segal
Introduction au Personal Branding
Introduction au Personal Branding
KOKOA BUTTER
Maitriser l'assertivite.pptx
Maitriser l'assertivite.pptx
Vales8
Comment rédiger un mail
Comment rédiger un mail
antjosegarcia
Inside WebM
Inside WebM
mganeko
ゲームインフラコンテナ実践導入
ゲームインフラコンテナ実践導入
Hiroki Tamiya
安全なPHPアプリケーションの作り方2016
安全なPHPアプリケーションの作り方2016
Hiroshi Tokumaru
Rakutenとsreと私 yanagimoto koichi
Rakutenとsreと私 yanagimoto koichi
Rakuten Group, Inc.
hardningproject(公開用).pdf
hardningproject(公開用).pdf
Hamamoto Tsuneyoshi
What's hot
(17)
Présentation Personal Branding Féminin by SG PBaumeister
Présentation Personal Branding Féminin by SG PBaumeister
用 C# 與 .NET 也能打造機器學習模型:你所不知道的 ML.NET 初體驗
用 C# 與 .NET 也能打造機器學習模型:你所不知道的 ML.NET 初體驗
Storytelling ... mode d'emploi
Storytelling ... mode d'emploi
Les secrets dune équipe de travail performante
Les secrets dune équipe de travail performante
Quelles sont mes qualités?
Quelles sont mes qualités?
HTML İşaretleme Diline Giriş Eğitimleri 1
HTML İşaretleme Diline Giriş Eğitimleri 1
そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?
Présentation PBaumeister - Personal Branding - Printemps du Networking - MEDE...
Présentation PBaumeister - Personal Branding - Printemps du Networking - MEDE...
Carte mentale de la méthode Motiva
Carte mentale de la méthode Motiva
Introduction au Personal Branding
Introduction au Personal Branding
Maitriser l'assertivite.pptx
Maitriser l'assertivite.pptx
Comment rédiger un mail
Comment rédiger un mail
Inside WebM
Inside WebM
ゲームインフラコンテナ実践導入
ゲームインフラコンテナ実践導入
安全なPHPアプリケーションの作り方2016
安全なPHPアプリケーションの作り方2016
Rakutenとsreと私 yanagimoto koichi
Rakutenとsreと私 yanagimoto koichi
hardningproject(公開用).pdf
hardningproject(公開用).pdf
Viewers also liked
You Don't Know Query (WordCamp Netherlands 2012)
You Don't Know Query (WordCamp Netherlands 2012)
andrewnacin
WordPressで投稿記事情報の取得方法
WordPressで投稿記事情報の取得方法
regret raym
クライアントに感謝されるCMS導入のコツ
クライアントに感謝されるCMS導入のコツ
Hishikawa Takuro
CMS導入で企業のWebサイト運営はこう変わる!
CMS導入で企業のWebサイト運営はこう変わる!
Hishikawa Takuro
あなたがWordCamp Kansai 2014に行くべき5つの理由
あなたがWordCamp Kansai 2014に行くべき5つの理由
Kojiro Fukazawa
WordPressがつくりだすCSSを利用する 初級編
WordPressがつくりだすCSSを利用する 初級編
Kojiro Fukazawa
a-blog cms 2.0 を活用した新しいWeb制作のワークフロー
a-blog cms 2.0 を活用した新しいWeb制作のワークフロー
Kazumich YAMAMOTO
ユーザーにやさしい管理画面をつくるために。テーマ制作者ができること 初級編【WordCamp Kansai 2014】
ユーザーにやさしい管理画面をつくるために。テーマ制作者ができること 初級編【WordCamp Kansai 2014】
Kojiro Fukazawa
町のウェブ屋があえて 「CMSの機能をダイエットする」 ことから提案する理由
町のウェブ屋があえて 「CMSの機能をダイエットする」 ことから提案する理由
Kojiro Fukazawa
concrete5で実践するリードナーチャリング
concrete5で実践するリードナーチャリング
株式会社ND&I しかたこうき
プロトタイプ時代の WordPressテーマの作り方・考え方
プロトタイプ時代の WordPressテーマの作り方・考え方
kenji goto
WordCamp Kansai 2015 - WordPress.org フォーラム参加のススメ
WordCamp Kansai 2015 - WordPress.org フォーラム参加のススメ
Kojiro Fukazawa
Concrete5で運用をデザイン
Concrete5で運用をデザイン
Atushi Sugiyama
これからのCMSマーケットトレンドとPHP (for fukuoka.php)
これからのCMSマーケットトレンドとPHP (for fukuoka.php)
株式会社ミツエーリンクス
フリーランスの事務机&お財布事情
フリーランスの事務机&お財布事情
Kojiro Fukazawa
エンジニアの為のWordPress入門 〜WordPressはWebAppプラットフォームです〜
エンジニアの為のWordPress入門 〜WordPressはWebAppプラットフォームです〜
Yuji Nojima
ノンプログラマーのためのカンタンWordPressテーマ作成入門 〜子テーマでテーマ作成&カスタマイズ〜
ノンプログラマーのためのカンタンWordPressテーマ作成入門 〜子テーマでテーマ作成&カスタマイズ〜
Mignon Style
クライアントと同じ方向を向くという事
クライアントと同じ方向を向くという事
kenji goto
HTML5/JavaScriptで作るAndroidアプリ開発seminar
HTML5/JavaScriptで作るAndroidアプリ開発seminar
kujirahand kujira
進化するオープンソース・エンタープライズCMSがWeb戦略を変える
進化するオープンソース・エンタープライズCMSがWeb戦略を変える
Hishikawa Takuro
Viewers also liked
(20)
You Don't Know Query (WordCamp Netherlands 2012)
You Don't Know Query (WordCamp Netherlands 2012)
WordPressで投稿記事情報の取得方法
WordPressで投稿記事情報の取得方法
クライアントに感謝されるCMS導入のコツ
クライアントに感謝されるCMS導入のコツ
CMS導入で企業のWebサイト運営はこう変わる!
CMS導入で企業のWebサイト運営はこう変わる!
あなたがWordCamp Kansai 2014に行くべき5つの理由
あなたがWordCamp Kansai 2014に行くべき5つの理由
WordPressがつくりだすCSSを利用する 初級編
WordPressがつくりだすCSSを利用する 初級編
a-blog cms 2.0 を活用した新しいWeb制作のワークフロー
a-blog cms 2.0 を活用した新しいWeb制作のワークフロー
ユーザーにやさしい管理画面をつくるために。テーマ制作者ができること 初級編【WordCamp Kansai 2014】
ユーザーにやさしい管理画面をつくるために。テーマ制作者ができること 初級編【WordCamp Kansai 2014】
町のウェブ屋があえて 「CMSの機能をダイエットする」 ことから提案する理由
町のウェブ屋があえて 「CMSの機能をダイエットする」 ことから提案する理由
concrete5で実践するリードナーチャリング
concrete5で実践するリードナーチャリング
プロトタイプ時代の WordPressテーマの作り方・考え方
プロトタイプ時代の WordPressテーマの作り方・考え方
WordCamp Kansai 2015 - WordPress.org フォーラム参加のススメ
WordCamp Kansai 2015 - WordPress.org フォーラム参加のススメ
Concrete5で運用をデザイン
Concrete5で運用をデザイン
これからのCMSマーケットトレンドとPHP (for fukuoka.php)
これからのCMSマーケットトレンドとPHP (for fukuoka.php)
フリーランスの事務机&お財布事情
フリーランスの事務机&お財布事情
エンジニアの為のWordPress入門 〜WordPressはWebAppプラットフォームです〜
エンジニアの為のWordPress入門 〜WordPressはWebAppプラットフォームです〜
ノンプログラマーのためのカンタンWordPressテーマ作成入門 〜子テーマでテーマ作成&カスタマイズ〜
ノンプログラマーのためのカンタンWordPressテーマ作成入門 〜子テーマでテーマ作成&カスタマイズ〜
クライアントと同じ方向を向くという事
クライアントと同じ方向を向くという事
HTML5/JavaScriptで作るAndroidアプリ開発seminar
HTML5/JavaScriptで作るAndroidアプリ開発seminar
進化するオープンソース・エンタープライズCMSがWeb戦略を変える
進化するオープンソース・エンタープライズCMSがWeb戦略を変える
Similar to これからのpre_get_postsの話をしよう
Theme review-guidelines wckobe2013
Theme review-guidelines wckobe2013
hiratatsuya
WordPressでオリジナルサイトを作るための最初の一歩的なカスタマイズテクニック
WordPressでオリジナルサイトを作るための最初の一歩的なカスタマイズテクニック
Takashi Uemura
WordPress公式テーマ登録のための5ステップ
WordPress公式テーマ登録のための5ステップ
Mignon Style
WordPressのテーマ制作ライブ授業
WordPressのテーマ制作ライブ授業
webcampusschoo
Bootstrapを使って効率よくWordPressオリジナルテーマを作る
Bootstrapを使って効率よくWordPressオリジナルテーマを作る
Yoshinori Kobayashi
WordPress テーマ Habakiri と公式ディレクトリへのテーマ登録
WordPress テーマ Habakiri と公式ディレクトリへのテーマ登録
タカシ キタジマ
What's new! TwentyThirteen + WordPress3.6
What's new! TwentyThirteen + WordPress3.6
Takashi Uemura
4時間まったりWordPressテーマ作成講座
4時間まったりWordPressテーマ作成講座
Shinichi Nishikawa
第2回こけむさズword press部
第2回こけむさズword press部
Yuki Suzuki
2014 01-11-tdc-6th-anniversary
2014 01-11-tdc-6th-anniversary
Chieko Aihara
Wordpress カスタム投稿
Wordpress カスタム投稿
Takami Kazuya
ゼロからつくるWord pressテーマ第9回
ゼロからつくるWord pressテーマ第9回
Hitsuji
WordPress基礎講座6 テーマの作成実習
WordPress基礎講座6 テーマの作成実習
Akinori Kawamitsu
Similar to これからのpre_get_postsの話をしよう
(13)
Theme review-guidelines wckobe2013
Theme review-guidelines wckobe2013
WordPressでオリジナルサイトを作るための最初の一歩的なカスタマイズテクニック
WordPressでオリジナルサイトを作るための最初の一歩的なカスタマイズテクニック
WordPress公式テーマ登録のための5ステップ
WordPress公式テーマ登録のための5ステップ
WordPressのテーマ制作ライブ授業
WordPressのテーマ制作ライブ授業
Bootstrapを使って効率よくWordPressオリジナルテーマを作る
Bootstrapを使って効率よくWordPressオリジナルテーマを作る
WordPress テーマ Habakiri と公式ディレクトリへのテーマ登録
WordPress テーマ Habakiri と公式ディレクトリへのテーマ登録
What's new! TwentyThirteen + WordPress3.6
What's new! TwentyThirteen + WordPress3.6
4時間まったりWordPressテーマ作成講座
4時間まったりWordPressテーマ作成講座
第2回こけむさズword press部
第2回こけむさズword press部
2014 01-11-tdc-6th-anniversary
2014 01-11-tdc-6th-anniversary
Wordpress カスタム投稿
Wordpress カスタム投稿
ゼロからつくるWord pressテーマ第9回
ゼロからつくるWord pressテーマ第9回
WordPress基礎講座6 テーマの作成実習
WordPress基礎講座6 テーマの作成実習
More from Hishikawa Takuro
これから concrete5 を始める Web 制作者に伝えたい concrete5 と WordPress ここが一緒、ここが違う!
これから concrete5 を始める Web 制作者に伝えたい concrete5 と WordPress ここが一緒、ここが違う!
Hishikawa Takuro
エンジニアのための営業入門
エンジニアのための営業入門
Hishikawa Takuro
concrete5 CMS「運用」ケーススタディ
concrete5 CMS「運用」ケーススタディ
Hishikawa Takuro
Calypso動かしてみたよ!
Calypso動かしてみたよ!
Hishikawa Takuro
concrete5の紹介
concrete5の紹介
Hishikawa Takuro
concrete5 最新事情 2015
concrete5 最新事情 2015
Hishikawa Takuro
concrete5セミナー資料公開版
concrete5セミナー資料公開版
Hishikawa Takuro
WordPress使いのためのconcrete5入門
WordPress使いのためのconcrete5入門
Hishikawa Takuro
concrete5で行なうcms導入提案のポイント
concrete5で行なうcms導入提案のポイント
Hishikawa Takuro
concrete5.7のご紹介
concrete5.7のご紹介
Hishikawa Takuro
世界一即戦力なCMS
世界一即戦力なCMS
Hishikawa Takuro
はじめての concrete5 でウェブサイト作成〜入門チュートリアルガイド
はじめての concrete5 でウェブサイト作成〜入門チュートリアルガイド
Hishikawa Takuro
オープンソースCMSに学ぶ、前PSR時代のプロジェクトが脱レガシーする5つの方法
オープンソースCMSに学ぶ、前PSR時代のプロジェクトが脱レガシーする5つの方法
Hishikawa Takuro
Getting Started with WordPress JSON REST API
Getting Started with WordPress JSON REST API
Hishikawa Takuro
concrete5 in Japan 2014
concrete5 in Japan 2014
Hishikawa Takuro
concrete5 バージョン5.7のご紹介
concrete5 バージョン5.7のご紹介
Hishikawa Takuro
concrete5 5.6.3.1日本語版の紹介
concrete5 5.6.3.1日本語版の紹介
Hishikawa Takuro
concrete5デザインカスタマイズに必要なPHPの知識
concrete5デザインカスタマイズに必要なPHPの知識
Hishikawa Takuro
concrete5って何?〜Web制作者対象〜2014年版
concrete5って何?〜Web制作者対象〜2014年版
Hishikawa Takuro
コミュニティと仕事論
コミュニティと仕事論
Hishikawa Takuro
More from Hishikawa Takuro
(20)
これから concrete5 を始める Web 制作者に伝えたい concrete5 と WordPress ここが一緒、ここが違う!
これから concrete5 を始める Web 制作者に伝えたい concrete5 と WordPress ここが一緒、ここが違う!
エンジニアのための営業入門
エンジニアのための営業入門
concrete5 CMS「運用」ケーススタディ
concrete5 CMS「運用」ケーススタディ
Calypso動かしてみたよ!
Calypso動かしてみたよ!
concrete5の紹介
concrete5の紹介
concrete5 最新事情 2015
concrete5 最新事情 2015
concrete5セミナー資料公開版
concrete5セミナー資料公開版
WordPress使いのためのconcrete5入門
WordPress使いのためのconcrete5入門
concrete5で行なうcms導入提案のポイント
concrete5で行なうcms導入提案のポイント
concrete5.7のご紹介
concrete5.7のご紹介
世界一即戦力なCMS
世界一即戦力なCMS
はじめての concrete5 でウェブサイト作成〜入門チュートリアルガイド
はじめての concrete5 でウェブサイト作成〜入門チュートリアルガイド
オープンソースCMSに学ぶ、前PSR時代のプロジェクトが脱レガシーする5つの方法
オープンソースCMSに学ぶ、前PSR時代のプロジェクトが脱レガシーする5つの方法
Getting Started with WordPress JSON REST API
Getting Started with WordPress JSON REST API
concrete5 in Japan 2014
concrete5 in Japan 2014
concrete5 バージョン5.7のご紹介
concrete5 バージョン5.7のご紹介
concrete5 5.6.3.1日本語版の紹介
concrete5 5.6.3.1日本語版の紹介
concrete5デザインカスタマイズに必要なPHPの知識
concrete5デザインカスタマイズに必要なPHPの知識
concrete5って何?〜Web制作者対象〜2014年版
concrete5って何?〜Web制作者対象〜2014年版
コミュニティと仕事論
コミュニティと仕事論
Recently uploaded
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Recently uploaded
(10)
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
これからのpre_get_postsの話をしよう
1.
これからの by @HissyNC /
WordBench Kobe Group pre_get_posts: What's the Right Way to Use? pre_get_posts の話をしよう 1
2.
query_posts非推奨? 『query_postsを捨てよ、pre_get_postsを 使おう』というブログ記事を公開したとこ ろ、はてブなどでバズる。「いつの間にこ んなことになっていたんだよ…」「非推奨 だなんて!いますぐ直さなきゃ!」「急に 言われても困る」「query_posts使いまく ってたぜマジかよ…」「初心者にこの説明 はキツイでしょ」等々の意見が噴出。 2
3.
pre_get_postsとは何か? 結局、Codexのquery_postsのページに非 推奨の文字が入ったのは一時的なもので、 その後表現が修正され、「query_postsの 代わりにpre_get_postsフィルターを使う ことを強く推奨する」となった。ではなぜ 数多のWordPress本でも紹介されている query_postsが推奨されないのだろうか。 pre_get_postsフィルターとは何なのか。 3
4.
まず テンプレート とは何か 4
5.
データベースから 目的のデータを 取得して 表示するためのもの 5
6.
ではない 6
7.
テンプレートとは 表示するデータを 整形する ためのもの 7
8.
データを取得する 目的には 本来使わない 8
9.
どんなデータを 取得するかを 決定するのは 9
10.
URL 10
11.
?p=1 ?cat=1 ?cat=1&post_type=book&paged=2 クエリー・ストリングという $query_string 11
12.
URLで どのデータを取得 するかが決まる どんな処理を行う かが決まる 12
13.
ほかのCMS でも同じ 13
14.
URLがページの 内容を表している = インターネットの 基本的な概念 14
15.
ここで疑問 15
16.
Webページには たくさんのデータ が表示されており 各ページで共通の ものもある 16
17.
たとえば サイドバーに 新着記事を5件表示 URLとは関係なく どのページにもある 17
18.
記事の下に 関連記事を5件表示 URLとは間接的に関係 があるが 直接示しているもの ではない 18
19.
これらを サブクエリー と呼ぶ 19
20.
?p=1 ?cat=1 ?cat=1&post_type=book&paged=2 クエリー・ストリングと直接対応し ているデータのことを 20
21.
メインクエリー と呼ぶ 21
22.
メインクエリー と サブクエリー 違いを理解しよう 22
23.
トップページの内容と してニュースカテゴリ ーの記事を表示する メインクエリー or サブクエリー? 23
24.
トップページの内容と してニュースカテゴリ ーの記事を表示する メインクエリー or サブクエリー? 24
25.
WordPressでは、フロントページ は新着投稿か、固定ページか、 2択です。CMSとしてはそれだ け?と違和感がありますが、そう いう設計ですので、本来特定のカ テゴリーの記事をトップページで 表示するのはWordPressではでき ません。get_postsを使うか、ウ ィジェットを使いましょう 25
26.
query_posts の 迷宮 26
27.
query_postsとは 本来 メインクエリーを 改変するためのもの 27
28.
http://example.com/?cat=1 28
29.
http://example.com/?cat=1 カテゴリーID が 1 28
30.
http://example.com/?cat=1 have_posts() = 投稿が存在する? カテゴリーID
が 1 28
31.
http://example.com/?cat=1 have_posts() = 投稿が存在する? カテゴリーID
が 1 the_post() = テンプレートタグを有効化 28
32.
http://example.com/?cat=1 have_posts() = 投稿が存在する? カテゴリーID
が 1 the_post() = テンプレートタグを有効化 <a href= <?php the_permalink(); ?> > <h2> <?php the_title(); ?></a> </h2> 28
33.
http://example.com/?cat=1 have_posts() = 投稿が存在する? カテゴリーID
が 1 the_post() = テンプレートタグを有効化 <a href= <?php the_permalink(); ?> > <h2> <?php the_title(); ?></a> </h2> ↓次の投稿へ have_posts() = 投稿が存在する? 28
34.
カテゴリーを指定している が、それ以外は? 表示件数(10件?) 並び順(投稿日が新しい順) 投稿タイプ(投稿) デフォルト設定がある 29
35.
メインクエリーには デフォルト設定 がある 30
36.
メインクエリーの デフォルト設定を 変更したい = query_posts 31
37.
32
38.
?cat=1 32
39.
?cat=1 デフォルト設定 32
40.
?cat=1 デフォルト設定 クエリーストリングの生成 32
41.
?cat=1 条件分岐タグの設定 デフォルト設定 クエリーストリングの生成 32
42.
?cat=1 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 クエリーストリングの生成 32
43.
?cat=1 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み クエリーストリングの生成 32
44.
?cat=1 have_posts() = 投稿が存在する? the_post()
= テンプレートタグを有効化 <a href= <?php the_permalink(); ?> > <h2> 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み クエリーストリングの生成 32
45.
?cat=1 have_posts() = 投稿が存在する? the_post()
= テンプレートタグを有効化 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み クエリーストリングの生成 32
46.
?cat=1 have_posts() = 投稿が存在する? the_post()
= テンプレートタグを有効化 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 クエリーストリングの生成 32
47.
?cat=1 have_posts() = 投稿が存在する? the_post()
= テンプレートタグを有効化 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 クエリーストリングの生成 32
48.
?cat=1 have_posts() = 投稿が存在する? the_post()
= テンプレートタグを有効化 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 クエリーストリングの生成 32
49.
?cat=1 have_posts() = 投稿が存在する? the_post()
= テンプレートタグを有効化 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 クエリーストリングの生成 クエリーストリングの再生成 32
50.
?cat=1 have_posts() = 投稿が存在する? the_post()
= テンプレートタグを有効化 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 クエリーストリングの生成 クエリーストリングの再生成 条件分岐タグの再設定 32
51.
?cat=1 have_posts() = 投稿が存在する? the_post()
= テンプレートタグを有効化 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 クエリーストリングの生成 クエリーストリングの再生成 条件分岐タグの再設定 データベースから投稿を再取得 32
52.
?cat=1 have_posts() = 投稿が存在する? the_post()
= テンプレートタグを有効化 条件分岐タグの設定 デフォルト設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 クエリーストリングの生成 クエリーストリングの再生成 条件分岐タグの再設定 データベースから投稿を再取得 query_posts以前のアレコレが消えてしまった! 32
53.
大丈夫! 戻す手段が あります 33
54.
wp_reset_query() query_posts 発動前の状態に戻す 34
55.
query_posts 何が問題なのか? 35
56.
ページ送りが効かない (頻出) 原因 = $query_string と結合していない global
$query_string; query_posts( $query_string . '&order=ASC' ); 36
57.
条件分岐タグの設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 query_posts()以前の条件で テンプレートが選ばれてしまう =意図せず404になる 37
58.
条件分岐タグの設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 条件分岐タグの再設定 2回DBから投稿データを取得 =非効率、表示遅速の原因 38
59.
条件分岐タグの設定 データベースから投稿を取得 使用するテンプレートの読み込み query_posts() = 投稿の再取得 条件分岐タグの再設定 条件分岐タグが上書きされる =混乱のもと 39
60.
条件分岐タグの上書き と、query_posts()を サブクエリーの取得に 使ってしまう間違いが 重なるとカオス 40
61.
header.php footer.php category.php is_category() = true sidebar.phpで query_posts()を使用 wp_reset_query() 書き忘れ is_category()
= false テンプレートファイルをま たいで影響が出る 41
62.
まとめ 42
63.
query_postsは 便利だが、影響範囲が 大きすぎる 43
64.
条件分岐の上書きは 初心者には分かりにくい 44
65.
これからの 推奨される 方法 45
66.
メインクエリー の改変 = pre_get_posts 46
67.
サブクエリー の作成 = get_posts 47
68.
サブクエリー の作成 = get_posts 条件分岐タグが書き換わらない 47
69.
用途によって 使いわけよう 48
70.
メインクエリー の改変 = pre_get_posts 49
71.
function 関数( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( クエリーの改変を適用する条件 ) { $query->set( パラメーター , 値 ); return; } } add_action( 'pre_get_posts', '関数名' ); pre_get_posts基本文法 50
72.
function 関数( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( クエリーの改変を適用する条件 ) { $query->set( パラメーター , 値 ); return; } } add_action( 'pre_get_posts', '関数名' ); pre_get_posts基本文法 管理画面とメインクエリー以外 には適用しない 51
73.
function 関数( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( クエリーの改変を適用する条件 ) { $query->set( パラメーター , 値 ); return; } } add_action( 'pre_get_posts', '関数名' ); pre_get_posts基本文法 表示条件を変更したい ページを絞り込む 52
74.
function 関数( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( クエリーの改変を適用する条件 ) { $query->set( パラメーター , 値 ); return; } } add_action( 'pre_get_posts', '関数名' ); pre_get_posts基本文法 メインクエリーの パラメーターを設定 53
75.
function 関数( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( クエリーの改変を適用する条件 ) { $query->set( パラメーター , 値 ); return; } } add_action( 'pre_get_posts', '関数名' ); pre_get_posts基本文法 関数の名前は 自由につけて良い 54
76.
function 関数( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( クエリーの改変を適用する条件 ) { 処理 return; } } add_action( 'pre_get_posts', '関数名' ); pre_get_posts基本文法 【最重要】 テーマのfunctions.phpに記載する query_postsの様に 各テンプレートには書かない 55
77.
?cat=1 デフォルト設定 条件分岐タグの設定 have_posts() =
投稿が存在する? the_post() = テンプレートタグを有効化 <a href= <?php the_permalink(); ?> > <h2> データベースから投稿を取得 使用するテンプレートの読み込み クエリーストリングの生成 56
78.
?cat=1 デフォルト設定 条件分岐タグの設定 have_posts() =
投稿が存在する? the_post() = テンプレートタグを有効化 データベースから投稿を取得 使用するテンプレートの読み込み クエリーストリングの生成 56
79.
?cat=1 デフォルト設定 条件分岐タグの設定 have_posts() =
投稿が存在する? the_post() = テンプレートタグを有効化 データベースから投稿を取得 使用するテンプレートの読み込み クエリーストリングの生成 pre_get_posts フィルター = クエリーストリングに無い条件の追加 56
80.
function exclude_category_at_home( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( $query->is_home() ) { $query->set( 'cat', '-1,-1347' ); return; } } add_action( 'pre_get_posts', 'exclude_category_at_home' ); メインページから特定のカテゴリーを除外する 57
81.
function exclude_category_at_home( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( $query->is_home() ) { $query->set( 'cat', '-1,-1347' ); return; } } add_action( 'pre_get_posts', 'exclude_category_at_home' ); メインページから特定のカテゴリーを除外する メインページのみに制限 注意:is_home() ではなく $query->is_home() 58
82.
function exclude_category_at_home( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( $query->is_home() ) { $query->set( 'cat', '-1,-1347' ); return; } } add_action( 'pre_get_posts', 'exclude_category_at_home' ); メインページから特定のカテゴリーを除外する $query->set( パラメーター , 値 ); 使えるパラメーターはCodexの 関数リファレンス/WP_Queryを参照 59
83.
function search_exclude_cat_1( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( $query->is_search() ) { $query->set( 'category__not_in', array(1) ); return; } } add_action( 'pre_get_posts', 'search_exclude_cat_1' ); 検索結果から特定のカテゴリーを除外する 60
84.
function search_exclude_cat_1( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( $query->is_search() ) { $query->set( 'category__not_in', array(1) ); return; } } add_action( 'pre_get_posts', 'search_exclude_cat_1' ); 検索結果から特定のカテゴリーを除外する 検索結果で IDが1のカテゴリーを除外 配列で指定することもできる 61
85.
function search_only_post( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( $query->is_search() ) { $query->set( 'post_type', 'post' ); return; } } add_action( 'pre_get_posts', 'search_only_post' ); 検索結果から固定ページを除外(投稿のみ) 62
86.
function search_only_post( $query
) { if ( is_admin() ¦¦ ! $query->is_main_query() ) return; if ( $query->is_search() ) { $query->set( 'post_type', 'post' ); return; } } add_action( 'pre_get_posts', 'search_only_post' ); 検索結果から固定ページを除外(投稿のみ) 検索結果のみに制限 Codexのサンプルは$query->is_search プロパティを見るより関数で書こう $query->is_search() → ○ 63
87.
function set_post_per_page( $query
) { if ( is_admin() || ! $query->is_main_query() ) return; if ( $query->is_home() ) { $query->set( 'posts_per_page', 1 ); return; } if ( $query->is_post_type_archive( 'movie' ) ) { $query->set( 'posts_per_page', 50 ); return; } } add_action( 'pre_get_posts', 'set_post_per_page'); 条件にしたがって表示件数を変更 64
88.
function set_post_per_page( $query
) { if ( is_admin() || ! $query->is_main_query() ) return; if ( $query->is_home() ) { $query->set( 'posts_per_page', 1 ); return; } if ( $query->is_post_type_archive( 'movie' ) ) { $query->set( 'posts_per_page', 50 ); return; } } add_action( 'pre_get_posts', 'set_post_per_page'); 条件にしたがって表示件数を変更 メインページでは 1件表示 65
89.
function set_post_per_page( $query
) { if ( is_admin() || ! $query->is_main_query() ) return; if ( $query->is_home() ) { $query->set( 'posts_per_page', 1 ); return; } if ( $query->is_post_type_archive( 'movie' ) ) { $query->set( 'posts_per_page', 50 ); return; } } add_action( 'pre_get_posts', 'set_post_per_page'); 条件にしたがって表示件数を変更 movie 投稿タイプのアーカイブでは 50件表示 66
90.
注意点 あくまでパラメーターの追加 固定ページをアーカイブに等 根本的に変更するのは厳しい = サブクエリーを使う 67
91.
注意点 一部の条件分岐は pre_get_postsのタイミ ングでは動作しない 例:is_front_page() 68
92.
サブクエリー の作成 = get_posts 69
93.
global $post; $args =
array( 'posts_per_page' => 5, 'cat' => 1 ); $myposts = get_posts( $args ); foreach( $myposts as $post ) { setup_postdata($post); ?> <h1><?php the_title(); ?></h1> <?php } wp_reset_postdata(); get_posts記述例 70
94.
global $post; $args =
array( 'posts_per_page' => 5, 'cat' => 1 ); $myposts = get_posts( $args ); foreach( $myposts as $post ) { setup_postdata($post); ?> <h1><?php the_title(); ?></h1> <?php } wp_reset_postdata(); get_posts記述例 テンプレートタグのセットアップ テンプレートタグのリセット 71
95.
Codexで get_posts のサンプルの書き方 が微妙にまちまち Codexの改善に期待 72
96.
$args = array( 'posts_per_page'
=> 5, 'offset' => 0, 'cat' => 0, 'orderby' => 'post_date', 'order' => 'DESC', 'post_type' => 'post', 'post_status' => 'publish', 'suppress_filters' => true, 'ignore_sticky_posts' => true, 'no_found_rows' => true ); WP_Query記述例 $the_query = new WP_Query( $args ); if ( $the_query->have_posts() ) { while ( $the_query->have_posts() ) { $the_query->the_post(); ?> <h1><?php the_title(); ?></h1> <?php } } wp_reset_postdata(); 上級者向けかも 73
97.
まとめ 74
98.
メインクエリーの変更は pre_get_posts サブクエリーの作成は get_posts (or WP_Query) 使い分ける 75
99.
Thanks! 質問は公式フォーラム または Twitter: @HissyNC
まで 76
Download now