This commit is contained in:
杜恒 2021-03-31 16:45:08 +08:00
parent 40a94d21a3
commit 99f6a6926f
12 changed files with 3152 additions and 3073 deletions

File diff suppressed because one or more lines are too long

View File

@ -1062,6 +1062,13 @@
pointer-events: none;
}
}
&.tags {
background: var(--background);
.empty {
text-align: center;
color: var(--routine);
}
}
}
}

View File

@ -193,6 +193,39 @@ document.addEventListener('DOMContentLoaded', () => {
}
}
/* 3d云标签 */
{
if ($('.joe_aside__item.tags').length !== 0) {
const entries = [];
const colors = ['#F8D800', '#0396FF', '#EA5455', '#7367F0', '#32CCBC', '#F6416C', '#28C76F', '#9F44D3', '#F55555', '#736EFE', '#E96D71', '#DE4313', '#D939CD', '#4C83FF', '#F072B6', '#C346C2', '#5961F9', '#FD6585', '#465EFB', '#FFC600', '#FA742B', '#5151E5', '#BB4E75', '#FF52E5', '#49C628', '#00EAFF', '#F067B4', '#F067B4', '#ff9a9e', '#00f2fe', '#4facfe', '#f093fb', '#6fa3ef', '#bc99c4', '#46c47c', '#f9bb3c', '#e8583d', '#f68e5f'];
const random = (min, max) => {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min + 1)) + min;
};
$('.joe_aside__item-contain .list li').each((i, item) => {
entries.push({
label: $(item).attr('data-label'),
url: $(item).attr('data-url'),
target: '_blank',
fontColor: colors[random(0, colors.length - 1)],
fontSize: random(15, 20)
});
});
$('.joe_aside__item-contain .tag').svg3DTagCloud({
entries,
width: 220,
height: 220,
radius: '65%',
radiusMin: 75,
bgDraw: false,
fov: 800,
speed: 0.5,
fontWeight: 500
});
}
}
/* 设置侧边栏最后一个元素的高度 */
{
$('.joe_aside__item:last-child').css('top', $('.joe_header').height() + 15);

File diff suppressed because one or more lines are too long

View File

@ -2,7 +2,7 @@
/* 获取主题当前版本号 */
function _getVersion()
{
return "6.2.2";
return "6.2.3";
};
/* 判断是否是手机 */

View File

@ -41,10 +41,6 @@ function _parseContent($post, $login)
$content = strtr($content, array("{hide}" => "<joe-hide>", "{/hide}" => "</joe-hide>"));
}
}
/* 过滤复制粘贴功能 */
if (strpos($content, '{copy') !== false) {
$content = preg_replace('/{copy(.*)}/SU', '<joe-copy $1>', $content);
@ -52,7 +48,10 @@ function _parseContent($post, $login)
}
/* 过滤居中标题 */
if (strpos($content, '{mtitle') !== false) {
$content = strtr($content, array("{mtitle}" => '<joe-mtitle>', "{/mtitle}" => '</joe-mtitle>'));
$content = strtr($content, array(
"{mtitle}" => '<joe-mtitle>',
"{/mtitle}" => '</joe-mtitle>'
));
}
/* 过滤消息提示 */
if (strpos($content, '{message') !== false) {

View File

@ -428,8 +428,7 @@ function themeConfig($form)
),
'off',
'博主栏下方随机文章条目 - PC',
'介绍:用于设置博主栏下方的随机文章显示数量 <br />
注意:由于此项是查询整个表,文章多时,请关闭此项'
'介绍:用于设置博主栏下方的随机文章显示数量'
);
$JAside_Author_Nav->setAttribute('class', 'joe_content joe_aside');
$form->addInput($JAside_Author_Nav->multiMode());
@ -624,6 +623,19 @@ function themeConfig($form)
);
$JCustomAside->setAttribute('class', 'joe_content joe_aside');
$form->addInput($JCustomAside);
/* --------------------------------------- */
$JAside_3DTag = new Typecho_Widget_Helper_Form_Element_Select(
'JAside_3DTag',
array(
'off' => '关闭(默认)',
'on' => '开启'
),
'off',
'是否开启3D云标签 - PC',
'介绍用于设置侧边栏是否显示3D云标签'
);
$JAside_3DTag->setAttribute('class', 'joe_content joe_aside');
$form->addInput($JAside_3DTag->multiMode());
$JThumbnail = new Typecho_Widget_Helper_Form_Element_Textarea(

View File

@ -1,7 +1,7 @@
<?php
/**
* Eternity is not a distance but a decision - Joe <br /> 环境要求PHP 5.4 ~ 7.2
* Eternity is not a distance but a decision - Joe <br /> 环境要求PHP 5.4 ~ 7.4
* @package Joe
* @author Joe
* @link https://as.js.cn

View File

@ -1,6 +1,6 @@
{
"name": "typecho-joe-next",
"version": "6.2.2",
"version": "6.2.3",
"description": "A Theme Of Typecho",
"main": "index.php",
"keywords": [

1
plugin/3dtag/3dtag.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -135,6 +135,30 @@
</div>
</section>
<?php endif; ?>
<?php if ($this->options->JAside_3DTag === 'on') : ?>
<section class="joe_aside__item tags">
<div class="joe_aside__item-title">
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="18" height="18">
<path d="M898.048 556.544L547.84 916.992c-43.008 44.032-112.64 44.032-155.648 0L119.808 636.416c-43.008-44.032-43.008-116.224 0-160.256L470.016 115.2c26.624-28.672 31.744-41.472 59.904-41.472h355.84c28.16 0 50.688 23.552 50.688 52.224v366.592c0 28.672-15.872 40.448-38.4 64zM158.72 596.48l272.384 280.576c21.504 22.016 56.32 22.016 77.824 0l38.4-39.936-349.696-361.472-39.424 40.448c-20.992 22.528-20.992 58.368.512 80.384zm727.04-444.416c0-14.336-11.264-26.112-25.6-26.112H555.008c-13.824 0-33.792 16.384-46.592 29.184l-271.36 280.576 349.696 360.96 272.384-280.576c13.824-14.336 26.624-35.328 26.624-49.664V152.064zM610.304 422.4c-42.496-43.52-42.496-114.688 0-158.208 42.496-44.032 111.104-44.032 153.6 0 42.496 43.52 42.496 114.688 0 158.208s-111.616 43.52-153.6 0zm115.2-118.784c-20.992-22.016-55.808-22.016-76.8 0s-20.992 57.344 0 79.36 55.808 22.016 76.8 0 20.992-57.344 0-79.36z" />
</svg>
<span class="text">标签云</span>
<span class="line"></span>
</div>
<?php $this->widget('Widget_Metas_Tag_Cloud', array('sort' => 'count', 'ignoreZeroCount' => true, 'desc' => true, 'limit' => 50))->to($tags); ?>
<div class="joe_aside__item-contain">
<?php if ($tags->have()) : ?>
<div class="tag"></div>
<ul class="list" style="display: none;">
<?php while ($tags->next()) : ?>
<li data-url="<?php $tags->permalink(); ?>" data-label="<?php $tags->name(); ?>"></li>
<?php endwhile; ?>
</ul>
<?php else : ?>
<div class="empty">暂无标签</div>
<?php endif; ?>
</div>
</section>
<?php endif; ?>
<?php if ($this->options->JADContent) : ?>
<a class="joe_aside__item advert" target="_blank" rel="noopener noreferrer nofollow" href="<?php echo explode("||", $this->options->JADContent)[1]; ?>" title="广告">
<img class="lazyload" width="100%" src="<?php _getLazyload() ?>" data-src="<?php echo explode("||", $this->options->JADContent)[0]; ?>" onerror="javascript: this.src='<?php _getLazyload() ?>';" alt="广告" />

View File

@ -34,6 +34,9 @@
<script src="https://cdn.jsdelivr.net/npm/@fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/typecho-joe-next@6.0.0/assets/js/joe.extend.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/typecho-joe-next@6.0.0/plugin/qmsg/qmsg.js"></script>
<?php if ($this->options->JAside_3DTag === 'on') : ?>
<script src="https://cdn.jsdelivr.net/npm/typecho-joe-next@6.2.3/plugin/3dtag/3dtag.min.js"></script>
<?php endif; ?>
<script src="https://cdn.jsdelivr.net/npm/typecho-joe-next@6.0.0/plugin/smooth/joe.smooth.js" async></script>
<?php if ($this->options->JCursorEffects && $this->options->JCursorEffects !== 'off') : ?>
<script src="<?php $this->options->themeUrl('assets/cursor/' . $this->options->JCursorEffects); ?>" async></script>