私はクライアントのための「アドベントカレンダー」を構築していて、彼らは特定の順番で、特定のページとフロントページに現れるカスタム投稿の組み合わせを望んでいます。
取得する必要があるものは、タイトル、抜粋(またはコンテンツまで)、パーマリンク、おすすめ画像、カスタムフィールド...
データベースからこれらを取得することに関して最良の方法は何ですか?カスタムSQLクエリ?ある種のウォーカー?複雑なメニュー?
カスタムナビゲーションメニューで投稿、ページ、カスタム投稿を指定して、正しい情報を出力するカスタムウォーカーを作成しました。
フロントページで get_posts()
を使用するか、'pre_get_posts'
をフィルター処理します。
get_posts()
のサンプルコード:
$my_post_array = get_posts(
array (
'post_type' => array ( 'post', 'custom_type' )
)
);
foreach ( $my_post_array as $post )
{
// do something awesome …
}
メタフィールドなどによるカスタムオーダーのパラメータもあります。 'pre_get_posts'
のフィルタでも同じことができます。読むのはそれほど簡単ではありません。