カスタム投稿タイプをfunctions.phpに登録しました。
function ourproducts_post_type() {
/*Labels*/
$labels = array(
'name' => _x("Our Products", "post type general name"),
'singular_name' => _x("Our Products", "post type singular name"),
'menu_name' => 'Our Products',
'add_new' => _x("Add New", "ourproducts item"),
'add_new_item' => __("Add New Product Category"),
'edit_item' => __("Edit Product category"),
'new_item' => __("New Product Category"),
'view_item' => __("View Product Category"),
'search_items' => __("Search Product categories"),
'not_found' => __("No Product categories Found"),
'not_found_in_trash' => __("No Product Categories Found in Trash"),
'parent_item_colon' => ''
);
/*Register ourproducts post type*/
register_post_type('ourproducts' , array(
'labels' => $labels,
'public' => true,
'orderby' => 'menu_order',
'has_archive' => false,
'menu_icon' => 'dashicons-groups',
'rewrite' => false,
'supports' => array('title', 'editor', 'thumbnail', 'page-attributes'),
'show_ui' => true,
'show_in_menu' => 'custom-options',
//'menu_position' => 40,
) );
}
add_action( 'init', 'ourproducts_post_type', 0 );
フロントエンド(front-page.php
テンプレートページ)では、ループの外側にフィールド値を次のように表示してみました。
<h3><?php the_field('nasi_proizvodi', $post->ID); ?></h3>
また、私はループの中でそう試しました:
<?php while ( have_posts() ) : the_post(); ?>
<h3><?php the_field('nasi_proizvodi'); ?></h3>
<?php endwhile; ?>
しかし何も示さない。私がそのように投稿IDを明確に書かない限り:
<?php while ( have_posts() ) : the_post(); ?>
<h3><?php the_field('nasi_proizvodi', 4268); ?></h3>
<?php endwhile;
しかし、この特定の投稿IDだけでなく、動的に変更する必要があります。おもしろいことに、私はすでにフロントページにいくつかのテキストフィールドを作成し(私はテーマを開発しています)、動的にそれらを表示することに問題はありませんでした。何が間違っていますか、何か提案がありますか?
あなたのポストタイプをチェックして引数を追加してください
<?php
$query = new WP_Query( array( 'post_type' => 'ourproducts' ) );
if ( $query->have_posts() ) :
while ( $query->have_posts() ) :
$query->the_post();
?>
<h3><?php echo get_field('nasi_proizvodi'); ?></h3>
<?php
endwhile;
wp_reset_postdata();
endif;
?>