「Pixiv名畫師賞」第三十六期·December 2016

pixiv201612

本期的やじるし是一位脑洞绝妙的画师,强力推荐。

以上8位。ごゆっくり。

「Pixiv名畫師賞」第三十五期·November 2016

pixiv201611

以上9位。ごゆっくり。

「Pixiv名畫師賞」第三十四期·October 2016

pixiv201610

估算了存量和用量的比例, 这个从2013年5月启动,折射了我个人几年间的审美变迁的系列,大概还能继续一年左右。

以上8位。ごゆっくり。

宇宙搜索

最近做了很多第三方搜索服务的集成,现在包装成一个系列发上来显摆。教程都已经发在我的Github page,Artifact.me。暂时没有中文版,并有可能需要翻墙。

以下是目前写好的教程目录:

代码库:https://github.com/artchen/universal-search

演示:https://works.otakism.com/universal-search

使用演示站请点到为止,别发一堆请求把我的quota全用光了。

本来只是为了找Swiftype的替代品,做完了Google Custom Search的集成以后一鼓作气把现有的几种主要服务都研究了一把。所以就有了这个项目和这些教程。有现成插件的我都用了现成的,比如Algolia对接Hexo已经有hexo-algoliasearch存在。有些服务没有现成的插件,比如Azure Search,我就干脆连插件一起写了,比如hexo-azuresearch

本来还想支持百度的站内搜索,无奈幺蛾子实在太多,还必须用他们的js,最近把DNS搬到Cloudflare并且开启全站https以后干脆就没法爬我生成的index了。放弃。

前端UI是独立与所对接的服务的。换句话说不管用的是哪家的搜索,前端除了搜出来的结果有差别和Logo不一样以外,没有外观上的区别。

除了Hexo本地搜索以外,其他服务都会显示Logo在弹出dialog的底部。出于对(免费)服务提供者及其政策的尊重,请不要删掉这个Logo。

使用方法来说,最简单的如Google Custom Search,只要填写对自己的API Key就可以直接用。Algolia和Azure除了填API Key以外,需要在本地跑一下indexer来生成和上传网站索引,所以暂时只有Hexo能用,别的静态生成器如果有相对的插件的话说不定也可以用。

自以为这个插件多少还是有一点可取之处。各位请理性地根据网站的受众各取所需吧。

「Pixiv名畫師賞」第三十三期·September 2016

pixiv201609

珍惜最后一学期。

以上8位。ごゆっくり。

Google Custom Search and Ghost Excerpt

总结一下最近更新。

因为Ghost本身没有搜索功能,之前包括我在内的很多用户都是用Swiftype提供的索引服务来做搜索。最近Swiftype业务调整,直接砍了免费版,收费版从每月$299起跳,一跃成为了贵族服务。所以我只能另寻出路。

Swiftype那个前端插件的体验我是相当喜欢的,所以这次决定在其基础上集成Google Custom Search Engine的JSON接口来拯救宅谈的搜索。

思路相当简单,取回JSON数据以后更新列表和metadata就是了。Demo看效果就用宅谈吧。源码也已经放到Github Repo,欢迎取用。

主题里Google Custom Search默认是启用的。顾虑墙的问题、有更好的解决方案或者单纯不想要的话可以在app.js里改option为false。

以后有空的话再做别的搜索服务的API吧,比如Bing。

接下来是很多用户要求的适合中文的截断功能。因为我不想改Ghost源码,所以在前端用regex暴力截了。如果觉得这种做法太简粗或者单纯不需要这个功能,改option为false即可。

此外我删除了位于post.hbs和page.hbs的Disqus代码。有些用户取用主题的时候没有更改这些文件,导致我的disqus crawler抓了很多别站的页面。今后请使用Ghost的code injection来嵌入第三方插件。对于Disqus来说,请在footer嵌入以下代码:

(function() {
  var disqus_username = 'YOUR_DISQUS_USERNAME'; 
  var d = document, s = d.createElement('script');
  s.src = '//' + disqus_username + '.disqus.com/embed.js';
  s.setAttribute('data-timestamp', +new Date());
  if ($('body').hasClass('post-template')) {
    (d.head || d.body).appendChild(s);
  }
})();

祝大家开学/开工愉快。

Update:

现在Hexo版也支持Google Custom Search。同时Hexo版加入了本地搜索功能,可以在_config.yml设置选择哪一种搜索。

「Pixiv名畫師賞」第三十二期·August 2016

pixiv201608

以上8位。ごゆっくり。

「Pixiv名畫師賞」第三十一期·July 2016

pixiv201607

NSFW

这几位技能点的比较偏所以就不放在题图里了。风格和画技都是极好的。

以上8(10)位。ごゆっくり。

Hexo Theme Memory

Hexo版的Memory现在可以通过Github下载。

地址:https://github.com/artchen/hexo-theme-memory

这里放一下中文简介。

必需的Hexo插件:

  • hexo-generator-tag
  • hexo-renderer-ejs
  • hexo-renderer-less
  • hexo-renderer-marked
  • hexo-pagination

编辑主题文件夹下的_config.yml文件来自定义。

编辑Hexo根目录下的_config.yml也需要一些做一些设置:

  • disqus_shortname属性设置成网站的disqus代号,如果不使用disqus请留空
  • theme属性设置成hexo-theme-memory(如果你重命名了主题文件夹,请修改成那个名字)

其他自定义:

  • 替换source/images/logo.png

搜索功能用swiftype实现,请去他们官网自行配置。

宅谈使用了Adobe Typekit提供的字体,如果你不用Typekit,可以在layout/_partial/head.ejs里删除相关代码。

请不要删除页面底部的作者信息和链接。

最后丢一张预览图:

Memory Demo

希望各位喜欢。

「Pixiv名畫師賞」第二十九期·May 2016

pixiv201605

这一期路过了武田弘光,想了一会儿还是算了。

以上8位。ごゆっくり。

Ghost Theme Memory

宅谈当前使用的Ghost主题现在可以通过Github下载了。

地址:https://github.com/artchen/ghost-theme-memory

Repo里传了一份英文README,这里用中文简单介绍一下。

因为是自用主题所以没有考虑给用户的自定义选项,所以自定义必须直接改源代码。如果想直接用,需要做以下改动:

  • 更换logo图片 assets/img/logo.png
  • 更换站点简介 partials/header.hbs
  • 更换Disqus集成 page.hbspost.hbs
  • 更换社交网站链接 partials/footer.hbs
  • 搜索功能用swiftype实现,请去他们官网自行配置。
  • 宅谈使用了Adobe Typekit提供的字体服务,默认英文字体是Futura。如果你不用Typekit,可以在default.hbs里删除相关代码。如果你有自己的Typekit账号,请在header.hbs更换相关js嵌入代码。这一步是必须的,因为我的Typekit嵌入代码只对otakism.org有效。

如果需要进一步开发,需要安装gulpbower and npm和安装开发环境。


cd <path-to-ghost-folder>/content/themes/
git clone https://github.com/artchen/ghost-theme-memory.git memory
npm install
bower install
gulp

请不要删除页面底部的作者信息和链接。

希望各位喜欢。