You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
90 lines
5.4 KiB
90 lines
5.4 KiB
1 year ago
|
# Contributing - Blog Posts
|
||
2 years ago
|
|
||
|
We welcome blog posts of almost any kind from our community! We accept content that covers topics that relate to AlmaLinux OS, the AlmaLinux OS Foundation. If you aren't sure if your blog post topic would be a good one, feel free to create an issue on this repo and ask! You can also join our chat and ask in the Marketing room.
|
||
|
|
||
2 years ago
|
### Process
|
||
2 years ago
|
|
||
2 years ago
|
- Before you begin writing the blog post, we strongly recommend that you search existing open and closed issues [and existing blog posts](https://github.com/AlmaLinux/almalinux.org/tree/master/content/blog) for similar content, to prevent duplication.
|
||
2 years ago
|
- We also recommend that you open an issue on the repo to propose your blog post before you begin writing it, to ensure that your blog post would be appropriate for the AlmaLinux blog.
|
||
2 years ago
|
- Please fork the [almalinux.org](https://github.com/AlmaLinux/almalinux.org) repo and submit a pull request with your blog post addition from there.
|
||
|
- Once you submit your pull request, tag @bennyvasquez for a review.
|
||
2 years ago
|
|
||
|
#### The content of your .md file
|
||
|
|
||
2 years ago
|
Our website is built in Hugo and served using CloudFlare pages, so you may find some quirks. To add a blog post successfully to the website, take the steps below, and reach out in [~marketing](https://chat.almalinux.org/almalinux/channels/marketing) on our chat server if you have any problems.
|
||
2 years ago
|
|
||
|
**The blog file**
|
||
|
|
||
2 years ago
|
Blog content is served using the `layouts/blog/single.html` format. Note: if you would like to suggest changes to this format, they should be submitted in a PR outside the PR of your blog post.
|
||
2 years ago
|
|
||
2 years ago
|
- create a new file in `./content/blog` named what you'd like the slug (URL) to be, with a file extension of '.md'. For example, the blog post at [almalinux.org/blog/celebrating-500k-docker-pulls](almalinux.org/blog/celebrating-500k-docker-pulls) is in a file named ``./content/blog/celebrating-500k-docker-pulls.md``.
|
||
2 years ago
|
|
||
2 years ago
|
**The Meta data**
|
||
|
|
||
2 years ago
|
- The top of your file should be the metadata for your post. The meta information should be updated to include your posts information. The content is defined and further explained below.
|
||
2 years ago
|
|
||
2 years ago
|
```
|
||
2 years ago
|
---
|
||
2 years ago
|
title: ""
|
||
2 years ago
|
type: blog
|
||
|
author:
|
||
2 years ago
|
name: ""
|
||
|
bio: ""
|
||
|
image: /users/
|
||
|
date: ''
|
||
1 year ago
|
images:
|
||
|
- /blog-images/
|
||
2 years ago
|
post:
|
||
2 years ago
|
title: ""
|
||
|
image: /blog-images/
|
||
2 years ago
|
---
|
||
2 years ago
|
```
|
||
2 years ago
|
|
||
2 years ago
|
- The **title** is what you'd like displayed at the top of the post.
|
||
2 years ago
|
- The **type** should always be blog.
|
||
2 years ago
|
- The **name** listed should be yours (either legal name or chosen name or moniker)
|
||
2 years ago
|
- Your **bio** will be displayed directly under your name, so please keep this to 60 characters or less. If you would like to leave this blank, you may do so.
|
||
2 years ago
|
- Your author **image** should be appropriate for an all-audiences website and added to `./static/users/` in .png format. The file will serve from `/users/`, so do not change the beginning of this path.
|
||
2 years ago
|
- The **date** is the date (in YYYY-MM-DD format) you want to see the blog post published, but we cannot always guarantee a publishing timeline.
|
||
1 year ago
|
- The **images** image is the social image that's used, and should be put in `./static/blog-images/`
|
||
2 years ago
|
- The post **title** should match the above.
|
||
2 years ago
|
- A post **image** should be included, and will be displayed both on the [almalinux.org/blog/](almalinux.org/blog/) feed, and as the header image on the full-page blog post. Use this tempalte to get started: `./static/blog-images/blog_images_template.svg`
|
||
|
- Your image should not violate any trademarks or copyrights, and should be relevant to blog content. Once created, a PNG version of your image should be placed in `./static/blog-images/` The file will serve from `/blog-images/`, so do not change the beginning of this path.
|
||
2 years ago
|
|
||
|
**The meat of your post**
|
||
|
|
||
2 years ago
|
- Below the --- of the metadata block, you should place the content of your blog post. This content should be in markdown format, and any images you want to include in your post can be added to `./static/blog-images/` and will serve from `/blog-images/`.
|
||
2 years ago
|
- Before submitting your PR, please test that your content loads correctly by building the site locally with the command `hugo serve`
|
||
2 years ago
|
|
||
|
|
||
2 years ago
|
### Some notes about content
|
||
2 years ago
|
|
||
|
- define all terms used (especially acronyms) so that all readers may understand your content.
|
||
|
- content submitted to the AlmaLinux blog should be unique and not posted elsewhere on the internet.
|
||
2 years ago
|
- by submitting content to the AlmaLinux website, you acknowledge that you are aware of our [license policy](https://almalinux.org/p/the-almalinux-os-licensing-policy/), are affirming that you own all rights to publish said content.
|
||
2 years ago
|
- external links are allowed, but links to paywalled websites or obvious use of a blog post on the AlmaLinux site as an SEO builder for another website is prohibited. By default, external links should include a '[nofollow](https://en.wikipedia.org/wiki/Nofollow)' value. Exceptions can be requested in your pull request.
|
||
2 years ago
|
|
||
2 years ago
|
### Styling Guide
|
||
|
|
||
|
Please adhere to the styling guidelines listed below when contributing to the codebase.
|
||
|
|
||
2 years ago
|
#### Code/Syntax Highlighting
|
||
2 years ago
|
|
||
|
Code/Syntax highlighting is achieved by the builtin [Hugo syntax highlighting](https://gohugo.io/content-management/syntax-highlighting/) feature, which utilizes [Chroma](https://github.com/alecthomas/chroma).
|
||
|
|
||
|
While Hugo supports two syntaxes, we use traditional code fencing for code samples:
|
||
|
|
||
|
````plaintext
|
||
|
```go
|
||
|
package main
|
||
|
|
||
|
import "fmt"
|
||
|
|
||
|
func main () {
|
||
2 years ago
|
fmt.Println("AlmaLinux is neat-o!")
|
||
2 years ago
|
}
|
||
|
```
|
||
|
````
|
||
|
|
||
|
Supported highlighting languages can be found [here](https://gohugo.io/content-management/syntax-highlighting/#list-of-chroma-highlighting-languages).
|