wordpress点击伸缩归档(archives)页面

archives

其实以前曾经学习过一个样式 Css打造伸缩时间轴样式的WordPress归档页面archive.php

1、创建归档函数到 functions.php 里

其实你可以单独新建一个archives.php文件,把以下的代码复制进去,然后在 functions.php 引入文件

  1. /**
  2.  * 引入归档函数
  3.  */
  4. require get_template_directory() . 'archives.php';

或者直接复制以下代码到functions.php 里,代码太长,点击这里下载 原代码

2、创建page-archives.php页面模板

页面内容可以简单以下,主要是在这个页面里要调用函数自定义的归档函数zww_archives_list();

  1. <?php
  2. /**
  3.  * Template Name:Archives
  4.  */
  5. get_header(); ?>
  6.   <div><?php zww_archives_list(); ?> </div>
  7. <?php get_footer(); ?>

登陆wordpress后台-页面-新建页面-然后新建页面(如叫:归档),选择模版为 Archives

3、给主题加载 jQuery 库,没有加载的,把下面这句扔到 functions.php 里面就行了。

WordPress引入css/js两种方法

  1. wp_enqueue_script('jquery');

4、jQuery 代码:

如果你的主题引入了 jQuery 库,那么下面这段代码你完全可以放到page-archives.php里

  1. <script type="text/javascript">
  2. (function ($, window) {
  3. 	$(function() {
  4. 		var $a = $('#archives'),
  5. 			$m = $('.al_mon', $a),
  6. 			$l = $('.al_post_list', $a),
  7. 			$l_f = $('.al_post_list:first', $a);
  8. 		$l.hide();
  9. 		$l_f.show();
  10. 		$m.css('cursor', 's-resize').on('click', function(){
  11. 			$(this).next().slideToggle(400);
  12. 		});
  13. 		var animate = function(index, status, s) {
  14. 			if (index > $l.length) {
  15. 				return;
  16. 			}
  17. 			if (status == 'up') {
  18. 				$l.eq(index).slideUp(s, function() {
  19. 					animate(index+1, status, (s-10<1)?0:s-10);
  20. 				});
  21. 			} else {
  22. 				$l.eq(index).slideDown(s, function() {
  23. 					animate(index+1, status, (s-10<1)?0:s-10);
  24. 				});
  25. 			}
  26. 		};
  27. 		$('#al_expand_collapse').on('click', function(e){
  28. 			e.preventDefault();
  29. 			if ( $(this).data('s') ) {
  30. 				$(this).data('s', '');
  31. 				animate(0, 'up', 100);
  32. 			} else {
  33. 				$(this).data('s', 1);
  34. 				animate(0, 'down', 100);
  35. 			}
  36. 		});
  37. 	});
  38. })(jQuery, window);
  39. </script>

也可以直接打开 header.php 并找到 ,在其下面加上

  1. <script type="text/javascript">上面那段 jQuery 代码</script>

4、Css参考

这样即使成功的话也非常不好看,剩下的就是根据自己的布局加入CSS了,你要好好的研究zww_archives_list() 里面的Html结构,然后编写自己喜欢的CSS,这里分享一下我的css.

  1. /*
  2.  * ---------------文章归档页面样式--------------------
  3.  */
  4. #main-archivest{;margin:20px 0;}
  5. .m-title{text-align:center;border-bottom:solid 1px #ccc;}
  6. .al_mon{font-weight:bold;}
  7. #archives ul li {list-style-type:none;}
  8. #archives ul >li{padding:0 0 8px 5px;border-left:solid 1px #ccc;background-image:url(li.png); padding-left:20px; background-repeat:no-repeat;}
  9. #archives ul>li>ul{margin:0;padding:0;}
  10. #archives ul>li>ul>li{list-style-type:none;background-image:url(li.gif); padding-left:20px;background-repeat:no-repeat; border-left:dashed 1px #ccc;}

其实你可以完全复制,稍加修改。

5、小结

1、 因为查询度有点大,所以有加数据库缓存,只在文章发表/修改时才会更新缓存数据,所以测试时,可以特意去后台点“快速编辑”文章然后点更新就可以更新缓存数据。
2、 参考原文:http://zww.me/
3、 本站效果预览 http://www.511yj.com/archives
4、 遇到问题留言交流。


发布日期:

所属分类: Wordpress 综合 标签: