簡體   English   中英

顯示高級自定義字段的內容

[英]Displaying content of Advanced Custom Fields

當我嘗試在同一頁面上顯示不同的“自定義帖子”和“高級自定義”字段時,我在理解PHP在做什么方面遇到了一些問題。

我已在頁面上添加了不同的“高級自定義字段”,並且我嘗試使用模板顯示自定義帖子。

我使用以下命令在整個模板中調用自定義字段:

<?php the_field(‘field-name’) ?>

我的自定義帖子通過這樣的循環(在模板中間的某個地方)被調用:

<?php
  $args = array(
  'post_type' => ‘foo’
);

$foo = new WP_Query( $args );
if( $foo->have_posts() ) {

while( $foo->have_posts() ) {
  $foo->the_post();
?>
  <?php the_content() ?>                    
<?php
  }
}
else {
  // SOME MESSAGE
}
?>

在這些循環上方,“高級自定義字段”的內容顯示良好。 在循環下面,它只是不顯示。

我不知道為什么沒有顯示內容。

我認為這與while或if循環語句有關。 如果刪除循環,則會顯示下面任何“高級自定義字段”的內容。

使用WP_Query() ,每次循環瀏覽帖子時,都將在頁面上更改默認的$post變量。 您需要在循環后調用wp_reset_postdata()來重置$post變量,使其再次與當前頁面相對應。 您可以在“ while”循環之后調用該函數-

<?php
$args = array(
    'post_type' => ‘foo’
);
$foo = new WP_Query( $args );

if( $foo->have_posts() ) {

    while( $foo->have_posts() ) { $foo->the_post();

        the_content();                    

    } wp_reset_postdata();
}
else {
  // SOME MESSAGE
}
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM