DigitaleGesellschaft / jekyll-theme-conference

Jekyll template for a conference website containing program, speaker, talks and room overview
MIT License
64 stars 59 forks source link

How to create multi-year conference website #19

Closed kingsleynweye closed 2 years ago

kingsleynweye commented 2 years ago

Thank you for providing this useful conference template. I have an application related question which, I think you already have a solution for.

I am using the template to create a website for a conference this year (2022), but I want to also, include content from previous editions 2020 and 2021. You have that functionality and layout set up in the demo site: https://www.winterkongress.ch/2022/ however, the backend of the site does not seem to be public and I don't have a clear idea on how to set up subfolders and dynamically change the year to point to the right content e.g. program for 2020 instead of 2022.

Please, any help with or documentation on how to solve this will be appreciated.

lorenzschmid commented 2 years ago

Actually, there is no big magic behind that: We simply have for each year a separate website with a build into a dedicated subfolder. Then, we "link" the different websites by adding links to the menu bar referring the different websites/subfolders.

kingsleynweye commented 2 years ago

Thanks for the response @lorenzschmid. I am very new to Jekyll (last week was my first time interfacing with it) and building websites so I don't have a clear idea of how to work with subfolder and to define the _config.yaml to do the linking. I have a working website here: http://www.rlem-workshop.net and the repository is gets built from is here: https://github.com/intelligent-environments-lab/rlem-workshop.net.

Please, will you be willing to share the organization of folders and subfolders as well as your _config.yaml to help me replicate the multi-year structure you have set up. You can email it to me if you don't want to publicly share it at: etonwana@yahoo.com.

lorenzschmid commented 2 years ago

So the idea I presented to you is to have multiple Jekyll websites, one for each year. This means you are likely going to have multiple repos, each of them with a slightly different _config.yml file. Following the relevant excerpt - you will need to adapt baseurl for each of the websites:

baseurl: "/2022" # the subpath of your site, e.g. /blog
url: "http://www.rlem-workshop.net " # the base hostname & protocol for your site, e.g. http://example.com

Further down in the _config.yml you need to adapt the links of the template's menu bar in order to link to the different websites. Again, this has to be done for each of the websites and adapted accordingly:

conference:
  ...
  navigation:
    ...
    links:
      - ...
      - name: Edition
        menu:
        - name: '2022 (this)'
          disabled: true
        - name: '2021'
          absolute_url: http://www.rlem-workshop.net/2021/
        - name: '2020'
          absolute_url: http://www.rlem-workshop.net/2020/
...
kingsleynweye commented 2 years ago

So the idea I presented to you is to have multiple Jekyll websites, one for each year. This means you are likely going to have multiple repos, each of them with a slightly different _config.yml file. Following the relevant excerpt - you will need to adapt baseurl for each of the websites:

baseurl: "/2022" # the subpath of your site, e.g. /blog
url: "http://www.rlem-workshop.net " # the base hostname & protocol for your site, e.g. http://example.com

Further down in the _config.yml you need to adapt the links of the template's menu bar in order to link to the different websites. Again, this has to be done for each of the websites and adapted accordingly:

conference:
  ...
  navigation:
    ...
    links:
      - ...
      - name: Edition
        menu:
        - name: '2022 (this)'
          disabled: true
        - name: '2021'
          absolute_url: http://www.rlem-workshop.net/2021/
        - name: '2020'
          absolute_url: http://www.rlem-workshop.net/2020/
...

okay, I think it's clear how you are going about it now. Thanks a lot! I'll close out the issue now.