如何创建每个帖子wordpress的页面细节?

时间:2015-12-04 08:16:42

标签: php 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并查看可以帮助我的内容帖子的详细信息

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:1)

Wordpress有一个Template Hierarchy。如果您为这些帖子使用自定义帖子类型,则可以创建新的single-{post-type}.php文件,当您在此详细信息中输入网址时,使用的文件将为此。

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

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

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