使用wordpress时间久了就想增加些个性功能,感觉柳城博主的这个wp_today功能还是蛮不错的,及个性化自己的网站,同时对于网站的seo排名也是小有帮助,比起常规的相关文章插件也更能吸引人吧,但是插件多了毕竟影响速度,所以,也在网上找了一个代码版的。
以下是基本的代码可按自己喜欢的样式修改。本文作为对博客修改的一次记录,同时也希望帮助到那些需要的站长们。按步骤将以下代码添加到function.php文件末尾即可。
- //历史上的今天,代码来自柳城博主的 WP-Today 插件
- function wp_today(){
- global $wpdb;
- $post_year = get_the_time('Y');
- $post_month = get_the_time('m');
- $post_day = get_the_time('j');
- $sql = "select ID, year(post_date_gmt) as h_year, post_title, comment_count FROM
- $wpdb->posts WHERE post_password = '' AND post_type = 'post' AND post_status = 'publish'
- AND year(post_date_gmt)!='$post_year' AND month(post_date_gmt)='$post_month' AND day(post_date_gmt)='$post_day'
- order by post_date_gmt DESC limit 5";
- $histtory_post = $wpdb->get_results($sql);
- if( $histtory_post ){
- foreach( $histtory_post as $post ){
- $h_year = $post->h_year;
- $h_post_title = $post->post_title;
- $h_permalink = get_permalink( $post->ID );
- $h_comments = $post->comment_count;
- $h_post .= "<li><strong>$h_year:</strong> <a href='".$h_permalink."' title='".$h_post_title."' target='_blank'>$h_post_title($h_comments)</a></li>";
- }
- }
- if ( $h_post ){
- $result = "<h2>历史上的今天:</h2><ul>".$h_post."</ul>";
- }
- return $result;
- }
- function wp_today_auto($content){
- if( is_single() ){
- $content = $content.wp_today();
- }
- return $content;
- }
- add_filter('the_content', 'wp_today_auto',9999);
上述代码默认是在文章结尾自动添加。
如果需要自定义显示位置,则只需去掉上述代码的以下部分。
- function wp_today_auto($content){
- if( is_single() ){
- $content = $content.wp_today();
- }
- return $content;
- }
- add_filter('the_content', 'wp_today_auto',9999);
然后在需要显示的位置用下面函数调用即可。
- <?php echo wp_today(); ?>