一款简单的免费WordPress问答中心插件DW Question & Answer,你值得拥有!
预览地址:https://dedewp.com/dwqa-questions/
后台搜索安装插件后会发现插件会自动新建两个页面,你可以自行修改页面标题。
下面分享下如何设置问答的固定连接为id.html格式,只需将下面的代码添加到当前主题的 functions.php :
/** * 自定义问答页面的固定链接结构为 id.html * https://www.wpdaxue.com/custom-post-type-permalink-code.html */ add_filter('post_type_link', 'custom_qa_link', 1, 3); function custom_qa_link( $link, $post = 0 ){ if ( $post->post_type == 'dwqa-question' ){ return home_url( 'question/' . $post->ID .'.html' ); } else { return $link; } } add_action( 'init', 'custom_qa_rewrites_init' ); function custom_qa_rewrites_init(){ add_rewrite_rule( 'question/([0-9]+)?.html$', 'index.php?post_type=dwqa-question&p=$matches[1]', 'top' ); }
添加后,如果访问问答页面出现 404 错误,请访问WP后台 – 设置 – 固定链接,保存一遍这里的设置即可。如果还不行,很可能是你的主机不支持伪静态,请联系你的主机商。
如何调用问答列表,比如最热问答?最新问答?随机问答?
1、随机问答列表
/** * 调用最新问题列表 */ <?php $instance = wp_parse_args( $instance, array( 'title' => __('Latest Questions','dwqa'), 'number' => 10 //调用的多少条 ) ); $args = array( 'posts_per_page' => $instance['number'], 'order' => 'DESC', 'orderby' => 'post_date', 'post_type' => 'dwqa-question', 'suppress_filters' => false ); $questions = new WP_Query( $args ); while( $questions->have_posts() ) { $questions->the_post(); ?> <li><a href="<?php the_permalink(); ?>" title="<?php the_title();?>"><?php the_title();?></a></li> <?php } wp_reset_query();?>
2、最热问答列表
/** * 调用热门问题列表 */ <?php $instance = wp_parse_args( $instance, array( 'title' => __('Popular Questions','dwqa'), 'number' => 10 //调用的多少条 ) ); $args = array( 'posts_per_page' => $instance['number'], 'order' => 'DESC', 'orderby' => 'meta_value_num', 'meta_key' => '_dwqa_views', 'post_type' => 'dwqa-question', 'suppress_filters' => false ); $questions = new WP_Query( $args ); while( $questions->have_posts() ) { $questions->the_post(); ?> <li><a href="<?php the_permalink(); ?>" title="<?php the_title();?>"><?php the_title();?></a></li> <?php } wp_reset_query();?>
3、最新问答列表
/** * 调用最新问题列表 */ <?php $instance = wp_parse_args( $instance, array( 'title' => __('Latest Questions','dwqa'), 'number' => 6 //调用的多少条 ) ); $args = array( 'posts_per_page' => $instance['number'], 'order' => 'DESC', 'orderby' => 'post_date', 'post_type' => 'dwqa-question', 'suppress_filters' => false ); $questions = new WP_Query( $args ); while( $questions->have_posts() ) { $questions->the_post(); ?> <li><a href="<?php the_permalink(); ?>" title="<?php the_title();?>"><?php the_title();?></a></li> <?php } wp_reset_query();?>
一般来说该插件适用于任何主题,如果需要修改成陌小雨现在在用的样式,留言联系哦!