# Documentation page version switch

**URL:** <https://discourse.gohugo.io/t/documentation-page-version-switch/3862>\
**Category:** support\
**Created:** [August 10, 2016, 8:20am UTC](https://discourse.gohugo.io/t/documentation-page-version-switch/3862 "2016-08-10T08:20:43Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![tboerger](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/tboerger/32/1945_2.png) [@tboerger](https://discourse.gohugo.io/u/tboerger)\
**Post date:** [August 10, 2016, 8:20am UTC](https://discourse.gohugo.io/t/documentation-page-version-switch/3862/1 "2016-08-10T08:20:43Z")

</div>

I’m building a documentation page for a project based on Hugo. To make it searchable I already got the idea to use Caddy including the search plugin in front of the site. But there is a different topic where I have no idea how to handle that.

I want to provide a select box to choose the version of the documentation since the docs are different for sure for different versions of the documented tool. Have somebody already done that?

One example should be [http://readme.drone.io](http://readme.drone.io) vs [http://readme.drone.io/0.5](http://readme.drone.io/0.5) with the exception that the UI would look the same. And this is also missing a switch for the versions.

Like this but based on Hugo instead of [readme.io](http://readme.io) and including a select to switch:

 ![](https://canada1.discourse-cdn.com/flex036/uploads/gohugo/original/2X/e/e54d04b54b199d0eed21adf78f69cac5f0b27c04.png)

---

<div class="post-metadata">

**Author:** ![tboerger](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/tboerger/32/1945_2.png) [@tboerger](https://discourse.gohugo.io/u/tboerger)\
**Post date:** [August 10, 2016, 8:23am UTC](https://discourse.gohugo.io/t/documentation-page-version-switch/3862/2 "2016-08-10T08:23:48Z")

</div>

Since I’m not allowed to add another link, this is just for reference of the search function within caddy webserver: [https://caddyserver.com/docs/search](https://caddyserver.com/docs/search)

---

<div class="post-metadata">

**Author:** ![sungwoncho](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/sungwoncho/32/1952_2.png) [@sungwoncho](https://discourse.gohugo.io/u/sungwoncho)\
**Post date:** [March 23, 2017, 7:53am UTC](https://discourse.gohugo.io/t/documentation-page-version-switch/3862/3 "2017-03-23T07:53:58Z")

</div>

Did you implement the versioning functionality? I am writing a documentation site and trying to achieve the same.

---

<div class="post-metadata">

**Author:** ![tboerger](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/tboerger/32/1945_2.png) [@tboerger](https://discourse.gohugo.io/u/tboerger)\
**Post date:** [March 23, 2017, 8:20am UTC](https://discourse.gohugo.io/t/documentation-page-version-switch/3862/4 "2017-03-23T08:20:24Z")

</div>

No solution so far from my side.

---

<div class="post-metadata">

**Author:** ![sungwoncho](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/sungwoncho/32/1952_2.png) [@sungwoncho](https://discourse.gohugo.io/u/sungwoncho)\
**Post date:** [March 23, 2017, 8:23am UTC](https://discourse.gohugo.io/t/documentation-page-version-switch/3862/5 "2017-03-23T08:23:06Z")

</div>

FYI I think it can be done. I have found this example (Camunda docs)

- [demo](https://docs.camunda.org/manual/7.4/introduction/)
- [code](https://github.com/camunda/camunda-docs-manual)

But it is not clear how the site is doing it. Any ideas?

---

<div class="post-metadata">

**Author:** ![m4c0](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/m4c0/32/10424_2.png) [@m4c0](https://discourse.gohugo.io/u/m4c0)\
**Post date:** [January 27, 2020, 1:16pm UTC](https://discourse.gohugo.io/t/documentation-page-version-switch/3862/6 "2020-01-27T13:16:51Z")

</div>

Let me dig this graveyard, because I have the same feature requirement.

From the way Camunda theme and configs are written, they use a list of tags manually defined in the config file and it seems to rely on branches and deployment conventions.

Unfortunately, their theme is not as reusable as I wanted. I tried to use it for LibrePCB, but references to Camunda are everywhere and menus require following their conventions (plus a lot of overrides). Sounds easier to create a new one from scratch.

---

<div class="post-metadata">

**Author:** ![aaditya\_bhatnagar](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/aaditya_bhatnagar/32/21317_2.png) [@aaditya\_bhatnagar](https://discourse.gohugo.io/u/aaditya_bhatnagar)\
**Post date:** [February 13, 2024, 6:36am UTC](https://discourse.gohugo.io/t/documentation-page-version-switch/3862/7 "2024-02-13T06:36:20Z")

</div>

What are the changes needed in the bitbucket-pipeline.yml for getting the version control in my documentation website so that it renders the specific version based on tags of git. Are there any other other file changes too?
