网站相册要求达到的效果:
导航里做一个相册分类(用page或者single或者自定义都行),点击进去是一个相册分类,展示所有相册的封面,点击封面进去展示所有相片(相片太多的话要能分页)。点击其中的一张相片进入另外一个页面(或当前页面遮罩层),该页面显示刚才点击的这张相片的大图,并且下面一横排显示该相片同分类的其他相片的缩略图,左右有切换滚动按钮。可以参考QQ空间的相册功能。再考虑相应的评论功能。
如果不会wordpress二次开发的话,其实可以用插件实现相册画廊功能。如Portfolio,还有很多相应的插件,都可以实现。
这样的需求不是单一的做一个页面模板就行,还要注册相应功能到function.php里,调用代码也相应插到模板文件里,其他......看来要付费才能二次开发的。
本人喜欢代码实现功能,有时间折腾吧。这里的一个相册思路:
代码A:
使用WordPress做相册功能
很直接的原因,有些照片想和朋友共享,简单的想法就是直接发一篇文章,然后文章中只有照片和照片说明,读者可以评论。这其实和一片普通的文章没什么区别,唯一的不同在于这个页面的显示格式稍有不同。比如说,照片显示的时候最好没有边栏,显示照片类的时候,也应该没有边栏。
为此,需要做以下修改。
1.添加一个新的单页面模版。比如叫pict模版,然后判断如果是照片类的文章,就选用这个模版,否则用缺省的single模版。
2.添加一个新的分类页面模版picyarch,如果分类为照片类,那么选用这个模版。否则用缺省的分类模版。
具体的实现,可以通过添加一个filter 实现。代码如下所示。
function pic_temp($template){ $category = get_the_category(); if(is_single() && $category[0]->cat_name == "照片") { $template = get_query_template('pict') ; } if( ( is_category() || is_archive() ) && $category[0]->cat_name == "照片" ){ $template = get_query_template('pictarch') ; } return $template ; } add_filter('template_include', 'pic_temp');
点击分类目录中的”照片”可以看到真实的效果。
代码B:
创建一个相册画廊:
图像大小例子:
add_image_size( 'album-grid', 225, 150, true );
创建一个模板文件archive-albums.php。创建循环,网页前台模板显示。
示例:
<li class="album-grid"><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_post_thumbnail('album-grid'); ?></a></li> <?php if ( $post->post_type == 'albums' && $post->post_status == 'publish' ) { $attachments = get_posts( array( 'post_type' => 'attachment', 'posts_per_page' => -1, 'post_parent' => $post->ID, 'exclude' => get_post_thumbnail_id() ) ); if ( $attachments ) { foreach ( $attachments as $attachment ) { $class = "post-attachment mime-" . sanitize_title( $attachment->post_mime_type ); $title = wp_get_attachment_link( $attachment->ID, 'album-grid', true ); echo '<li class="' . $class . ' album-grid">' . $title . '</li>'; } } } ?>
学习
WordPress一览无余,源码面前没有秘密,wordpress的函数调用库,展示wordpress页面打开过程中十几万个函数调用,学习WP开发的绝佳资源。点击这里进入。
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫