私は個々のポートフォリオのピースごとに単一のページを作成しようとしています。カスタム投稿とフィールドタイプを作成しましたが、投稿ごとにおすすめの写真が1つしか表示されないようです。別の方法で写真を追加する必要がありますか?それとももっと注目の画像を追加するオプションはありますか?
また、私はこれらの画像でカルーセルを作ろうとしています。個々のポートフォリオ作品のさまざまな画像を通して、最終結果をカルーセル化したいと思います。この引数を新しいWP_Queryで書き込もうとしていますが、うまくいかないようです。これが私の主張です。
<?php
$args = array(
'post_type' => 'attachment',
category_name =>'single-portfolio'
);
$the_query = new WP_Query ($args);
?>
<?php if (have_posts ()) : while ($the_query->have_posts()) : $the_query -> the_post(); ?>
<h1><?php the_title();?>
<?php endwhile; endif;?>
これは私の特集画像を引き込んでいません。何がおかしいのですか?通過するより良い議論がありますか?
私のウェブサイトはwww.angelina-marie.comです。
面白い仕事です。 DashboardでカスタムのSlider Menuを作成してから、そこから注目のイメージをアップロードして、それらのイメージをスライダーで動的に呼び出すことができます。
最初のテーマのサポートを行い、関数の投稿タイプを登録する必要があります。
add_theme_support( 'post-thumbnails', array( 'post', 'slider' ) );
add_image_size( 'slider-image', 1024, 550, true );
function create_post_type() {
register_post_type( 'slider',
array(
'labels' => array(
'name' => __( 'Slides' ),
'singular_name' => __( 'Slide' ),
'add_new' => __( 'Add New' ),
'add_new_item' => __( 'Add New Slide' ),
'edit_item' => __( 'Edit Slide' ),
'new_item' => __( 'New Slide' ),
'view_item' => __( 'View Slide' ),
'not_found' => __( 'Sorry, we couldn\'t find the Slide you are looking for.' )
),
'public' => true,
'publicly_queryable' => false,
'exclude_from_search' => true,
'menu_position' => 14,
'has_archive' => false,
'hierarchical' => false,
'capability_type' => 'page',
'rewrite' => array( 'slug' => 'Slide' ),
'supports' => array( 'title', 'thumbnail' )
)
);
}
add_action( 'init', 'create_post_type' );
スライダー画像が実行されるファイルで、データベースから画像を取得し、クエリ結果を呼び出すには、ループを作成し、ループ内でクエリを実行する必要があります。
<?php
if(!is_paged())
{
$args = array('post_type' => 'slider', 'posts_per_page' => 4);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() )
{
while ( $the_query->have_posts() )
{
$the_query->the_post();
$image = wp_get_attachment_url( get_post_thumbnail_id($post->ID), 'slider-image' );
?>
<div data-src="<?php echo $image; ?>"> </div>
<?php }
}
}
?>
それでおしまいです。スライドメニューからアップロードされた画像がスライダーに表示されます。
あなたが実際にテンプレートの中であなたの注目の画像を要求したのは分かりません。 the_post_thumbnail()
とendwhile
の間に the_post()
の呼び出しを入れて、運が良いかどうかを確認します。
あなたはジャスティンが提案したことをする必要があるでしょう。しかし、あなたの質問にも多くの問題があります。カスタムクエリに投稿があるかどうかも確認していません。あなたはこのようなクエリを使うべきです。
<?php
$args = array(
'post_type' => 'attachment',
'category_name' => 'single-portfolio'
);
$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 the_post_thumbnail(); ?>
<?php
endwhile;
endif;
wp_reset_postdata();
?>
また、カスタムクエリを実行している場合は、最後に投稿データをwp_reset_postdata()
でリセットできます。