mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-08 03:09:39 +03:00
More consistency in URL / navigation / breadcrums #4210
Open
opened 2026-02-05 08:15:05 +03:00 by OVERLORD
·
9 comments
No Branch/Tag Specified
development
further_theme_development
l10n_development
release
llm_only
vectors
v25-11
docker_env
drawio_rendering
user_permissions
ldap_host_failover
svg_image
prosemirror
captcha_example
fix/video-export
v25.12.3
v25.12.2
v25.12.1
v25.12
v25.11.6
v25.11.5
v25.11.4
v24.11.4
v25.11.3
v25.11.2
v25.11.1
v25.11
v25.07.3
v25.07.2
v25.07.1
v25.07
v25.05.2
v25.05.1
v25.05
v25.02.5
v25.02.4
v25.02.3
v25.02.2
v25.02.1
v25.02
v24.12.1
v24.12
v24.10.3
v24.10.2
v24.10.1
v24.10
v24.05.4
v24.05.3
v24.05.2
v24.05.1
v24.05
v24.02.3
v24.02.2
v24.02.1
v24.02
v23.12.3
v23.12.2
v23.12.1
v23.12
v23.10.4
v23.10.3
v23.10.2
v23.10.1
v23.10
v23.08.3
v23.08.2
v23.08.1
v23.08
v23.06.2
v23.06.1
v23.06
v23.05.2
v23.05.1
v23.05
v23.02.3
v23.02.2
v23.02.1
v23.02
v23.01.1
v23.01
v22.11.1
v22.11
v22.10.2
v22.10.1
v22.10
v22.09.1
v22.09
v22.07.3
v22.07.2
v22.07.1
v22.07
v22.06.2
v22.06.1
v22.06
v22.04.2
v22.04.1
v22.04
v22.03.1
v22.03
v22.02.3
v22.02.2
v22.02.1
v22.02
v21.12.5
v21.12.4
v21.12.3
v21.12.2
v21.12.1
v21.12
v21.11.3
v21.11.2
v21.11.1
v21.11
v21.10.3
v21.10.2
v21.10.1
v21.10
v21.08.6
v21.08.5
v21.08.4
v21.08.3
v21.08.2
v21.08.1
v21.08
v21.05.4
v21.05.3
v21.05.2
v21.05.1
v21.05
v21.04.6
v21.04.5
v21.04.4
v21.04.3
v21.04.2
v21.04.1
v21.04
v0.31.8
v0.31.7
v0.31.6
v0.31.5
v0.31.4
v0.31.3
v0.31.2
v0.31.1
v0.31.0
v0.30.7
v0.30.6
v0.30.5
v0.30.4
v0.30.3
v0.30.2
v0.30.1
v0.30.0
v0.29.3
v0.29.2
v0.29.1
v0.29.0
v0.28.3
v0.28.2
v0.28.1
v0.28.0
v0.27.5
v0.27.4
v0.27.3
v0.27.2
v0.27.1
v0.27
v0.26.4
v0.26.3
v0.26.2
v0.26.1
v0.26.0
v0.25.5
v0.25.4
v0.25.3
v0.25.2
v0.25.1
v0.25.0
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.2
v0.23.1
v0.23.0
v0.22.0
v0.21.0
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.0
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.15.3
v0.15.2
v0.15.1
v0.15.0
v0.14.3
v0.14.2
v0.14.1
v0.14.0
v0.13.1
v0.13.0
v0.12.2
v0.12.1
v0.12.0
v0.11.2
v0.11.1
v0.11.0
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.6
v0.7.5
v0.7.4
v0.7.3
0.7.2
v.0.7.1
v0.7.0
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
Labels
Clear labels
🎨 Design
📖 Docs Update
🐛 Bug
🐛 Bug
:cat2:🐈 Possible duplicate
💿 Database
☕ Open to discussion
💻 Front-End
🐕 Support
🚪 Authentication
🌍 Translations
🔌 API Task
🏭 Back-End
⛲ Upstream
🔨 Feature Request
🛠️ Enhancement
🛠️ Enhancement
🛠️ Enhancement
❤️ Happy feedback
🔒 Security
🔍 Pending Validation
💆 UX
📝 WYSIWYG Editor
🌔 Out of scope
🔩 API Request
:octocat: Admin/Meta
🖌️ View Customization
❓ Question
🚀 Priority
🛡️ Blocked
🚚 Export System
♿ A11y
🔧 Maintenance
> Markdown Editor
pull-request
Mirrored from GitHub Pull Request
No Label
🔨 Feature Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#4210
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @HA-TB303 on GitHub (Sep 14, 2023).
Describe the feature you'd like
More or less all the same thing:
Describe the benefits this would bring to existing BookStack users
It is sometimes very confusing to find the right shelf if you only have the URL to a specific page.
The breadcrum of this URL https://bookstack.url/books/test-book/page/test-book now consists of:
[Books] > [test-book] > [test-chapter] > [test-page]
The shelf is missing in the breadcrum and in the URL.
More logical and consistent would be:
https://bookstack.url/shelf-name/book-name/chapter-name/page-name
Shelf: [Shelf-name] > Book: [book-name] > Chapter: [chapter-name] > Page: [page name]
Screenshots:

The only (known) way to find the corresponding shelf is to search for the page name and then click it:

But also in the "book navigation" the shelf is missing.
Hope I was able to clarify ;)
Can the goal of this request already be achieved via other means?
Ony when using search and search for "page name", and click on the page.
Have you searched for an existing open/closed issue?
How long have you been using BookStack?
1 to 5 years
Additional context
This is the only thing about bookstack that has been nagging me so far after very actively using it for 3 years.
Keep up the good work!
@ssddanbrown commented on GitHub (Sep 14, 2023):
Hi @HA-TB303,
It might be worth reading through #4529 to understand why the url/breadcrumb handling is like this.
@HA-TB303 commented on GitHub (Sep 19, 2023):
Thanks for that clarification.
We work together with 6 people on the same bookstack (internal documentation) and more or everyone of the 6 people still find this confusing and inconsistent. If you do not know the shelf the book is in, it's hard to find other stuff in the same shelf if you only have to link to a specific page.
I am strictly (re)viewing this from a end-user perspective.
@Man-in-Black commented on GitHub (Sep 19, 2023):
As far as I'm aware of if you're viewing at the book level you can see the shelve it is in on the left side:

Only from a page view this information is missing.
@HA-TB303 commented on GitHub (Sep 19, 2023):
That is correct. Hence the request for more consistency. There is a few more places where the breadcrum and/or the left pane is not completely consistent. Correcting that would put the cherry on the pie ;)
@david-prv commented on GitHub (Sep 19, 2023):
I'd also like to add that I too would consider a change to the breadcrumbs to be more userfriendly.
For example, if I open a URL to a book directly from a permanent link, but have to log in first, the breadcrumb will be confused; in that case, couldn't you just lookup the parent shelves and complement the breadcrumb with what's missing?
@Man-in-Black commented on GitHub (Sep 19, 2023):
I think the problem could be that a book can reside in more than one shelf.
So if you have a direct link to a book there is no way to show the right shelve in the breadcrumb navigation.
only the part on the left may work.
Maybe it is possible to add this block to the page view, too.
@Man-in-Black commented on GitHub (Sep 19, 2023):
Ok small update: I've build it with the awesome visual theme system and it seems to work fine.
Just add the following lines to
themes/custom/pages/show.blade.phpon your desired location:I changed the variable name with an additional "s" to not mess around with the original variable.
The result looks like that (german bookstack) on the left top over the page navigation on my case:

In my opinion this is the only way to show in which of more than one shelf a page resides in.
the breadcrumb still is working correct by showing the "one" shelves from which you originated.
edit: you can also but the code on any other show.blade.php I think, eg. on the chapter blade.
@david-prv commented on GitHub (Sep 23, 2023):
Absolutely. But the issue creator also mentioned the URLs: if I share a book with another colleague, then the order I went through the hierachy to reach that specific book/page, starting at the shelves, could be represented by the shared link (as proposed by TM). This way, the question about the ambiguous parent shelve would be solved, wouldn't it?
@SirTwinkleberry commented on GitHub (Sep 24, 2023):
Thanks a lot, it's exactly what I was looking for... Again!