吃不胖汪星人

吃不胖汪星人typecho优化攻略大全-持续更新
typecho主题推荐:handsome —— 一如少年般模样后台主题推荐:弥勒一:解决Typecho文章cid...
扫描右侧二维码阅读全文
15
2019/02

吃不胖汪星人typecho优化攻略大全-持续更新

typecho主题推荐:handsome —— 一如少年般模样
后台主题推荐:弥勒

一:解决Typecho文章cid不连续的问题

将代码保存为php文件,上传至网站根目录,在浏览器地址栏访问一下即可。

1.特别提醒:请在PHP7以下版本的服务器上执行。本操作涉及数据库,请提前做好备份工作。另外,文章cid重新排列后,上传的附件所属文章可能不正确,需手动修改。
2.根据本人经验,typecho是根据时间来排列cid顺序的,所以手动修改cid有可能会造成文章置顶不成功,因为手动修改cid会和系统默认cid不匹配(个人觉得)。
3.独立页面也会记录在内,建议缩略名都用cid,便于置顶。
4.本脚本只会重置新增cid起始数字,并不会更改文章的cid,所以个人觉得不存在附件不匹配的问题,放心食用,但是备份数据还是必不可少的,毕竟小心驶得万年船。
5.在后面的尝试中发现上传附件也会占用一个cid,所以还是会造成附件不匹配的问题的!!!
6.每修改一次博客再发布也会占用推后一个cid,很难做到连续cid序号。
<?php
/**
 * Typecho重新排列不连续的文章ID
 * 作者:http://blog.yuweiji.com/
 */

$hostname_blog = "localhost";
$database_blog = "数据库名";
$username_blog = "数据库用户名";
$password_blog = "数据库密码";
$blog = mysql_pconnect($hostname_blog, $username_blog, $password_blog) or trigger_error(mysql_error(),E_USER_ERROR); 

$no = 1;

function change_id($cid)
{
    global $no; 

    // 修改post cid,并修改分类、标签、自定义字段、评论的对应关系
    $sql = 'update typecho_contents set cid = ' . $no . ' where cid = ' . $cid;
    mysql_query($sql);
    $sql = 'update typecho_relationships set cid = ' . $no . ' where cid = ' . $cid;
    mysql_query($sql);
    $sql = 'update typecho_comments set cid = ' . $no . ' where cid = ' . $cid;
    mysql_query($sql);

    $no = $no + 1;
}

mysql_select_db($database_blog, $blog);
$query_postRecord = "SELECT cid FROM typecho_contents ORDER BY cid ASC";
$all_postRecord = mysql_query($query_postRecord);
$row_postRecord = mysql_fetch_assoc($all_postRecord);

do {
    change_id( $row_postRecord['cid'] );    
} while ($row_postRecord = mysql_fetch_assoc($all_postRecord));

// 重新设置post id自增起点
mysql_query('alter table typecho_contents AUTO_INCREMENT = ' . $no);
echo 'ok';
?>

原文链接:https://www.bijiv.com/t/194

二:typecho下的彩色标签云实现方式

1. 打开usr/themes/handsome/component/sidebar.php
用以下这段代码替换原有的标签云
<section id="tag_cloud-2" class="widget widget_tag_cloud wrapper-md clear">
       <h3 id="tag-cloud-title" class="widget-title m-t-none text-md"><?php _me("标签云") ?></h3>            
       <div class="tags l-h-2x">
       <?php Typecho_Widget::widget('Widget_Metas_Tag_Cloud','ignoreZeroCount=1&limit=30')->to($tags); ?>
       <?php if($tags->have()): ?>
           <?php while ($tags->next()): ?>
           <span id="tag-clould-color"  style="background-color:rgb(<?php echo(rand(0,255)); ?>,<?php echo(rand(0,255)); ?>,<?php echo(rand(0,255)); ?>)">
               <a  href="<?php $tags->permalink();?>"  title="<?php echo sprintf(_mt("该标签下有 %d 篇文章"),$tags->count); ?>" data-toggle="tooltip" >
               <?php $tags->name(); ?></a>
           </span>
           <?php endwhile; ?>
       <?php endif; ?>
       </div>
   </section>

2. 打开usr/themes/handsome/assets/css
新增CSS文件 文件名只要不是中文 随你心情
这里我做好了一个文件,戳这里下载
/* tag-clould-color 彩色标签云 */
#tag-clould-color {
    padding: 3px 10px 3px 10px;
    border-radius: 10px;
    color: #FFFFFF;
    margin: 3px 3px 3px 0;
    display: inline-block;
}

3.打开usr/themes/handsome/component/header.php
<!-- 修改部分主题样式 -->
<link rel="stylesheet" href="<?php echo STATIC_PATH; ?>css/color.css" type="text/css">

在header中引入文件
效果图
原文链接:https://ixiyu.me/archives/typecho-colorful-tag.html

Last modification:February 17th, 2019 at 09:55 pm
If you think my article is useful to you, please feel free to appreciate

One comment

  1. Adolphe Astro

    HI,来逛逛,串串门

Leave a Comment