Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将整篇文章打印成一页(wordpress)_Php_Wordpress_Dom - Fatal编程技术网

Php 如何将整篇文章打印成一页(wordpress)

Php 如何将整篇文章打印成一页(wordpress),php,wordpress,dom,Php,Wordpress,Dom,您好,我制作了一个自定义帖子类型“工作字段”,它将来自另一个自定义帖子类型“成员”的信息调用到帖子中,现在我尝试制作一个页面模板,显示自定义帖子类型“工作字段”的标题列表,当您单击标题时,整个帖子(“工作字段”)将出现在标题下方一个名为“single post container”的div上。现在,我已经让一切正常工作,但我想在加载页面时在div“single post container”中显示一篇文章。(到目前为止,只显示帖子的标题,div中没有任何内容)。如何让div在页面加载时显示自定义

您好,我制作了一个自定义帖子类型“工作字段”,它将来自另一个自定义帖子类型“成员”的信息调用到帖子中,现在我尝试制作一个页面模板,显示自定义帖子类型“工作字段”的标题列表,当您单击标题时,整个帖子(“工作字段”)将出现在标题下方一个名为“single post container”的div上。现在,我已经让一切正常工作,但我想在加载页面时在div“single post container”中显示一篇文章。(到目前为止,只显示帖子的标题,div中没有任何内容)。如何让div在页面加载时显示自定义帖子类型“work\u fields”的最新帖子?这是自定义页面模板的代码

<div class="row">
  <div class="small-12 medium-10 large-offset-1 columns">
    <h2><?php the_title(); ?></h2>
  </div>
</div>  
<div class="row halfsection">
  <div class="small-12 medium-10 large-offset-1 columns">
    <div class="category_container">
    <?php
        $args = array('post_type' => 'work_fields',);
        $query = new WP_Query( $args );
    ?>

    <?php if ( $query->have_posts() ) : ?>
      <?php while ( $query->have_posts() ) : $query->the_post(); ?>  
        <p class="category_item"><a class="post-link" rel="<?php the_ID(); ?>" href="<?php the_permalink(); ?>"><?php  echo get_the_title(); ?></a></p> 
    <?php endwhile; endif; ?>
    </div>
  </div>
</div>
<div class="row">
  <div class="small-12 medium-10 large-offset-1 columns">
    <hr>
  </div>
</div>                      
<div id="single-post-container">
    //THIS IS WHERE THE POST CONTENTS SHOWS BUT I WANT THE MOST RECENT POST TO BE HERE ON PAGE LOAD, BEFORE I CLICK ANY OTHER POST//    
</div>


//这是帖子内容显示的地方,但我希望在单击任何其他帖子之前,最新的帖子在页面加载时出现在这里

谢谢大家!!非常感谢你的帮助

只需使用WP_查询两次,在参数中获取最近的帖子

$args2 = array('post_type' => 'work_fields', 'orderby' => 'ID', 'order'=> 'DESC' , 'posts_per_page' => 5);
$query2 = new WP_Query( $args2 );
?><div id="single-post-container"><?php
// The Loop
if ( $query2->have_posts() ) {
    echo '<ul>';
    while ( $query2->have_posts() ) {
        $query2->the_post();
        echo '<li>' . get_the_content() . '</li>';
    }
    echo '</ul>';
    /* Restore original Post Data */
    wp_reset_postdata();
}
?></div><?php
$args2=array('post\u type'=>'工作字段','orderby'=>'ID','order'=>'描述','posts\u per\u page'=>5);
$query2=新的WP\u查询($args2);

?>如果div single post容器上的所有内容都正常工作,那么对于这个特定的div,您可以使用下面的代码加载最新的post。确保使用wp_reset_postdata()重置以前的post数据

法典文件


所以我只是在我的页面上重新创建了post类型标记。我相信有更好的方法可以做到这一点,但为了时间的缘故,我必须至少让它起作用。我还尝试使用jqueryonclick函数,在加载所有内容后只需单击第一个标题,但出现了一个错误,导致一直推送所有标题,因此我几乎放弃了。 这是密码

<div class="row">
  <div class="small-12 medium-10 large-offset-1 columns">
    <h2><?php the_title(); ?></h2>
  </div>
</div>  
<div class="row halfsection">
  <div class="small-12 medium-10 large-offset-1 columns">
    <div class="category_container">
      <?php
        $args = array(
            'post_type' => 'work_fields',
        );
        $query = new WP_Query( $args );
      ?>
      <?php if ( $query->have_posts() ) : ?>
      <?php while ( $query->have_posts() ) : $query->the_post(); ?>  
        <p class="category_item"><a class="post-link" rel="<?php the_ID(); ?>" href="<?php the_permalink(); ?>"><?php  echo get_the_title(); ?></a></p> 
      <?php endwhile; endif; ?>

    </div>
  </div>
</div>
<div class="row">
    <div class="small-12 medium-10 large-offset-1 columns">
        <hr>
    </div>
</div>                  
<div id="single-post-container">
  <?php
    $args2 = array(
    'orderby' => 'post_date',
    'order' => 'DESC',
    'post_type' => 'work_fields',
    'post_status' => 'publish',
    'posts_per_page' => 1,
    );
    $query2 = new WP_Query( $args2 );
        if ( $query2->have_posts() ) : ?>
        <?php $post = get_post($_POST['id']); ?>
        <div id="single-post post-<?php the_ID(); ?>">
        <?php while ( $query2->have_posts() ) : $query2->the_post(); ?>  
          <div class="row section">
            <div class="small-12 medium-7 large-offset-1 columns">
              <h2><?php the_title(); ?></h2>
              <h3>소개</h3>
              <p class="halfsection"><?php the_field('work_fields_intro'); ?></p>
              <h3>주요서비스</h3>
              <p class="halfsection"><?php the_field('work_fields_service'); ?></p>
              <h3>주요실적</h3>
              <p class="halfsection"><?php the_field('work_fields_accomplishment'); ?></p>
            </div>
        <?php endwhile; endif; ?>
            <div class="small-6 medium-3 large-2 columns large-offset-1 end">
              <?php 
                $posts = get_field('team_member');
                if( $posts ): ?>
                <?php foreach( $posts as $post): // variable must be called $post (IMPORTANT) ?>
                <?php setup_postdata($post); ?>
                <div class="member_container halfsection">
                    <div class="member"><?php the_post_thumbnail(); ?></div>
                        <p class="member_name"><?php the_title(); ?></p>
                            <ul class="members_info">
                                <li><?php the_field('members_position'); ?></li>
                                <li><?php the_field('members_e-mail'); ?></li>
                                <li><?php the_field('members_phone'); ?></li>
                            </ul>
                    </div>
        <?php endforeach; ?>
<?php endif; ?>
                </div>  
            </div>
          </div>
        </div>



谢谢Ahmed,这段代码确实有效,但问题是我的自定义帖子类型“work\u field”没有任何“内容”。它由一组自定义字段类型组成,这些字段类型使用post的元数据组合在一个自定义的post类型中。因此,如果我使用此代码,则不会打印任何内容,因为我的自定义帖子类型中没有内容框。因此,是否要打印为自定义帖子类型存储的元数据?我的工作字段自定义帖子由两列组成。左列由4个自定义字段组成,右列由一个循环组成,该循环从另一个名为“members”的自定义post类型获取自定义字段数据。我想把那篇完整的文章放到我的网页上。我找到了一个解决方法(虽然有效,但不是真正的解决方案),我现在就发布它。
<div class="row">
  <div class="small-12 medium-10 large-offset-1 columns">
    <h2><?php the_title(); ?></h2>
  </div>
</div>  
<div class="row halfsection">
  <div class="small-12 medium-10 large-offset-1 columns">
    <div class="category_container">
      <?php
        $args = array(
            'post_type' => 'work_fields',
        );
        $query = new WP_Query( $args );
      ?>
      <?php if ( $query->have_posts() ) : ?>
      <?php while ( $query->have_posts() ) : $query->the_post(); ?>  
        <p class="category_item"><a class="post-link" rel="<?php the_ID(); ?>" href="<?php the_permalink(); ?>"><?php  echo get_the_title(); ?></a></p> 
      <?php endwhile; endif; ?>

    </div>
  </div>
</div>
<div class="row">
    <div class="small-12 medium-10 large-offset-1 columns">
        <hr>
    </div>
</div>                  
<div id="single-post-container">
  <?php
    $args2 = array(
    'orderby' => 'post_date',
    'order' => 'DESC',
    'post_type' => 'work_fields',
    'post_status' => 'publish',
    'posts_per_page' => 1,
    );
    $query2 = new WP_Query( $args2 );
        if ( $query2->have_posts() ) : ?>
        <?php $post = get_post($_POST['id']); ?>
        <div id="single-post post-<?php the_ID(); ?>">
        <?php while ( $query2->have_posts() ) : $query2->the_post(); ?>  
          <div class="row section">
            <div class="small-12 medium-7 large-offset-1 columns">
              <h2><?php the_title(); ?></h2>
              <h3>소개</h3>
              <p class="halfsection"><?php the_field('work_fields_intro'); ?></p>
              <h3>주요서비스</h3>
              <p class="halfsection"><?php the_field('work_fields_service'); ?></p>
              <h3>주요실적</h3>
              <p class="halfsection"><?php the_field('work_fields_accomplishment'); ?></p>
            </div>
        <?php endwhile; endif; ?>
            <div class="small-6 medium-3 large-2 columns large-offset-1 end">
              <?php 
                $posts = get_field('team_member');
                if( $posts ): ?>
                <?php foreach( $posts as $post): // variable must be called $post (IMPORTANT) ?>
                <?php setup_postdata($post); ?>
                <div class="member_container halfsection">
                    <div class="member"><?php the_post_thumbnail(); ?></div>
                        <p class="member_name"><?php the_title(); ?></p>
                            <ul class="members_info">
                                <li><?php the_field('members_position'); ?></li>
                                <li><?php the_field('members_e-mail'); ?></li>
                                <li><?php the_field('members_phone'); ?></li>
                            </ul>
                    </div>
        <?php endforeach; ?>
<?php endif; ?>
                </div>  
            </div>
          </div>
        </div>