slim framework and github pages

composer require slim/slim:^3.0

新建slim文件夹再执行以上命令,在此之前当然得安装好comper。(推荐:COMPOSER設計原理與基本用法

用git bash或者cmd都可以,新建个index.php

cmd: echo >index.php
git :vim index.php    ->    i进入编辑模式     ->    :qw保存

code here:

<?php
require 'vendor/autoload.php';
$app = new Slim\App();
$app->get('/', function ($request, $response, $args) {
    $response->write("Welcome to Slim!");
    return $response;
});
$app->run();

之前一直无法实例化,应该是autoload的问题,或者是浏览器缓存……

YouTube推荐教程:Simple Blog With Slim 2

教程中用了symfony2的默认引擎twig template engine,而Laravel中用的是blade。

 A template engine solves this situation by providing a concise syntax front-end developers can use to display data prepared by back-end developers. 

blade:syntax is originally inspired by the ASP.net Razor syntax

@extends('layouts.master')
@section('content')
  @foreach ($users as $user)
      <p>This is user </p>
  @endforeach
@endsection

Twig: developed by Fabien Potiencer

{% extends "layouts.master" %}
{% block content %}
    {% for user in users %}
        <p>This is user {{ user.id }}</p>
    {% endfor %}
{% endblock %}

公司用的框架则是用的是smarty ——one of the oldest template engine for php 

语法为{ },感觉更简洁?

umumble有人对smarty和twig进行了测试,结果:Smarty is faster than Twig. 

话说在V2EX中很多推荐用原生php……。

github pages + hexo

关于github pages教程在YouTube上教程很多,多数都搭配了jekyll作为blog,但是因为还要安装ruby etc.觉得很麻烦,wordpress又比较臃肿,所以选择了hexo。简书教程推荐:link

安装(env:node.js npm):

npm install hexo-cli -g

windows下会报了WARN,先不管

继续:

hexo init
npm install //set up dependen
hexo g //generate blog
hexo s //Start the server

访问: http://127.0.0.1:4000就可以了。

到后面出问题又来一次,又只能用localhost:4000访问了。为什么……

新建文章:

$ hexo new "my first post"

在source/_post下就新建了md文件,markdown标记

部署到github

修改_config.yml文件:

deploy:
  type: git
  repo: https://github.com/uername/my_blog.git
  branch: gh-pages
  message: hexo

要绑定域名的话URL设置也要修改,next->

hexo d

可以不用git push就部署到git hub上了……访问成功!

主题推荐:jacman 还有:next

国情原因,推荐针对中国的官方theme优化:lanscape-plus

看中了next theme

git clone https://github.com/iissnan/hexo-theme-next themes/next

把主题配置文件_config.yml中的#scheme: Mist中的注释去掉

#注意严格yml语法需要在 : 后空格。以及修改站点配置文件后需要重启server才能看到修改效果。

详细的next修改教程:http://theme-next.iissnan.com/five-minutes-setup.html

修改log:

site config.yml:

# Site(设置头像
avatar: /images/avatar.png

# Social links(设置社交链接
social:
	reverse: https://reverseleague.top

theme config.yml: (ps摘要可以在文章中使用 <!-- more --> 手动进行截断)

#Automatically Excerpt(文章摘录长度修改
    auto_excerpt:      
    enable: true  
    length: 150 -> length: 100
    
#sidebar(修改sidebar参数
sidebar: post
sidebar: always

不过……这个删除文章只能这样,很鸡肋:

rm source/_posts/TO_DELETE.md
hexo clean
hexo generate

当用hexo d部署到github时,总是报错:

ERROR Deployer not found: git

原来是少了:

$ npm install hexo-deployer-git --save

然后再执行会有warning:

warning: LF will be replaced by CRLF

这是unix 与 window换行符不一样的原因:stackoverflow

你可能感兴趣的:(slim framework and github pages)