前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Sunny1.0开源Typecho主题增加首页轮播图展示(思路版)

Sunny1.0开源Typecho主题增加首页轮播图展示(思路版)

原创
作者头像
用户6965708
修改2024-02-15 09:14:12
3010
修改2024-02-15 09:14:12
举报
文章被收录于专栏:思路记录篇

主题展示及获取:https://sunnyfree.mmbkz.cn/ 后续会出相应的完整版教程,这只是个人的笔记和记录

基于Apache License 2.0协议,任何人可以随意开发修改二次分发

效果图:

是需要创建的php文件自己命名,比如postdisplay.php:

代码语言:php
复制
    
<?php if($this->is('index')): ?>
<div class="postdisplayblock">
	<div class="left">
		<div class="swiper swiper_index_left">
			<div class="swiper-wrapper">

				这里写一个while,想输出几篇就写几次,函数可以自己写,我写的是使用了widget类获取的,你也可以自己定义
				<a class="swiper-slide" href="<?php $posts->permalink(); ?>" data-pjax-state="">
					<span class="left_img">
						<img src="<?php echo $firstImage; ?>" alt="<?php $posts->title(); ?>">
					</span>
					<span class="left_title"><?php $posts->title(); ?></span>
				</a>
				这里加一个<?php endwhile; ?>结束判断
			</div>
			<div class="swiper-pagination"></div>
		</div>
		<span class="postdisplayblock_tip">最新</span>
	</div>
	<div class="right">
		<div class="item">
			<a href="你可以通过不同方法或自定义函数来获取你想要的链接" data-pjax-state="">
				<span class="right_img">
					<img src="你可以通过不同方法或自定义函数来获取你想要的图片" alt="test12">
				</span>
				<span class="postdisplayblock_tip">自定义标签</span>
				<span class="right_title_out">
					<span class="right_title"> 自定义 </span>
				</span>
			</a>
		</div>
		<div class="item">
		    <?php \Widget\Post\Hot::alloc('pageSize=1')->to($hot); ?>
		    <?php while ($hot->next()): ?>
			<a href="<?php $hot->permalink(); ?>" data-pjax-state="">
				<span class="right_img">
					<img src="你可以通过不同方法或自定义函数来获取你想要的图片" alt="<?php $hot->title(); ?>">
				</span>
				<span class="postdisplayblock_tip">热评</span>
				<span class="right_title_out">
					<span class="right_title"> <?php $hot->title(); ?> </span>
				</span>
			</a>
			<?php endwhile; ?>
		</div>
	</div>
</div>
<?php endif; ?>

然后去index.php引用一下这个文件:

代码语言:php
复制
<main class="main_body">
                    <?php $this->need('components/title.php'); ?>
                    <?php $this->need('components/postdisplay.php'); ?>
                    <?php $this->need('components/article.php'); ?>
					---在上面加上一条,引用---
                    <div class="comment_part">
                        <?php if($this->is('single')): ?>
                            <?php $this->need('components/comment.php'); ?>
                        <?php endif; ?>
                    </div>
                </main>

引入一下资源,也可以本地引入:

代码语言:html
复制
<link rel="stylesheet" href="https://unpkg.com/swiper@8.4.7/swiper-bundle.css">
<script src="https://unpkg.com/swiper@8.4.7/swiper-bundle.js"> </script>

相应的js函数:

代码语言:js
复制
function loadpostdisplayblock(){
    var swiper = new Swiper(".swiper", {
              // 设置选项参数
        slidesPerView: 1,
        loop: true,
        autoHeight: true,
        // 自动轮播
        autoplay: {
            delay: 3000, // 5 秒
            disableOnInteraction: false,
        },
        // 如果需要分页器
        pagination: {
            el: '.swiper-pagination',
        },
    });
}

为了适配pjax,需要在pjax:complete的时候调用一次:

代码语言:js
复制
$(document).on('pjax:complete', function() {

    loadpostdisplayblock();

});

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 是需要创建的php文件自己命名,比如postdisplay.php:
  • 然后去index.php引用一下这个文件:
  • 引入一下资源,也可以本地引入:
  • 相应的js函数:
  • 为了适配pjax,需要在pjax:complete的时候调用一次:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档