对index.php和Single.php进行更深入的编辑

时间:2014-12-29 作者:Rogare

我想完全定制主博客页面(index.php)和个人帖子页面(single.php)的CSS和HTML。然而,在索引中查找。php和single。php,我不知道如何获得我正在寻找的HTML/CSS,因为它似乎是通过外部php函数实现的。

作为一个例子,我想有我的索引。html页面最近的两到三篇帖子都有类似的内容:

<div class="post_summary">
<img src="post_image1.png" class="post_image"/>
<h1>Name of first post</h1>
<p class="post_date">December 29th, 2014</p>
<a href="first_post.html">Read more...</a>
</div>
据推测,这将涉及一个PHP循环,并提取每篇文章的特征图像、名称和日期。任何关于如何实现这一点的建议都将是非常棒的!感谢阅读。

2 个回复
最合适的回答,由SO网友:Amit Mishra 整理而成

嘿,在索引中添加以下代码。php文件显示最近的三篇博客文章,如下所示

 <?php                  
            query_posts(array(
                \'post_type\'      => \'post\',
                \'posts_per_page\' => 3,
                \'order\'    => \'ASC\',            
            ));
    ?>          

 <?php  if ( have_posts() ) :?>
    <?php while ( have_posts() ) :the_post(); ?>
         <!-- Start BlogItem -->        
            <article id="post-<?php the_ID();?>" <?php post_class();?>>
                 <?php the_post_thumbnail( \'large\' );?>
                <header class="entry-header">
                    <h1><a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( \'Permalink to %s\', \'blog\' ), the_title_attribute( \'echo=0\' ) ); ?>" rel="bookmark"><?php the_title(); ?></a></h1>  
            <p class="post_date"><?php blog_posted_on(); ?></p>
                </header><!-- .entry-header -->
            <!-- Start content -->
                      <div class="content"><?php wp_excerpt(\'post_len\',\'post_readmore\'); ?></div>   
                    <!-- This is used to provide More Links-->                        
                    <!-- End content -->
                 </article>
                 <!-- End BlogItem --> 
            <?php endwhile; ?>
            <?php endif;?>
并在函数中添加这两个函数。php文件

   if ( ! function_exists( \'blog_posted_on\') ):         
        function blog_posted_on(){
             if ( count( get_the_category() ) ) :                               
                printf( __( \'On %2$s \', \'blog\' ), \'entry-utility-prep entry-utility-prep-cat-links\', get_the_category_list( \', \' ) );                           
                printf( __( \'%2$s <span class="%1$s"></span> <span>writing by</span> %3$s\', \'blog\'),
                 \'meta-prep meta-prep-author\',
                  sprintf( \'<a href="%1$s" title="%2$s" rel="bookmark"><span>%3$s</span></a>\',
                   get_permalink(),
                   esc_attr(get_the_time() ),
                   get_the_date()                       
                ),
                 sprintf( \'<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s">%3$s</a></span>\',
                    get_author_posts_url( get_the_author_meta( \'ID\' ) ),
                        sprintf( esc_attr__( \'View all posts by %s\', \'blog\' ), get_the_author() ),
                        get_the_author()
                    )                       
                    );
            endif; 
        }            
  endif;



function wp_excerpt($length_callback = \'\', $more_callback = \'\')
        {
            global $post;
            if (function_exists($length_callback)) {
                add_filter(\'excerpt_length\', $length_callback);
            }
            if (function_exists($more_callback)) {
                add_filter(\'excerpt_more\', $more_callback);
            }
            $output = get_the_excerpt();
            $output = apply_filters(\'wptexturize\', $output);
            $output = apply_filters(\'convert_chars\', $output);
            $output = \'<p>\' . $output . \'</p>\';
            echo $output;
        }

        function post_len($length) {
            return 41;
        }

        function post_readmore($more){
        global $post;
        return \'<span class="post-read-more-color"><a href="\'. get_permalink() . \'">\' . __( \' Read more...\') . \'</a></span>\';
        }  
它工作得很好。

SO网友:Rarst

在模板文件中看到的内容is “实际”代码。WordPress是PHP应用程序,其模板是PHP驱动的。这就是从非动态站点迁移的意义、区别和优势。

have 使用WordPress处理PHP。幸运的是,促成其流行的最重要因素之一是主题修改非常容易开始。

您可能应该从Codex中的文档开始Stepping into TemplatesStepping Into Template Tags 在WordPress一侧。然而PHP Manual 这也是你应该注意的。

结束