如何创建每个帖子wordpress的页面详细信息


How to create page detail of each post wordpress?

大家好,我是wordpress的新手,我试图创建每个帖子的页面细节。但我做不到,我想当我点击帖子上的链接并转到帖子的页面细节时

这是我的代码获取每个帖子:

single.php:

 <?php
/**
 * The Template for displaying all single posts
 *
 * @package WordPress
 * @subpackage Twenty_Fourteen
 * @since Twenty Fourteen 1.0
 */
?>
<?php get_header(); ?>
    <div id="primary" class="content-area">
        <div id="content" class="site-content" role="main">
            <?php
                // Start the Loop.
                while ( have_posts() ) : the_post();
                    /*
                     * Include the post format-specific template for the content. If you want to
                     * use this in a child theme, then include a file called called content-___.php
                     * (where ___ is the post format) and that will be used instead.
                     */
                    get_template_part( 'content', get_post_format() );
                    // Previous/next post navigation.
                    twentyfourteen_post_nav();
                    // If comments are open or we have at least one comment, load up the comment template.
                    if ( comments_open() || get_comments_number() ) {
                        comments_template();
                    }
                endwhile;
            ?>
        </div><!-- #content -->
    </div><!-- #primary -->
<?php get_footer(); ?>
<h1>hello</h1>

这是我的活动页面:

<?php 
    $zerif_total_posts = get_option('posts_per_page'); /* number of latest posts to show */
    if( !empty($zerif_total_posts) && ($zerif_total_posts > 0) ):
        echo '<section class="latest-news" id="latestnews">';
            echo '<div class="container">';
                /* SECTION HEADER */
                echo '<div class="section-header">';
                    $zerif_latestnews_title = get_theme_mod('zerif_latestnews_title');
                    /* title */
                    if( !empty($zerif_latestnews_title) ):
                        echo '<h2 class="dark-text">' . $zerif_latestnews_title . '</h2>';
                    else:
                        echo '<h2 class="dark-text">' . __('Our Client','zerif-lite') . '</h2>';
                    endif;
                /* our Client */
                    if(is_active_sidebar( 'menu_client' )):
                    echo '<div id="menu_client">';
                    dynamic_sidebar( 'menu_client' );
                    echo '</div>';
                    endif;
                    /* subtitle */
                    $zerif_latestnews_subtitle = get_theme_mod('zerif_latestnews_subtitle');
                    if( !empty($zerif_latestnews_subtitle) ):
                        echo '<div class="dark-text section-legend">'.$zerif_latestnews_subtitle.'</div>';
                    endif;
                echo '</div><!-- END .section-header -->';
                echo '<div class="clear"></div>';
                echo '<div id="carousel-homepage-latestnews" class="carousel slide" data-ride="carousel">';
                    /* Wrapper for slides */
                    echo '<div class="carousel-inners" role="listbox">';

                        $zerif_latest_loop = new WP_Query( array( 'post_type' => 'post', 'posts_per_page' => $zerif_total_posts, 'order' => 'DESC','ignore_sticky_posts' => true ) );
                        $newSlideActive = '<div class="item active">';
                        $newSlide       = '<div class="item">';
                        $newSlideClose  = '<div class="clear"></div></div>';
                        $i_latest_posts= 0;
                        $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
                        $page_id = get_the_ID(); 
                        if ( $zerif_latest_loop->have_posts() ) :
                            while ( $zerif_latest_loop->have_posts() ) : $zerif_latest_loop->the_post();
                                $i_latest_posts++;
                                if ( !wp_is_mobile() ){
                                        if($i_latest_posts == 1){
                                            echo $newSlideActive;
                                        }
                                        else if($i_latest_posts % 4 == 1){
                                            echo $newSlide;
                                        }
                                        echo '<div class="col-sm-3 latestnews-box">';
                                            echo '<div class="latestnews-img">';
                                                echo '<a class="latestnews-img-a" href="'.get_permalink().'" title="'.get_the_title().'">';
                                                    if ( has_post_thumbnail() ) :
                                                        the_post_thumbnail();
                                                    else:
                                                        echo '<img src="'.esc_url( get_template_directory_uri() ).'/images/blank-latestposts.png" alt="'.get_the_title().'" />';
                                                    endif; 
                                                echo '</a>';
                                            echo '</div>';
                                            echo '<div class="latesnews-content">';
                                                echo '<h3 class="latestnews-title"><a href="'.get_permalink().'" title="'.get_the_title().'">'.get_the_title().'</a></h3>';
                                                the_excerpt();
                                            echo '</div>';
                                        echo '</div><!-- .latestnews-box"> -->';
                                        /* after every four posts it must closing the '.item' */
                                        if($i_latest_posts % 4 == 0){
                                            echo $newSlideClose;
                                        }
                                } else {
                                    if( $i_latest_posts == 1 ) $active = 'active'; else $active = ''; 
                                    echo '<div class="item '.$active.'">';
                                        echo '<div class="col-md-3 latestnews-box">';
                                            echo '<div class="latestnews-img">';
                                                echo '<a class="latestnews-img-a" href="'.get_permalink().'" title="'.get_the_title().'">';
                                                    if ( has_post_thumbnail() ) :
                                                        the_post_thumbnail();
                                                    else:
                                                        echo '<img src="'.esc_url( get_template_directory_uri() ).'/images/blank-latestposts.png" alt="'.get_the_title().'" />';
                                                    endif; 
                                                echo '</a>';
                                            echo '</div>';
                                            echo '<div class="latesnews-content">';
                                                echo '<h3 class="latestnews-title"><a href="'.get_the_permalink().'" title="'.get_the_title().'">'.get_the_title().'</a></h3>';
                                                the_excerpt();
                                            echo '</div>';
                                        echo '</div>';
                                    echo '</div>';
                                }
                            endwhile;               
                        endif;  
                        $max_num_pages = $loop->max_num_pages;
                    echo sofg_pagination($max_num_pages,$paged,$page_id);
                        if ( !wp_is_mobile() ) {
                            // if there are less than 10 posts
                            if($i_latest_posts % 4!=0){
                                echo $newSlideClose;
                            }
                        }
                        wp_reset_postdata(); 
                    echo '</div><!-- .carousel-inner -->';
                    /* Controls */
                    echo '<a class="left carousel-control" href="#carousel-homepage-latestnews" role="button" data-slide="prev">';
                    echo '</a>';
                    echo '<a class="right carousel-control" href="#carousel-homepage-latestnews" role="button" data-slide="next">';
                    echo '</a>';
                echo '</div><!-- #carousel-homepage-latestnews -->';
            echo '</div><!-- .container -->';
        echo '</section>';
endif;

?>

我想当我点击帖子上的链接时,它会转到evenet_page_detail.php并查看内容帖子的详细信息,谁可以帮助我请

Wordpress有一种特定的方法来创建页面以正确访问它们。不要将您的页面命名为evenet_page_detail.php,请将其命名为single.php

您可以在此处获得有关从头开始创建模板的更多信息https://codex.wordpress.org/Stepping_into_Templates

Wordpress有一个模板层次结构。如果您为这些帖子使用自定义的帖子类型,您可以创建一个新的single-{post-type}.php文件,当您在该详细帖子url中输入时,使用的文件将是这样的。

此外,您还可以为某些帖子创建自定义模板文件。这里有一个教程。基本上,您需要创建一个新文件,例如evenet_page_detail.php,第一行包括:

<?php /* Template Name: My template name */ ?> 

然后在post admin中,您需要在右列选择器中选择此模板名称。当您选择此模板时,此文件将用于显示此帖子的详细信息。