2012-03-18 103 views
0

我創建了一個稱爲「電影」的分層定製帖子類型。它是分層的,所以它可以有孩子的元素。Wordpress使用自定義循環在子頁面上顯示父母內容

我用我的單films.php條件語句來顯示從子頁面,像這樣父頁面不同的內容:

<?php while(have_posts()) : the_post(); ?> 

<?php if($post->post_parent != 0) { 
    echo "Child Page"; 
} else { 
    echo "Film Page"; 
} ?> 
<?php endwhile; ?> 

該條件的頁面是一個孩子,我想要使用父母頁面上輸入的值,而不是子頁面。因爲循環已經被創建,所以我需要找出一種方法從子頁面上的父頁面JUST中提取內容。我需要它從我父母那裏提取我希望的任何內容(自定義字段,標題,特色圖片等)。任何想法如何修改此循環以從其父項中提取內容?

回答

4

WordPress的有一個很好的get_post功能,你可以使用它像這樣得到父母的標題,例如:

<?php 

if ($post->post_parent != 0) { 
    $parent = get_post($post->post_parent); 
    echo $parent->post_title; 
} ?> 

您可以通過它的鍵/名和父的帖子ID訪問任何自定義字段:

<?php 

$image = wp_get_attachment_image_src(get_post_meta($post->post_parent, 'custom-field-key', true)); 
echo '<img src="' . $image[0] . '" />'; 
?> 

這適用於Wordpress的Advanced Custom Fields插件。

+0

自定義字段和其父頁上的簡碼有什麼關係?它是否適用於標題,還是可以適用於其父項的任何內容? – JCHASE11 2012-03-18 20:27:59

+0

我可以使用上面的從父元素中獲取我想要的任何數據嗎?我使用高級自定義字段插件來顯示來自父級的自定義字段,其中<?php get_field('image'); ?>我想要在子頁面上可用 – JCHASE11 2012-03-18 20:35:54

+0

哇,很酷!你能否也證明這將如何適用於典型的自定義字段?例如:<?php get_field('cast_members'); ?> – JCHASE11 2012-03-18 23:14:03

1

我知道這有點遲,但是它可以與ACF一起使用,但它只會將縮略圖(裁剪後的圖像)提取給您。要獲得完整的圖像,您需要稍微修改代碼。

<?php 
$image = wp_get_attachment_image_src(get_post_meta($post->post_parent, 'custom-field-key', true), 'full'); 
echo '<img src="' . $image[0] . '" />'; 
?> 

玩得開心。

只是想這可能會幫助未來的人。

相關問題