1. 程式人生 > >以next為主題修改hexo部落格【轉】

以next為主題修改hexo部落格【轉】

主題的配置:這裡以NexT主題作為題材

1、安裝NexT,在其資料夾中滑鼠右鍵,點選Git Base Here。輸入命令:git clone https://github.com/iissnan/hexo-theme-next themes/next

2、啟用主題,在站點目錄中(blog),開啟配置檔案_config.yml,修改theme:next

 

3、驗證主題,埠號被佔用還是得先修改埠號,然後啟動服務

 

如果看到如下介面,說明成功安裝了NexT主題

 

4、主題設定,在next主題目錄下的_config.yml檔案中將scheme設定為Pisces

 5、語言設定,在站點根目錄下修改配置檔案_cofig.yml中的language為zh-Hans(簡體中文)

6、修改選單項,在主題目錄下修改配置檔案_cofig.yml中的menu,增添一個something(注:千萬不要在這設定中文,後面的值那是查詢檔案的地方!若你的站點執行在子目錄中,請將連結字首的 / 去掉)

這些配置都要與你主題目錄下的languages檔案中對應的yml文件裡配置相關聯。比如你在站點根目錄中的配置檔案設定language為zh-Hans,那麼就要進入到主題目錄下的languages檔案中修改zh-Hans.yml,這樣才能顯示出選單項新增的中文內容(以something為例子)

 7、設定選單項圖示,對應的欄位是menu_icons。格式為item name:icon name,其中item name與所配置的選單名字對應,icon name是Font Awesome圖示的名字。而 enable 可用於控制是否顯示圖示,你可以設定成 false 來去掉圖示。(本機出問題,無法顯示icon,還未解決,求指導)

 

8、設定側欄位置,修改主題目錄下sidebar的position值

9、設定頭像,在站點根目錄下載配置檔案中新增avatar,值設定為頭像的連結地址。地址可以是網路地址,也可以是本地地址(放置在source/images/ 目錄下)

 

10、設定文章程式碼主題,在主題目錄下修改配置檔案highlight_theme,預設值為nomal。可以設定為night

11、新增標籤頁面,前面通過修改next主題下的_config.yml檔案中的menu選項,可以在主頁面的選單欄新增標籤選項,但是此時點選標籤,跳轉的頁面會顯示page not found。此時我們要新建一個頁面

在新建的index.md檔案中新增type: "tags"

當要為某一篇文章新增標籤,只需在blog/source/_post目錄下的具體文章的tags中新增標籤即可,如:

成功後的頁面為

11、新增關於我頁面,步驟和以上差不多

 

在新建的index.md檔案中新增如下內容

12、在首頁新增github導航條,點選這裡選擇需要的樣式,然後將程式碼複製到themes/next/layout/_layout.swig 

並將href改為你的github地址,最終介面如圖

13、實現點擊出現桃心效果,點選這裡將程式碼copy到/themes/next/source/js/src裡面新建的love.js中,然後開啟\themes\next\layout\_layout.swig檔案,在末尾(在前面引用會出現找不到的bug) ,引用love.js

14、修改作者頭像並旋轉,開啟\themes\next\source\css\_common\components\sidebar\sidebar-author.styl,在裡面新增如下程式碼:

複製程式碼
.site-author-image {
  display: block;
  margin: 0 auto;
  padding: $site-author-image-padding;
  max-width: $site-author-image-width;
  height: $site-author-image-height;
  border: $site-author-image-border-width solid $site-author-image-border-color;

  /* 頭像圓形 */
  border-radius: 80px;
  -webkit-border-radius: 80px;
  -moz-border-radius: 80px;
  box-shadow: inset 0 -1px 0 #333sf;

  /* 設定迴圈動畫 [animation: (play)動畫名稱 (2s)動畫播放時長單位秒或微秒 (ase-out)動畫播放的速度曲線為以低速結束 
    (1s)等待1秒然後開始動畫 (1)動畫播放次數(infinite為迴圈播放) ]*/


  /* 滑鼠經過頭像旋轉360度 */
  -webkit-transition: -webkit-transform 1.0s ease-out;
  -moz-transition: -moz-transform 1.0s ease-out;
  transition: transform 1.0s ease-out;
}

img:hover {
  /* 滑鼠經過停止頭像旋轉 
  -webkit-animation-play-state:paused;
  animation-play-state:paused;*/

  /* 滑鼠經過頭像旋轉360度 */
  -webkit-transform: rotateZ(360deg);
  -moz-transform: rotateZ(360deg);
  transform: rotateZ(360deg);
}

/* Z 軸旋轉動畫 */
@-webkit-keyframes play {
  0% {
    -webkit-transform: rotateZ(0deg);
  }
  100% {
    -webkit-transform: rotateZ(-360deg);
  }
}
@-moz-keyframes play {
  0% {
    -moz-transform: rotateZ(0deg);
  }
  100% {
    -moz-transform: rotateZ(-360deg);
  }
}
@keyframes play {
  0% {
    transform: rotateZ(0deg);
  }
  100% {
    transform: rotateZ(-360deg);
  }
}
複製程式碼

15、在網站底部加上訪問量,開啟\themes\next\layout\_partials\footer.swig檔案,在類copyright前加上畫紅線這話:

程式碼:<script async src="https://dn-lbstatics.qbox.me/busuanzi/2.3/busuanzi.pure.mini.js"></script>

然後在合適的位置新增顯示統計的程式碼(位置還是上述這個檔案),如圖:

 

程式碼:

<div class="powered-by">
<i class="fa fa-user-md"></i><span id="busuanzi_container_site_uv">
  本站訪客數:<span id="busuanzi_value_site_uv"></span>
</span>
</div>

 16、修改底部的官方logo,找到 \themes\next\layout\_partials\下面的footer.swig檔案,開啟會發現,如下圖的語句:

 

第一個框 是下面側欄的“日期❤ XXX”

如果想像我一樣加東西,一定要在雙大括號外面寫。如:xxx{{config.author}},當然你要是想改徹底可以變數都刪掉,看個人意願。

第二個,是圖一當中 “由Hexo驅動” 的Hexo連結,先給刪掉防止跳轉,如果想跳轉當然也可以自己寫地址,至於中文一會處理。注意刪除的時候格式不能錯,只把<a>...</a>標籤這部分刪除即可,留著兩個單引號'',否則會出錯哦。

第三個框也是最後一個了,這個就是更改圖一後半部分“主題-Next.XX”,這個比較爽直接將<a>..</a>都刪掉,同樣中文“主題”一會處理,刪掉之後在上一行 ‘-’後面可以隨意加上你想顯示的東西,不要顯示敏感資訊喲,請自重。

接下來,處理剩餘的中文資訊。找到這個地方\themes\next\languages\ 下面的語言檔案zh-Hans.yml(這裡以中文為例,有的習慣用英文的配置檔案,道理一樣,找對應位置即可)

看到了吧,這個就是傳值傳過去的,你想顯示什麼就在這裡面大肆的去改動吧。其實在第二個框中,就可以把值都改掉,不用接受傳值的方式,完全自己可以重寫。不過我不建議那樣做,因為傳值這樣只要是後續頁面需要這幾個值那麼就都會通過取值去傳過去,要是在剛才footer檔案中直接寫死,後續不一定哪個頁面需要傳值,但是值為空了或者還是原來的,可就尷尬了。所以還是這樣改動吧。