• 欢迎访问癹冬阁,本站专注于IT服务,记录工作点滴

DUX主题随机缩略图及调用第一张图片为缩略图

开源世界 Winter 3年前 (2016-03-25) 1861次浏览 已收录 0个评论

最近用了 DUX1.3主题优化版,发现内容都没有缩略图了,经查要一个个的指定特色图像才会有。但我的大部分文章都是没有图片的,所以只就能想搞个随机缩略图得了。
1.随机缩略图
编辑主题/inc/fn.php 文件,找到
$html = sprintf('', get_stylesheet_directory_uri() . '/img/thumbnail.png' alt="DUX 主题随机缩略图及调用第一张图片为缩略图" title="DUX 主题随机缩略图及调用第一张图片为缩略图", $class);
修改为
$random = mt_rand(1, 15);
$html = sprintf('', get_stylesheet_directory_uri() . '/img/random/'.$random.'.jpg' alt="DUX 主题随机缩略图及调用第一张图片为缩略图" title="DUX 主题随机缩略图及调用第一张图片为缩略图", $class);

然后在主题/img 目录下新建一个目录 random,放入 15 张图片,分别命名为 1.jpg 至 15.jpg.

2.调用第一张图片为缩略图
在 functions.php 文件中加入如下代码:

function autoset_featured() {
global $post;
$already_has_thumb = has_post_thumbnail($post->ID);
if (!$already_has_thumb) {
$attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" );
if ($attached_image) {
foreach ($attached_image as $attachment_id => $attachment) {
set_post_thumbnail($post->ID, $attachment_id);
}
}
}
} //end function
add_action('the_post', 'autoset_featured');
add_action('save_post', 'autoset_featured');
add_action('draft_to_publish', 'autoset_featured');
add_action('new_to_publish', 'autoset_featured');
add_action('pending_to_publish', 'autoset_featured');
add_action('future_to_publish', 'autoset_featured');


癹冬阁版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明DUX 主题随机缩略图及调用第一张图片为缩略图
喜欢 (6)
[winters@8win.net]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址