2011-12-29 23 views
39

Me gustaría usar Jekyll para crear un sitio. no es un blog ¿Hay alguna manera de evitar tener la fecha de creación especificada en la url y en el nombre de archivo de la página?¿Cómo personalizar la url de Jekyll?

Creo que la idea detrás de Jekyll es brillante, pero parece demasiado ligada al contenido de generación de blogs, mientras que podría ser útil también en un caso de uso más general.

+0

Eche un vistazo a 1. [jekyll-Permalinks] (http://jekyllrb.com/docs/permalinks/), y 2. [configuración jekyll] (http://jekyllrb.com/docs/configuration/) –

Respuesta

9

Si no está produciendo páginas de blog, puede crear archivos en la asignación de estructura de directorios a ciertas URL. Que se ejecuta en localhost, si el directorio tiene la estructura

- _layouts/ 
- config.yml 
- index.html 
- some_other_page.html 
- some_directory/ 
    - index.html 
    - some_sub_page.html 

Vas a tener un contenido en los siguientes lugares después de Jekyll ha procesado los archivos:

  • 0.0.0.0:4000 (index.html)
  • 0.0.0.0:4000/some_other_page.html (some_other_page.html)
  • 0.0.0.0:4000/some_directory (some_directory/index.html)
  • 0.0.0.0:4000/some_directory/some_sub_page.html (some_directory/SO me_sub_page.html)

You can also use the permalink attribute on each post to set one manually, or set a different default in config.yml enlaces permanentes tienen sólo un pequeño subconjunto de las variables disponibles para su uso y necesitan ser definidos en cada archivo que desea poner en una ubicación no estándar.

Esta estructura de directorios también categorizará automáticamente sus publicaciones. Para que pueda tener:

- some_category (defined in the yaml front matter or the _config.yml 
    - index.html 
    - _posts/ 
     - some_post.md 
     - some_other_post.md 

y postes tendrán automáticamente la categoría 'alguna categoría', y index.html aparecerá en 0.0.0.0:4000/some-category, con el formato predeterminado enlace permanente. La variable de categoría está disponible como :category en la cadena de formato de enlace permanente.

45

En el archivo _CONFIG puede cambiar el enlace permanente a lo que quiera, por ejemplo, la mina es

permalink: /blog/:title 

En cuanto a la fecha en la que puede elegir su propia fecha con el texto preliminar YAML, de nuevo en la mía tengo

title: example 
date: you can pick what ever date you want 
+4

+1 por tener la respuesta sin un recurso externo, ¡muchas gracias! Opté por el enlace permanente: /: título, ya que muchos blogs siguen este formato. –

2

me encontré con esta cuestión de edad, mientras que en busca de una manera de organizar las páginas Jekyll en un directorio _pages, de manera similar a _posts. luego acceda a estas páginas sin mostrar toda la ruta en la url.

El enfoque que funcionó mejor para mí, es el uso de jekyll collections de la siguiente manera:

1 - Añadir páginas recogida en _config.yml:

collections: 
    pages: 
    output: true 
    permalink: /:path/ 

2 - crear un nuevo directorio llamado _pages (debe tener el mismo nombre de colección, con el prefijo _)

3 - agregue las páginas en la carpeta _pages, como .md o archivos .html que comienzan con YAML Front Matter.

por ejemplo. /_pages/about.md voluntad se ve así:

--- 
layout: page 
--- 

<!-- about page content --> 

después de la construcción que, la URL de la página sobre será <your-web-site>/about.

Alternativamente, para mostrar un nombre de colección, usted tiene que definir su enlace permanente como:

permalink: /:collection/:path/ 
1

Lo que los documentos dicen:

se configuran los enlaces permanentes en su archivo como _config.yml esto:

permalink: /:categories/:year/:month/:day/:title.html 

Si no especifica ninguna configuración de enlace permanente, Jekyll u observa el patrón anterior como el predeterminado. El enlace permanente también se puede ajustar usando un estilo integrado enlace permanente:

permalink: date 

Aunque puede especificar un patrón de enlace permanente personalizado utilizando variables de plantilla, Jekyll también proporciona los siguientes estilos integrados para mayor comodidad.

  • fecha = /:categories/:year/:month/:day/:title.html
  • bastante = /: categorías /: año /: mes /: día/Título/
  • ordinal = /:categories/:year/:y_day/:title.html
  • ninguno = /:categories/:title.html

Fuente: https://jekyllrb.com/docs/permalinks/


¿Cómo lo uso:

permalink: /blog/:title/ 

Ajusta páginas al estilo de enlace permanente bonita. Por lo tanto, '/contact.md' se convertirá en '/ contact /'.

Cuestiones relacionadas