美文网首页IT简书年度热门文章精选IT圈
hexo创建个人博客(附加插入音乐、分享、评论、标签页、搜索)

hexo创建个人博客(附加插入音乐、分享、评论、标签页、搜索)

作者: _南山忆 | 来源:发表于2016-05-11 20:53 被阅读14349次

    你是不是见多了各种大v的个人博客,是不是也想拥有这样的一个个人博客,(静静的装B!)看这里,就对了。一步一步教你创建自己的博客。
      现在用的比较多的就是hexo(快速、简洁且高效的博客框架),支持markDown,有丰富的插件和主题

    1、安装环境

      安装gitNode.js,git就不用多说了,如果连git都不会装,请出去把门关上。
    Node.js 的安装可以使用两种方法:
    1、点击前面链接直接下载安装即可
    2、通过终端命令行:

    $ curl https://raw.github.com/creationix/nvm/master/install.sh | sh
    

    之后重启终端,如果还找不到nvm命令可尝试重启电脑
    接着执行

    $ nvm install 4
    

    即可安装完成
    以上两个条件已具备的话,即可开始安装hexo博客框架

    $ npm install -g hexo-cli
    

    执行完成后hexo就安装成功了,第一步结束,环境配置完毕可以开始创建自己的博客了

    2、github上创建仓库

    github帐号的创建我也不再次赘述了。下面说一下仓库的创建,名字前面部分可以自己随便起。后面部分统一为github.io ,其他的均不需设置。如下图:


    屏幕快照 2016-05-09 下午5.36.45.png

    3、博客的创建

    3.1初始化
    cd /Desktop  //cd到你的桌面执行:(init 后面的就是你的名字,当然你也可以随便起,不影响的,仅仅是创建一个文件夹)
    $ hexo init nanshanyi.github.io
    

    桌面会生成一个文件夹nanshanyi.github.io

    3.2基础配置

    打开_config.yml文件进行基础配置(可以使用<a href="http://www.sublimetext.com/" >sublime</a>或者<a href="https://atom.io/" >atom</a>来打开,都是很很强大的代码编辑器,可安装各种插件,前端开发必备)

    title: 南山亿的技术博客   //博客名字
    subtitle: 积少成多    //小标题可以写自己喜欢的话
    description:          //博客描述
    author: 南山忆     //作者名字
    language: zh-Hans   //语言(此处为简体中文)
    url:  //自己购买的域名网址(没有可不写)
    theme:   //主题的名字
    deploy: 
    type: git //使用git发布
    repo: https://github.com/nanshanyi/nanshanyi.github.io.git //刚刚创建的github仓库的地址
    
    3.3安装主题

    博客要想炫酷漂亮,一款合适的主题必不可少,hexo本身就提供了50种<a href="https://hexo.io/themes/" >主题</a> 可以预览查看,选择一款自己喜欢的主题
      点击图片即可预览,看到此主题的效果,点击蓝色主题名即可进入此主题的github仓库,一般主题作者都写有使用方法。


    屏幕快照 2016-05-09 下午6.00.09.png
    cd 到nanshanyi.github.io文件下
    $ git clone https://github.com/iissnan/hexo-theme-next themes/next
    

    这里使用的是一款简约漂亮的主题,使用的人挺多的。之后就可以在nanshanyi.github.io/themes目录下看到nex(以下next均为主题名,路径中为主题文件夹名。使用的主题不同只要把next换成相应的名字即可)主题。这个主题有三种布局展示形式,可自行挑选主题的详细配置<a href="http://theme-next.iissnan.com/getting-started.html" >请看这里</a>

    3.4创建博客文章与发布

    在nanshanyi.github.io 目录下终端命令:

    $ hexo new '文件名' //会在source/_posts创建一个文件名.md文件
    

    这就可以使用markdown编辑器开始写自己的博客了(上面提到有工具)

    ---
    title: new//博客标题
    date: 2016-05-10 10:47:49 //创建时间
    tags:  //分类标签
    ---
      这里写正文(上面的---是必要的)
    

    本地查看效果预览

    $ hexo s
    

    浏览器打开https://localhost:4000 即可查看效果
      发布到 github:

    $ hexo clean && hexo g && hexo d //发布到 github
    

    发布到 github 后可以使用 http://nanshanyi.github.io 访问(请使用你自己的网址)

    3.5博客中插入图片,音乐

    基本分为两种办法
    (1)放在本地文件
    首先在nanshanyi.github.io目录下确认 _config.yml 中有 post_asset_folder:true 。
    在 hexo 目录,执行

    $ npm install https://github.com/CodeFalling/hexo-asset-image --save
    

    之后再使用 hexo new 'new' 创建新博客的时候,会在source/_posts里面创建.md文件的同时生成一个相同的名字的文件夹。把该文章中需要使用的图片放在该文件夹下即可。
    使用的时候

    ![“图片描述”(可以不写)](/文件夹名/你的图片名字.JPG)
    例如:
    ![ ] (new/text.jpg)
    

    (2)放在<a href="https://portal.qiniu.com/signup?code=3lglas6pgi2qa">七牛</a>上,需要先注册,上传图片生成链接,直接在文章中使用链接即可。
    (3)插入音乐
      可以使用网易云音乐,搜索想要的歌曲,点击歌曲名字进入播放器页面,点击生成外链播放器;复制代码,直接粘贴到博文中即可。这样会显示一个网易的播放器,可以把

    <iframe frameborder="no" border="0" marginwidth="0" marginheight="0" width=298 height=52 src="http://music.163.com/outchain/player?type=2&id=32192436&auto=1&height=32"></iframe>
    //其中的width=298 height=52 均改为0就看不到了,依然可以播放音乐
    
    屏幕快照 2016-05-10 下午2.01.52.png
    屏幕快照 2016-05-10 下午1.56.58.png

    4、集成多说评论,分享

    申请<a href="http://duoshuo.com/">多说</a>帐号,打开页面点击我要安装注册帐号


    屏幕快照 2016-05-10 上午10.38.15.png

    在themes/next目录下打开 _config.yml,设置

      duoshuo_shortname:  nanshanyi //上面多说域名中填的内容
      需要分享的打开duoshuo_share: true 即可,支持分享到微博、QQ空间、微信
    

    然后打开themes\landscape\layout_partial\article.ejs文件
    把以下代码

      <% if (!index && post.comments && config.disqus_shortname){ %>
      <section id="comments">
        <div id="disqus_thread">
          <noscript>Please enable JavaScript to view the <a href="//disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
        </div>
      </section>
      <% } %>
    

    替换为

    <% if (!index && post.comments && config.duoshuo_shortname){ %>
      <section id="comments">
        <!-- 多说评论框 start -->
        <div class="ds-thread" data-thread-key="<%= post.layout %>-<%= post.slug %>" data-title="<%= post.title %>" data-url="<%= page.permalink %>"></div>
        <!-- 多说评论框 end -->
        <!-- 多说公共JS代码 start (一个网页只需插入一次) -->
        <script type="text/javascript">
        var duoshuoQuery = {short_name:'<%= config.duoshuo_shortname %>'};
          (function() {
            var ds = document.createElement('script');
            ds.type = 'text/javascript';ds.async = true;
            ds.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + '//static.duoshuo.com/embed.js';
            ds.charset = 'UTF-8';
            (document.getElementsByTagName('head')[0] 
             || document.getElementsByTagName('body')[0]).appendChild(ds);
          })();
          </script>
        <!-- 多说公共JS代码 end -->
      </section>
      <% } %>
    

    然后你hexo s ,打开http://localhost:4000/ 打开文章看一下,评论和分享已经静静的躺在那了

    屏幕快照 2016-05-10 下午3.36.43.png

    5、添加标签页

    在nanshanyi.github.io文件目录下执行

    $ hexo new page tags //会在nanshanyi.github.io/source下创建tags文件夹内部是一个index.md和index文件夹
    

    修改nanshanyi.github.io/themes/next/_config.yml

    menu:
      home: /      //主页
      #categories: /categories //分类
      archives: /archives   //归档
      tags: /tags   //标签(添加此行即可)
      about: /about   //关于
      #commonweal: /404.html
    

    首页菜单就会有便签项,点击即可进入标签页。

    6、添加搜索功能

    next支持Swiftype 、微搜索和Local Search
      (1)Swiftype (收费的没有免费版,进可以使用15天)是为网站和移动应用提供内部搜索的工具,点击进入<a href="https://swiftype.com/users/sign_up">Swiftype注册页面</a> ,注册之后需要填写自己的博客的网址
    然后选择


    屏幕快照 2016-05-10 下午9.07.45.png

    选择 install Search


    屏幕快照 2016-05-10 下午9.10.01.png
    途中的即为swiftype_key
    修改nanshanyi.github.io/themes/next/_config.yml中的
    swiftype_key:上面红圈中的内容
    

    点击 resume Configuration 选择 search field edit


    屏幕快照 2016-05-10 下午9.49.27.png

    save
    发布即可看到效果


    屏幕快照 2016-05-10 下午9.54.34.png
    (2)添加本地搜索
    安装 hexo-generator-search,在nanshanyi.github.io目录下执行以下命令:
    $ npm install hexo-generator-search --save
    

    在nanshanyi.github.io/themes/next/_config.yml添加

    search: 
          path: search.xml
          field: post
    

    发布即可看到效果,和上面的 swiftType 效果差不多,就不再粘图片了。

    相关文章

      网友评论

      • 74b56ef5805a:iframe音乐分享为什么播放不了?
      • d0f22e313393:在menu那里怎么添加搜索按钮的啊?
      • 大博同学:互换友链啊:grin:
      • ae6faf50bf4d:博主,使用本地搜索时候碰到了问题 能留个联系方式交流一下么
      • Northerner:作者同学,有一个问题想要请教一下,就是我发现我的多说评论,在ios 的safari 浏览器上不能评论,提示服务异常,请联系客服人员。其他设备没有问题,包括在ios 微信里边。
      • AlexLi_:配置config 那里 在每个 “ : ” 后面都要留一个空格
      • YangEric:正要学习
      • 這Er:建好博客了,然后上传后把本地的东西都删除了,现在想写文章怎么操作?
        這Er:@_南山忆 :cry: 太坑爹了啊, 要从头开始建吗
        _南山忆:@這Er 重建:joy:
      • 老豆腐:在本地能正常打开tags页面,但是直接通过网上就是打不开,请问有什么方法吗?
      • woniuray:有一点需要请教,你的博客备份是怎么做的,看到你的上面没有备份啊,只有自动发表上去的文章,程序都放在了本地,假如换台电脑,难道还要重新部署一遍么?
        _南山忆:@woniuray 你可以尝试建一个git仓库来管理
      • Gao了个J:请问我添加了本地搜索之后,为什么总搜索到别的页面? :cold_sweat:
      • c7dc7478ff84:博客刚建好,准备加音乐🎵
      • 3035cec932c2:执行 hexo s 时报错 TypeError: Cannot read property 'replace' of null.google也没有解决这个问题,请问你是怎么解决的?
        ShallowLearner:_config.yml里设置url就可以解决了
        丿星纟彖彳亍:@Prince丶Man 解决了吗?求方法,qq(1414925741),我也遇到了 :sweat:
      • 3035cec932c2:一直碰到一个问题,curl https://raw.github.com/creationix/nvm/master/install.sh | sh 执行这个命令的时候一直不成功,要另外的去安装nvm
      • L泽:略叼。。。
      • 做一个有爱的伸手党:FATAL can not read a block mapping entry; a multiline key may not be an implicit key at line 9, column 7:提示这个 是怎么意思啊 说什么9行7列 什么的
      • 做一个有爱的伸手党:hexo new 'iuihlkk' 我创建了这个文件
        FATAL can not read a block mapping entry; a multiline key may not be an implicit key at line 9, column 7:
        author: 做一个有爱的伸手党
        ^
        YAMLException: can not read a block mapping entry; a multiline key may not be an implicit key at line 9, column 7:
        author: 做一个有爱的伸手党
        应该是创建了这个文件吧 不过再username.github.io/source/_posts下 这个文件没有生成啊 这是怎么回事啊
        _南山忆:@做一个有爱的伸手党 我也没见过这个错误:sweat:
        _南山忆:@做一个有爱的伸手党 有可能是没有文件修改权限,你可以使用 sudo hexo new '文件名'然后输入密码试一下
      • 做一个有爱的伸手党:hexo s 执行到这步以后一直说找不到命令
        liyongmengdeMacBook-Pro:username.github.io beidou$ hexo s
        -bash: hexo: command not found
        liyongmengdeMacBook-Pro:username.github.io beidou$
        请问这是什么情况啊
        做一个有爱的伸手党:@_南山忆 这步成功了hexo init username.github.io
        _南山忆:@做一个有爱的伸手党 这是找不到hexo命令啊
        _南山忆:@做一个有爱的伸手党 init成功了?
      • 做一个有爱的伸手党:repo 这个放我git地址的名字没有啊
        做一个有爱的伸手党:@做一个有爱的伸手党 现在就是hexo s执行不了 是不是因为我创建的文件有问题啊 因为我是touch 文件名创建的
        _南山忆:@做一个有爱的伸手党 自己加上就好了
      • 761993f3fe5b:相册功能咋弄哈
        _南山忆:@sternelee 这个我没整一般没用,你可以参考一下http://www.cnblogs.com/xljzlw/p/5137622.html
      • 小凡凡520:^_^七牛服务器不是收费吗?
      • 一悻:页面打开很慢怎么整
        一直玩编程:@一悻 国内用coding吧 速度还可以。
        傅简书:@_南山忆 osc现在有page服务了?
        _南山忆:@一悻 不放github放在开源中国上会快不少
      • lumic000:这个不错
      • 可是你:可以集成广告吗

      本文标题:hexo创建个人博客(附加插入音乐、分享、评论、标签页、搜索)

      本文链接:https://www.haomeiwen.com/subject/uyeerttx.html