|
帖子内包含图片,需登陆后查看高清大图
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
这两天一直在折腾文章归档和邮件回复模板,文章归档是我在用wordpress的时候的一个修改版本,仅仅就是把js效果添加上而已,而评论邮件回复的样式是我在网站随便溜达的时候看到的,有加以修改适合自己现在使用的东西采用的。今天又人问道wordpress下的这两种东西,所以今天就整理了一下,发出来。希望对博友们有用,也算是记录一下自己折腾的历史吧。
1、wordpress下文章归档页面(免插件,Js可伸缩效果)。
直接将下面的代码copy一下,放到一个新建页面,然后前台调用就好。因为有点懒,所以就不解释了。 - <?php
- /*
- Template Name: 文章归档
- */
- ?>
- <?php get_header(); ?>
- <!--这里开始CSS样式定义-->
- <style type="text/css">
- .my-archive h3 {cursor:move;margin-top:3px;}
- .my-archive ul li{list-style:none outside none;padding-top:2px;text-indent:8px;}
- </style>
- <!-- css end-->
- <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
- <div id="content">
- <div id="post">
- <div id="pageContent">
- <h2>文章归档</h2>
- <!--核心代码开始-->
- <span id="control" style="cursor:pointer;color:#666666;text-shadow:0 0 2px #66CD00;float: right;font-size: 15px;">全部展开/收起</span>
- <div class="my-archive">
- <?php
- $previous_year = $year = 0;
- $previous_month = $month = 0;
- $ul_open = false;
- $myposts = get_posts('numberposts=-1&orderby=post_date&order=DESC');
- ?>
- <?php foreach($myposts as $post) : ?>
- <?php
- setup_postdata($post);
- $year = mysql2date('Y', $post->post_date);
- $month = mysql2date('n', $post->post_date);
- $day = mysql2date('j', $post->post_date);
- ?>
- <?php if($year != $previous_year || $month != $previous_month) : ?>
- <?php if($ul_open == true) : ?>
- </ul>
- <?php endif; ?>
- <h3><?php the_time('Y年 m月'); ?></h3>
- <ul>
- <?php $ul_open = true; ?>
- <?php endif; ?>
- <?php $previous_year = $year; $previous_month = $month; ?>
- <li><span><?php the_time('m-d'); ?><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a><span style="float:right;"><a class="comm" href="<?php comments_link(); ?>" title="查看 <?php the_title(); ?> 的评论"><?php comments_number('0', '1', '%'); ?>人吐槽</a></span><span style="float:right; padding-right:20px;"><?php if(function_exists('the_views')) the_views(); ?></span></span></li>
- <?php endforeach; ?>
- </ul>
- </div>
- <!--核心代码结束-->
- </div> </div>
- <?php endwhile; endif; ?>
- <?php get_footer(); ?>
- <!--这里开始jQuery-->
- <script type="text/javascript">
- jQuery(function($){
- $('.my-archive ul:gt(0)').hide();//第0和1 列默认显示,其他默认隐藏
- $('.my-archive h3').click(function() {//点击标题动作
- $('.my-archive ul').slideUp(300);//展开选择列
- $(this).next('ul').slideDown(500);//缩放同级其他元素
- });
- //一下是全局的操作
- $('#control').toggle(
- function(){
- $('.my-archive ul').slideUp();
- },
- function(){
- $('.my-archive ul').slideDown();
- });
- });
- </script>
复制代码
2、wordpress下评论邮件回复模板。
这个模板和我现在用的邮件回复样式是一样的,想看图片的话请点击这里查看。好久没折腾过wordpress东西, 不知道下面的会不会有bug,我仔细检查过了,应该没错。把下面代码放到functions.php里,?>之前,如果之前有评论回复邮件的话,可以直接把它覆盖掉,当然也可以对比着来修改。下面的代码没有可选是否留言回复这个复选框,如果想添加上的话那就按照你的那个东西在相应的位置加上就好。 - //评论回复邮件
- function comment_mail_notify($comment_id) {
- $comment = get_comment($comment_id);
- $parent_id = $comment->comment_parent ? $comment->comment_parent : '';
- $spam_confirmed = $comment->comment_approved;
- if (($parent_id != '') && ($spam_confirmed != 'spam')) {
- $wp_email = 'no-reply@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME']));//发件人e-mail地址
- $to = trim(get_comment($parent_id)->comment_author_email);
- $subject = '您在 [' . get_option("blogname") . '] 的留言有了回應';
- $message = '
- <div style="background-color:#fff; border:1px solid #666666; color:#111;
- -moz-border-radius:8px; -webkit-border-radius:8px; -khtml-border-radius:8px;
- border-radius:8px; font-size:12px; width:702px; margin:0 auto; margin-top:10px;
- font-family:微软雅黑, Arial;">
- <div style="background:#666666; width:100%; height:60px; color:white;
- -moz-border-radius:6px 6px 0 0; -webkit-border-radius:6px 6px 0 0;
- -khtml-border-radius:6px 6px 0 0; border-radius:6px 6px 0 0; ">
- <span style="height:60px; line-height:60px; margin-left:30px; font-size:12px;">
- 您在<a style="text-decoration:none; color:#00bbff;font-weight:600;"
- href="' . get_option('home') . '">' . get_option('blogname') . '
- </a>博客上的留言有回复啦!</span></div>
- <div style="width:90%; margin:0 auto">
- <p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p>
- <p>您曾在 [' . get_option("blogname") . '] 的文章
- 《' . get_the_title($comment->comment_post_ID) . '》 上发表评论:
- <p style="background-color: #EEE;border: 1px solid #DDD;
- padding: 20px;margin: 15px 0;">' . nl2br(get_comment($parent_id)->comment_content) . '</p>
- <p>' . trim($comment->comment_author) . ' 给您的回复如下:
- <p style="background-color: #EEE;border: 1px solid #DDD;padding: 20px;
- margin: 15px 0;">' . nl2br($comment->comment_content) . '</p>
- <p>您可以点击 <a style="text-decoration:none; color:#00bbff"
- href="' . htmlspecialchars(get_comment_link($parent_id)) . '">查看回复的完整內容</a></p>
- <p>欢迎再次光临 <a style="text-decoration:none; color:#00bbff"
- href="' . get_option('home') . '">' . get_option('blogname') . '</a></p>
- <p>(此邮件由系统自动发出, 请勿回复.)</p>
- </div>
- </div>';
- $from = "From: "" . get_option('blogname') . "" <$wp_email>";
- $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
- wp_mail( $to, $subject, $message, $headers );
- //echo 'mail to ', $to, '<br/> ' , $subject, $message; // for testing
- }
- }
- add_action('comment_post', 'comment_mail_notify');
复制代码 转载自 @所谓刚子 http://www.cgrabbit.info/blog/Wordpress-under-article-archive-page-and-comments-e-mail-reply-template.html
该贴已经同步到 杨景文的微博 |
|