Seitenvorlage mit verschiedenen Seiten- und Post-Inhalten

Ich verwende ein WordPress-Theme, das eine Seitenvorlage namens roomtypes . Ich bin kein PHP Pro, aber soweit ich verstehe, bekommt diese Vorlage die Posts. Wenn ich einen Raumtyp hinzufüge, wird er als Post mit einem post_type=roomtype .
Diese Vorlage erhält also diese Posts, fügt ihren Titel und ein Thumbnail hinzu.

Mein Problem ist, wenn ich eine Seite anlege und etwas Text eingebe, wird es nicht angezeigt, wenn ich diese Vorlage wähle.
Also habe ich mit etwas graben herausgefunden, dass the_content(); function macht den Trick. Ich habe versucht, es hinzuzufügen, und es hat funktioniert 🙂
Die Sache ist, ich kann den Inhalt nicht verwenden, wo ich es brauche. Dies ist der Code:

  <div class="middle-inner-wrapper" style="background:#e7dfd6 url() no- repeat center top;"> 

<a href="https://wordpress.stackexchange.com/questions/74612/page-template-with-different-page-and-post-content/" style="color:white">

» 

ID); // $link_image = wp_get_attachment_image_src( $thumbnail_id, 'roomtype-image' ); //$link_thumbnail = wp_get_attachment_image_src($thumbnail_id); if(has_post_thumbnail()) { $thumbnail_id = get_post_thumbnail_id($post->ID); $link_image = wp_get_attachment_image_src( $thumbnail_id, 'roomtype-image' ); } else { $args = array( 'post_type' => 'attachment', 'numberposts' => -1, 'post_parent' => $post->ID, 'post_mime_type' => 'image' ); $attachments = get_posts($args); $link_image = wp_get_attachment_image_src( $attachments[0]->ID, 'roomtype-image' ); } ?>
<a href="https://wordpress.stackexchange.com/questions/74612/page-template-with-different-page-and-post-content/" title=""> <img src="https://wordpress.stackexchange.com/questions/74612/page-template-with-different-page-and-post-content/" />
<a class="room- link" href="https://wordpress.stackexchange.com/questions/74612/page-template-with-different-page-and-post-content/" title="">
<a href="https://wordpress.stackexchange.com/questions/74612/page-template-with-different-page-and-post-content/" title=""> <img src="https://wordpress.stackexchange.com/questions/74612/page-template-with-different-page-and-post-content/" style="margin-top:3px;" />
<a class="room- link" href="https://wordpress.stackexchange.com/questions/74612/page-template-with-different-page-and-post-content/" title="">

<!--<img src="/images/inner-page-bottom.jpg" alt="inner_page_bottom_image"/>-->

Ich brauche den Inhalt, wo ich im Code angeben möchte, aber einige, wenn ich hinzufüge

 

Die Dinge werden unordentlich.
Wenn ich nur the_content(); addiere the_content(); dann wird es viel schlimmer, all diese Beiträge Inhalt ist Shows 🙁
Wie kann ich nur den Inhalt der Seite hinzufügen, auf der ich die Seitenvorlage verwende?

Solutions Collecting From Web of "Seitenvorlage mit verschiedenen Seiten- und Post-Inhalten"

the_content() (und viele andere) müssen innerhalb der Schleife sein .

Um einen post / page / custom-post-Typ Daten außerhalb des Loops abzurufen, casting Sie einen Blick hier:
Holen Sie Post-Inhalt von außerhalb der Schleife

Der Arbeitscode, basierend auf Ihrem Beispiel , wäre:

 
< ?php global $post; query_posts("post_type=roomtype&orderby=name"); if ( have_posts() ) { ?>

< ?php _e ('Rooms', 'hotel');?>

< ?php $i=0; while ( have_posts() ) { the_post(); $i++; //$thumbnail_id = get_post_thumbnail_id($post->ID); // $link_image = wp_get_attachment_image_src( $thumbnail_id, 'roomtype-image' ); //$link_thumbnail = wp_get_attachment_image_src($thumbnail_id); < ?php echo 'I NEED MY PAGE CONTENT HERE - just add the following line' ?> < ?php the_content(); ?> if(has_post_thumbnail()) { $thumbnail_id = get_post_thumbnail_id($post->ID); $link_image = wp_get_attachment_image_src( $thumbnail_id, 'roomtype-image' ); } else { $args = array( 'post_type' => 'attachment', 'numberposts' => -1, 'post_parent' => $post->ID, 'post_mime_type' => 'image' ); $attachments = get_posts($args); $link_image = wp_get_attachment_image_src( $attachments[0]->ID, 'roomtype-image' ); } ?>

Verwenden Sie get_the_content() , um den Inhalt der Seite in einer Variablen ( $page_content get_the_content() zu speichern, und Sie können sie dort verwenden, wo Sie sie benötigen. Wenn Sie es innerhalb Ihrer Schleife für die Posts verwenden, verwenden Sie etwas wie if ( $i == 0 ) echo $page_content so dass es nur einmal angezeigt wird:

 
< ?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?> < ?php $page_content = get_the_content(); ?> < ?php endwhile; ?> < ?php global $post; query_posts("post_type=roomtype&orderby=name"); if ( have_posts() ) { ?>

< ?php _e ('Rooms', 'hotel');?>

< ?php echo $page_content; ?> < ?php $i=0; while ( have_posts() ) { the_post(); $i++; //$thumbnail_id = get_post_thumbnail_id($post->ID); // $link_image = wp_get_attachment_image_src( $thumbnail_id, 'roomtype-image' ); //$link_thumbnail = wp_get_attachment_image_src($thumbnail_id); if(has_post_thumbnail()) { $thumbnail_id = get_post_thumbnail_id($post->ID); $link_image = wp_get_attachment_image_src( $thumbnail_id, 'roomtype-image' ); } else { $args = array( 'post_type' => 'attachment', 'numberposts' => -1, 'post_parent' => $post->ID, 'post_mime_type' => 'image' ); $attachments = get_posts($args); $link_image = wp_get_attachment_image_src( $attachments[0]->ID, 'roomtype-image' ); } ?>