微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WordPress实现的首页幻灯片展示功能示例【附demo源码】

本文实例讲述了wordpress实现的首页幻灯片展示功能分享给大家供大家参考,具体如下:

对于wordpress拓展性这么优秀的程序来说,是没有什么不能实现的。很多在建站的时候,都会选择在首页使用幻灯片,可以展示比较醒目的内容。今天就来一个首页幻灯片的制作教程,相信幻灯片在各种企业包括个人网站上面用处还是很大的,做完之后效果和本站首页的一样。

主要是使用了wordpress自定义文章字段的功能来判断是否需要显示首页

1.创建Post Meta Box

/* Fire our Meta Box setup function on the post editor screen. */
add_action( 'load-post.PHP', 'sola_post_Meta_Boxes_setup' );
add_action( 'load-post-new.PHP', 'sola_post_Meta_Boxes_setup' );
/* 这是需要修改的两处之一,本功能只需要一个checkBox,将checkBox的title、id等属性填充到$fields数组中,
后面的代码自动根据数组填充的内容创建Post Meta Box */
$fields = array(
array(
'name' => __('是否在首页幻灯显示'),
'desc' => 'Check this Box and make the post a slider',
'id' => 'sola-post-slider',
'type' => 'checkBox',
'default' => ''
)
);
/* Meta Box setup function. */
function sola_post_Meta_Boxes_setup() {
/* Add Meta Boxes on the 'add_Meta_Boxes' hook. */
add_action( 'add_Meta_Boxes', 'sola_add_post_Meta_Boxes' );
add_action( 'save_post', 'sola_save_post_Meta_Boxes', 10, 2 );
}
/* Create one or more Meta Boxes to be displayed on the post editor screen. */
/* 这里也需要改一下,设置需要创建的Post Meta Box叫什么名字,显示在什么位置 */
function sola_add_post_Meta_Boxes() {
add_Meta_Box(
'sola-post-slider-class', // Unique ID
__('首页幻灯片'), // Title
'sola_SEO_Box_format', // Callback function
'post', // Admin page (or post type)
'side', // Context
'default' // Priority
);
}
function sola_SEO_Box_format(){
global $fields,$post;
// Use nonce for verification
echo '';
echo '';
foreach ($fields as $field) {
// get current post Meta data
$Meta = get_post_meta($post->ID, $field['id'], true);
echo ''. $field['name']. ''.
''. '
'. $field['desc'];
break;
case 'textarea':
echo ''. ($Meta ? $Meta : $field['default']) . ''. '
'. $field['desc'];
break;
case 'select':
echo '';
foreach ($field['options'] as $option) {
echo ''. $option . '';
}
echo '';
break;
case 'radio':
foreach ($field['options'] as $option) {
echo '' . $option['name'];
}
break;
case 'checkBox':
echo '';
break;
}
echo 'post_type );
//Check permissions
if ( !current_user_can( $post_type->cap->edit_post, $post_id ) )
return $post_id;
foreach ($fields as $field) {
$old = get_post_meta($post_id, $field['id'], true);
$new = $_POST[$field['id']];
if ($new && $new != $old) {
update_post_Meta($post_id, $field['id'], $new);
} elseif ('' == $new && $old) {
delete_post_Meta($post_id, $field['id'], $old);
}
}
}

这段代码会在文章创建和编辑页面创建如下所示的Post Meta Box :

文章时,勾选在首页显示幻灯片,这篇文章就会自动推送到首页幻灯片中。

2.读取幻灯片文章

接下来修改slider.PHP,使用post Meta Box实现,就需要根据post的Meta信息搜索幻灯片代码如下

$args = array(
'posts_per_page' => 4,
'Meta_key' => 'sola-post-slider',
'Meta_value' => 'on',
);
query_posts($args);

用get_posts()和Meta_query参数结合,就可以达到目的,有了数据,直接循环输出就行

希望本文所述对大家基于wordpress的程序设计有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐