このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

Archives Details

WordPress 特定のカスタム分類 記事表示

WordPress

2012.02.13

この記事は最終更新日から1年以上が経過しています。

カスタム投稿タイプや、カスタム分類やら使っていると、訳が分かんなくなりますねw

ちょっと簡単にまとめ。

今回、固定ページにカスタム投稿タイプで投稿された記事をカスタム分類で分けて表示。(ほら。w)

絵で言うとこんな感じでしょうか?

あぁ絵もひどいな。こりゃ。w 細菌みたいだ。

カスタム分類の中で分けられたタームを持つ記事を表示させたい。

ってことです。

query_posts とWP_Query

固定ページで表示させる際、ページ内にループを作る必要があります。

ループの発生の仕方もquery_postsで行うか、WP_Queryで行うかってがありますが、どう違いがあるの?と言われますと

query_postメインループを変更するテンプレートタグってところでしょうか?

メインループだけに使えるテンプレートタグなので、ページ内では1回のみの使用となります。

<?php
$args = array(
     'post_type' => 'hogege_post', 
     'paged' => $paged
);
?>
<?php query_posts($args); ?>

ページ内で複数ループを作成する場合はWP_Queryを使用します。

<?php
$args = array(
     'post_type' => 'hogege_post', 
     'paged' => $paged
);
?>
<?php $loop = new WP_Query($args); ?>

今回はこちらを使用し、特定のタームを持つ記事のみ出力します。

カスタム分類 ターム別記事出力

先ほどのWP_Queryを使ったループのソースにタームの指定等を行うだけです。

<?php
$args = array(
    'post_type' => 'custompost001',
    'posts_per_page' => 1,
    'tax_query' => array( /* カスタム分類 */
            array(
                'taxonomy' => 'customTaxonomy001',
                'field' => 'slug',
                'terms' => 'customTaxonomy001_1',
            )
        )
    );
?>
<?php $loop = new WP_Query($args); ?>

これで、カスタム投稿タイプ「custompost001」のカスタム分類「customTaxonomy001」のターム「customTaxonomy001_1」のみの記事を取得しループさせます。

あとは出力させたい情報を出力させるのみ!

<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
    <div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
	<h2 class="entry-title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
	  <?php the_content(); ?>
    </div>
<?php endwhile; ?>

短くすると、

<?php
$args = array(
    'post_type' => 'custompost001',
    'posts_per_page' => 1,
    'tax_query' => array( /* カスタム分類 */
            array(
                'taxonomy' => 'customTaxonomy001',
                'terms' => 'customTaxonomy001_1',
            )
        )
    );
?>
<?php $loop = new WP_Query($args); ?>
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
<?php the_content(); ?>
<?php endwhile; ?>

こんな感じでしょうか。

Comment

Related Article

PHP7に変更して、早くなりました!!ConoHaにwebアプリケーションを集約。ひとりサーバー移管プロジェクト終了。

2017.03.23

【WordPress】 VVV(Varying-Vagrant-Vagrants)を使った 最強ローカル環境構築!!

2016.11.26

【WordPress】カスタムフィールドテンプレートで マスターデータ作成。 簡単、素早くミニサイト作成

2016.11.06

【WordPress】WordPress Popular 画像が表示しない。

2016.10.19

WordPress 外部から関数呼び出し・記事一覧表示・ランダム表示

2016.04.28

WordPress + Vagrant の環境構築が超簡単に!!「VCCW」を使ったら簡単すぎて困った件。

2016.01.02

WordPress スマホサイト WPtouch 3.8.3 をカスタマイズ その2 【環境編】WordPress x Vagrant

2015.08.25

Web帳 スマートフォン リニューアルしました。WPtouch 3.8.3 をカスタマイズ その1

2015.08.24

サイト高速化!Web帳で無料で使えるCDNサーバー(CloudFlare)を試してみた。(ムームードメイン設定例)

2014.12.09

既存のWordPressサイトをローカル(vagrant等)に移行方法(MySqlエクスポート)

2014.01.03

CATEGORY LIST

LATEST NEWS

Ubuntu 18.04 LTSで OpenGL開発

ubuntu

2019.05.20

MacOS Mojave (10.14.4)の Xcode に、過去のMacOSのSDKをインストール

C++

2019.05.19

クローンソフトの「EaseUS Disk Copy」を使って、OSのバックアップを取ってみた。

tool

2019.05.06

Rails5 gemでmysql2が インストールできない

Ruby

2019.05.05

平成最後のお買い物!!「Logicool MX Master 2 Wireless Mouse」と「K780 マルチデバイス BLUETOOTH® キーボード」で快適PC生活。

ubuntu

2019.04.27

Amazon 87時間のビックセール タイムセール祭りで購入したもの

イベント

2019.04.23

Androidに Linuxを簡単にインストールするアプリ「UserLAnd」

Linux

2019.04.16

SPAサイトでの認証認可 JWT✗Rails5✗Nuxt.js

JavaScript

2019.03.24

CentOS MySQL(MariaDB) を バージョン10.3に yumでアップデート

MySQL

2019.03.22

Ubuntu 開発環境構築まとめ

ubuntu

2019.02.25

Nuxt.js と auth-module (@nuxtjs/auth)で、JWT(JSON Web Tokens)& OAuth 認証 ログイン

JavaScript

2019.02.21

HerokuでRailsをビルド buildpack、Rubyバージョンでエラー

エラー

2019.02.13

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、主に、ゲーム制作中心に港区六本木界隈で活動中。

FOLLOW US