标签 Typecho 下的文章

官方文档:https://hitokoto.cn/api

做成通用的了,放在functions.php里面

function getHitokoto(){
  $url = 'https://v1.hitokoto.cn/?c=g'; // http://api.hitokoto.cn/
  $array_data = json_decode(file_get_contents($url),true);
  $content = $array_data['hitokoto'].'----《'.$array_data['from'].'》';
  echo $content;
}

调用:

<?php getHitokoto(); ?>

代码还有优化空间,抽空加一个缓存吧,频繁的请求,一言就给我502了。

看到评论里面乱码同学有今日诗词API,推荐使用。

最近一直在折腾博客,只涉及到了一些代码,并没有改变什么样子,所以估计是看不出来。

第一个就是把归档加上去了,这样以后再找文章也许会方便一些,顺便把时间也格式化了一下。

第二个就是把Flickr相册缓存到七牛上面,并且加上了灯箱的效果,有一点点逼格了。

最后就是把推特也放到博客里面了,就是玩玩而已,没有太大的作用,预计把他改成侧边栏会好一些。

折腾了好多代码,对PHP也有了进一步的了解,准备学下Python,听说很好玩。

突然发现,博客有点太单薄了,也没什么图片之类的,想到Flickr这货还没死,那就把我Flickr公开的照片同步到博客的相册上面吧。

搜了下Flickr的API,这样好像可以,

http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=自己申请的key&user_id=自己的id

自己去申请API,等生效以后就可以跑一下试试了。最后解析XML文件,打印输出就可以了!对了,Flickr是被墙的,所以我把图片缓存到七牛的镜像上面了,这样就不用考虑被墙的危险了。


常用的API:

flickr.urls.lookupUser
flickr.favorites.getList
flickr.photos.search
flickr.galleries.getPhotos

为什么要将网站全站启用Https访问?

  1. 为了更好的用户体验。现在使用Https加密访问的网站应该算是少数,常见于百度搜索、淘宝等大型网站,个人博客使用SSL证书还是会让用户感觉更安全,有利于提升用户体验。
  2. 为了更好的SEO效果。现在百度、谷歌等搜索引擎都鼓励网站启用Https访问,因为从技术角度上讲搜索引擎抓取Https网页不成问题,搜索结果展示也更加有利于Https的网页。

如何选择好网站SSL证书?

基于上面的原因,我决定在网站中部署SSL证书。首要的问题就是选择哪一个SSL证书。如果有钱的话,自然是可以去各大主机商那里购买SSL证书,便宜一点的SSL证书也就是几十块一年。一般选择了Let's Encrypt,一方面是Let’s Encrypt SSL已经被Firefox、Chrome、IE等浏览器所支持,IE 6 用户估计也不怎么看我的博客,所以可以忽略。另一方面,Let’s Encrypt SSL证书下载和安装已经是傻瓜式的了。唯一的缺点就是有效期只有三个月,要手动的去替换证书。

我这里是在腾讯云上面免费申请的TrustAsia TLS RSA CA证书,有效期是一年。

- 阅读剩余部分 -

博客迁移完毕了,以前环境是LAMP,现在是LNMP,需要改下永久链接,做一下记录,其他人也可用!

if (-f $request_filename/index.html){
    rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
    rewrite (.*) $1/index.php;
}
if (!-e $request_filename){
    rewrite (.*) /index.php;
}

Apache的话,看这篇《Typecho Apache Rewrite规则》

昨天试了试微信的赞赏二维码,还不错,放博客上面说不定就有大佬给俺打赏了呢……

HTML代码,自己找地方放就好

<div class="support-author">
 <a class="support-btn" href="javascript:void(0)">打赏</a>
 <div class="support-content">
  <img src="图片地址" alt="微信打赏">
 </div>
</div>

- 阅读剩余部分 -

以默认主题为例,在functions.php中找到themeConfig函数,在里面插入以下代码:

$analytics = new Typecho_Widget_Helper_Form_Element_Textarea('analytics', NULL, NULL, _t('统计代码'), _t('在这里添加统计代码'));
$form->addInput($analytics);

然后在footer.php中,插入

<?php $this->options->analytics(); ?>

增加了一个判断有没有相关文章:

<?php $this->related(5)->to($relatedPosts); ?>
<?php if ($relatedPosts->next()): ?>
    <ul class="related-posts">
        <?php while ($relatedPosts->next()): ?>
        <li><a href="<?php $relatedPosts->permalink(); ?>" title="<?php $relatedPosts->title(); ?>"><?php $relatedPosts->title(); ?></a></li>
        <?php endwhile; ?>
    </ul>
<?php endif; ?>

后期应该再加上如果没有相关文章,随机显示一些文章。