鸡西网—微信标志
  • 鸡西网站制作
  • 鸡西网客服热线已更改为”400-0467-004“,请广大客户周知。
  • 鸡西网站设计为您提供免费技术问答.如有您有计算机的相关问题欢迎前来咨询!
  • 敢不敢在鸡西网High一下
  • 网站地图

鸡西网站设计的D8主题实现随机缩略图

WordPress Danny.✔ 4440浏览 0评论 百度收否

最近这些天,鸡西网站设计D8主题讨论群中发现很多使用D8主题朋友们都在因为缩略图的问题困惑,因为很多文章都是不需要缩略图的,而D8主题默认情况下是必须要有缩略图,所以非常需要实现在D8主题中实现随机缩略图

鸡西网站设计在经过了几天的准备并采取了一些使用D8主题朋友的建议,结合了多个随即缩略图案例,现整理出D8主题实现缩略图的方法供有需要的朋友使用。这里稍微提一点,很多朋友担心现在修改D8主题会影响将来主题的升级。鸡西网站设计请大家放心,升级主题是必须的。而我们修改过的部分,例如按照《大前端 D8主题 置顶导航菜单》或者《大前端 D8主题 导航页面模板》两篇文章修改过的主题,是肯定需要重新再做一遍的,这是最简单最直接的方法。我们会做到尽量与新版主题兼容。

注:在使用中,如果有什么问题和建议或者有不懂的地方,请在评论中提出。鸡西网站设计会及时回复并不断修改实现随机缩略图的方法。还请看了教程的朋友能给我们做个链接啊,如果需要转载我们的内容,请务必在内容中带有来源于鸡西网站设计的链接字样。感谢大家的支持!!!

效果演示(请不断刷新页面查看随机缩略图变化,本站启用了加速乐缓存,需间隔、多刷新几次)

需要 D8主题 实现随机缩略图,共分四步,请认真对照修改。

第一步:建立articlepic.php

在主题目录中的modules文件夹下建立名为articlepic.php的文件,并粘贴如下代码:

<?php if ( get_post_meta($post->ID, 'thumbnail', true) ) : ?>
<?php $image = get_post_meta($post->ID, 'thumbnail', true); ?>
<a href="<?php the_permalink() ?>" class="thumbnail"><img src="<?php echo $image; ?>" alt="<?php the_title(); ?>"/></a>
<?php else: ?>
<a href="<?php the_permalink() ?>" class="thumbnail">
<?php if (has_post_thumbnail()) { the_post_thumbnail('thumbnail'); }
else { ?>
<img src="<?php echo catch_first_image() ?>" width="220px" height="150px" alt="<?php the_title(); ?>"/>
<?php } ?>
</a>
<?php endif; ?>

第二步:建立random文件夹并上传随机缩略图

在主题目录中的img文件夹下,建立名为random的文件夹,并把准备作为随机缩略图的图片以文件名为pic1.jpg、pic2.jpg的文件名形式进行上传至random文件夹中。这样做是把随机缩略图与主题自带的图片区别开,为了便于管理。
注意:随机缩略图的数量默认是10张。如果需要减少或者增加,请修改第三步代码中的红色标记部分(例:$random = mt_rand(1, 3);这里3的意思,就是代表共有3张缩略图,此数字必须填写为random文件夹下作用于随机缩略图的实际数量)。

第三步:修改functions.php

这里请大家仔细阅读

打开主题目录下functions.php文件。在最下边,注意是最下边,没有任何代码的位置,添加如下代码的任意一种。(一共两份代码,鸡西网站设计推荐使用第一种。解释:第一种代码的作用是如果文章内没有设置缩略图,但是文章内容里包含了图片,那么会自动以文章内的第一张图片作为缩略图,同时包含了第二种的作用代码。第二种代码的作用是不管文章内有没有设置缩略图,也不管文章内有没有图片,都随机出现文件夹中的缩略图)

第一种代码

<?php
//随机缩略图
if ( function_exists('add_theme_support') )
add_theme_support('post-thumbnails');
function catch_first_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){
$random = mt_rand(1, 10);
echo get_bloginfo ( 'stylesheet_directory' );
echo '/img/random/pic'.$random.'.jpg';
}
return $first_img;
}
?>

第二种代码

<?php
//随机缩略图
if ( function_exists('add_theme_support') )
add_theme_support('post-thumbnails');
function catch_first_image() {
if(empty($first_img)){
$random = mt_rand(1, 10);
echo get_bloginfo ( 'stylesheet_directory' );
echo '/img/random/pic'.$random.'.jpg';
}
return $first_img;
}
?>

第四步:修改excerpt.php

首先打开主题目录下modules文件夹中的excerpt.php,查找如下代码:

<a href="<?php the_permalink(); ?>" class="thumbnail"><?php deel_thumbnail(); ?></a>

删除 替换成如下代码:

<?php include('articlepic.php'); ?><?php /* <a href="<?php the_permalink(); ?>" class="thumbnail"><?php deel_thumbnail(); ?></a> */ ?>

鸡西网站设计恳请大家检查修改过的文件有没有及时上传或者修改错误。至此,随机缩略图已制作完毕!如对本文章有任何疑问,请评论提问,我会一一进行解答的。感谢大家的支持。

转载请注明:七网科技 » 鸡西网站设计的D8主题实现随机缩略图

发表我的评论
取消评论

表情

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

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

网友最新评论 (10)

  1. 不错,感谢老白。话说D8原生评论框的表情真烂。图片小不说,还没个提示,都不知道每个表情是啥意思,不敢用啊,表错情了麻烦。。。然后,老白你是否有时间研究一下表情替换?我喜欢鱼兔妹,哈哈
    格部落格2013-12-13 10:40 回复
    • 感谢支持与评论。是个好建议。等D8的表情BUG修复了,咱们再看一下。
      Danny.✔2013-12-13 10:50 回复
  2. 老白威武 等发布新版本了我再搞
    蓝点科技博客2013-12-13 17:27 回复
  3. 随机图片弄好了,谢谢了
    昵称2013-12-14 15:31 回复
    • 不客气的。。。没有遇到什么困难吧。我能看见吗?
      Danny.✔2013-12-14 17:28 回复
  4. 谢谢博主,搞定了。
    魅叶子2014-02-10 18:55 回复
  5. 按要求操作图片显示不出来 设置过特色图片的文章图片变小了,
    会飞的兔子2014-07-26 20:16 回复
  6. 路过看一下!
    最励志官网2015-09-01 09:31 回复
  7. 路过,留个脚印,网站很棒!
    歪妖内涵网2015-09-08 08:56 回复