2012-03-18 5 views
1

Я создал иерархический пользовательский тип сообщения в wordpress, называемый «фильмы». Он иерархичен, поэтому он может иметь дочерние элементы.Wordpress Custom Post Type Children Template

Когда нажата «пленка», Wordpress автоматически использует шаблон «single-films.php». Это здорово, но я хочу использовать другой шаблон, когда будет нажата одна из детских страниц фильма. Например, ребенок фильма может быть «нажатием». Когда щелкнул ссылку на эту пленку, я хочу, чтобы она использовала другой шаблон, чем single-films.php.

Я надеялся, что есть способ, которым я могу использовать шаблон, например single-children-films.php. Любые идеи, как я могу изменить шаблон дочернего шаблона иерархического пользовательского типа?

+0

или другой способ обработки это добавить условную логику отдельных пленок. php говорит, если этот пост является родителем, сделайте это ... если этот пост - ребенок, сделайте это ... Но я не уверен в треске e, чтобы это сделать. – JCHASE11

+0

Я только что ответил что-то очень похожее здесь: https://stackoverflow.com/questions/45919508/allowed-template-for-children-wordpress/45922616#45922616 – Paul

ответ

0

Я уверен, что смогу помочь в этом. Мне просто нужно знать одно: дети всегда одного типа сообщений, как родитель? Или это «нажмите», как вы сказали в своем примере собственный отдельный пользовательский тип сообщения?

1

Я думаю, что я только что сделал то же самое:

я тип таможенного поста под названием «продукт» родитель является «бренд» и ребенок по сути является «товаром марки» вот что Я ставлю в моей одиночной product.php

Это первый запрос, чтобы получить дочерние сообщения [вещи]

<?php $mypages = get_pages(array('child_of' => $post->ID, 'post_type' => 'product', 'sort_order' => 'desc')); 
//So if it is not a parent 
if (empty($mypages)){ ?> 
//use these styles 
<div class="single_item">stuff is happening</div> 
//If it is a parent post so has children 
<?php ; } else { ?> 
//Then Do these things 
<div class="brandstuff">showing extra stuffs</div> 
<div class="morebrandstuffs">maybe do some extra stuff</div> 
//I wanted to add a list of my child pages to my parent page 
<?php $mypages = get_pages(array('child_of' => $post->ID, 'post_type' => 'product', 'sort_order' => 'desc')); 

foreach($mypages as $page) {  
    $content = $page->post_content; 
    if (! $content) // Check for empty page 
     continue; 

    $content = apply_filters('the_content', $content); 
?><div class="item"> 
    <a href="<?php echo get_permalink($page->ID); ?>"> 
    <div class="item_thumb"><?php echo get_the_post_thumbnail($page->ID, 'item_thumb'); ?></div> 
    <?php echo $page->post_title; ?></a> 
     </div> 

<?php 
} 
?> <?php } ?>