关于wordpress侧边栏常用功能的非插件方式实现
2011-10-15 15:06
357 查看
wordpress侧边栏通常用来放置日历、最新文章、最新评论、文章分类、友情链接等信息,利用wordpress后台侧边栏小工具可以实现一些常用的基本功能,比如日历、友情链接、分类目录等,但是一些复杂的功能比如能要直接显示最新留言、随机显示几篇文章、或者根据当前文章标签显示相关文章,wordpress自带小工具无法直接实现。
可以借助相关的插件来实现,但是插件毕竟有拖慢wordpress速度的隐患,因此,插件能不用尽量不用,并且上面所述功能都可以通过代码实现。
1,侧边栏显示最新文章,该功能实现简单,直接调用wordpress函数即可,下面的代码显示最近的10篇文章,改变函数get_archives第二个数字参数可改变显示的文章数目。
[/code]
2,侧边栏显示随机文章,随机文章使以前的文章有了从见天日的机会,下面的代码随机显示10篇文章,改变numberposts的值可改变随机显示的文章数目。
[/code]
3,侧边栏显示同类文章,当读者浏览某一篇文章时,能够根据当前文章标签显示相关的文章,下面的代码显示最近的10篇文章,改变numberposts的值可改变显示的文章数目。
[/code]
4,侧边栏显示最新评论,wordpress自带的显示评论方式很不友好,读者不能直接看到评论内容,要想显示评论内容需借助下面的代码。这段代码能显示留言者名字和具体留言内容,比wordpress自带的评论显示更加直观,这段代码来自豆瓣九点风格主题。
[/code]
5侧边栏显示评论最多的文章,该功能的实现仍然来自豆瓣九点主题,需要一个自定义函数get_most_comment,将该函数放在主题functions.php文件内,供主题调用。
[/code]
在侧边栏加入以下代码,即可显示热评文章。
[/code]
在任何需要显示相关文章的地方都可以使用这些代码,比如,可以在文章页面最下面显示相关文章,显示热评推荐等。
另外一个显示分类目录的函数也很好用,能在分类目录后面显示目录内文章数量,该函数为<?phpwp_list_pages('depth=3&title_li=<h2>Pages</h2>');?>,它通过depth控制目录级别。
可以借助相关的插件来实现,但是插件毕竟有拖慢wordpress速度的隐患,因此,插件能不用尽量不用,并且上面所述功能都可以通过代码实现。
1,侧边栏显示最新文章,该功能实现简单,直接调用wordpress函数即可,下面的代码显示最近的10篇文章,改变函数get_archives第二个数字参数可改变显示的文章数目。
[code] <li><h2><?php _e(‘最新文章’);?></h2>
<ul>
<?php get_archives(‘postbypost’, 10);?>
</ul>
</li>
[/code]
2,侧边栏显示随机文章,随机文章使以前的文章有了从见天日的机会,下面的代码随机显示10篇文章,改变numberposts的值可改变随机显示的文章数目。
[code] <li><h2><?php _e(‘随机文章’);?></h2>
<ul>
<?php $rand_posts = get_posts(‘numberposts=10&orderby=rand’);
foreach( $rand_posts as $post ) :?>
<li>
<a href=”<?php the_permalink();?>”><?php the_title();?></a>
</li>
<?php endforeach;?>
</ul>
</li>
[/code]
3,侧边栏显示同类文章,当读者浏览某一篇文章时,能够根据当前文章标签显示相关的文章,下面的代码显示最近的10篇文章,改变numberposts的值可改变显示的文章数目。
[code] <li><h2><?php _e(‘同类文章’);?></h2>
<ul>
<?php $posts = get_posts(‘numberposts=10&category=’. $category->term_id); foreach($posts as $post) :?>
<li>
<a href=”<?php the_permalink();?>”><?php the_title();?></a>
</li>
<?php endforeach;?>
</ul>
</li>
[/code]
4,侧边栏显示最新评论,wordpress自带的显示评论方式很不友好,读者不能直接看到评论内容,要想显示评论内容需借助下面的代码。这段代码能显示留言者名字和具体留言内容,比wordpress自带的评论显示更加直观,这段代码来自豆瓣九点风格主题。
[code] <li><h2><?php _e(‘最新评论’);?></h2>
<ul>
<?php global $wpdb; $sql = “SELECT DISTINCT ID, post_title, post_password, comment_ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type,comment_author_url,SUBSTRING(comment_content,1,20) AS com_excerpt
FROM $wpdb->comments
LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID = $wpdb->posts.ID)
WHERE comment_approved = ’1′ AND comment_type = ” AND
post_password = ”
ORDER BY comment_date_gmt DESC
LIMIT 10″;
$comments = $wpdb->get_results($sql);
$output = $pre_HTML;
foreach ($comments as $comment) {
$output .= “\n<li>”.strip_tags($comment->comment_author)
.”:” . ” <a href=\”" . get_permalink($comment->ID) .
“#comment-” . $comment->comment_ID . “\” title=\”on ” .
$comment->post_title . “\”>” . strip_tags($comment->com_excerpt)
.”</a></li>”;
} $output .= $post_HTML;
echo $output;?>
</ul>
</li>
[/code]
5侧边栏显示评论最多的文章,该功能的实现仍然来自豆瓣九点主题,需要一个自定义函数get_most_comment,将该函数放在主题functions.php文件内,供主题调用。
[code] function get_most_comment($posts_num=10, $days=30){
global $wpdb;
$sql = “SELECT `ID` , `post_title` , `comment_count` FROM $wpdb->posts WHERE `post_type` = ‘post’ AND TO_DAYS( now( ) ) – TO_DAYS( `post_date` ) < $days
ORDER BY `comment_count` DESC LIMIT 0 , $posts_num “;
$posts = $wpdb->get_results($sql);
$output = “”;
foreach ($posts as $post){
$output .= “\n<li><a href= \”".get_permalink($post->ID).”\” rel=\”bookmark\” title=\”".$post->post_title.”\” >”.$post->post_title.”</a></li>”;
} echo $output; }
?>
[/code]
在侧边栏加入以下代码,即可显示热评文章。
[code] <li><h2><?php _e(‘热评推荐’);?></h2>
<ul>
<?php get_most_comment(10,1000);?>
</ul>
</li>
[/code]
在任何需要显示相关文章的地方都可以使用这些代码,比如,可以在文章页面最下面显示相关文章,显示热评推荐等。
另外一个显示分类目录的函数也很好用,能在分类目录后面显示目录内文章数量,该函数为<?phpwp_list_pages('depth=3&title_li=<h2>Pages</h2>');?>,它通过depth控制目录级别。
相关文章推荐
- 关于.net编译过后的程序增加功能的一种实现方式_也可以说是.net exe注入,插件机制_开发记录
- 实现【关于我们】功能(textview的文本样式几种实现方式)
- 关于一个JS功能实现的思维方式
- 关于如何使用js 插件实现打印的功能
- 关于shell中常见功能的实现方式总结
- 非插件实现WordPress站点统计功能
- 关于一个JS功能实现的思维方式
- WordPress非插件版post_view实现文章点击量统计功能
- wordpress不用插件实现Pagenavi页面导航功能
- 详解WordPress中提醒安装插件以及隐藏插件的功能实现
- 关于对Java Struts2+poi插件 实现的 导出Excel功能
- 关于ArcGIS常用功能的实现
- 推荐WordPress 必备的常用插件及插件功能介绍
- Widget logic插件实现wordpress侧边栏布局
- Android 换肤功能的实现(Apk插件方式)
- (android实战)实现【关于我们】功能(textview的文本样式几种实现方式)
- jquery插件方式实现table查询功能
- 关于一个JS功能实现的思维方式
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- 关于一个JS功能实现的思维方式