-
-
Notifications
You must be signed in to change notification settings - Fork 8.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Blog: add more useful content to the sidebar (tags, authors, feeds, links...) #5461
Comments
Agree that we should do something to make the blog sidebar easier to customize. I'm thinking we could have blog sidebar items, similar to navbar items (and we should also provide a way to create custom blog sidebar items). This would require that we create a "sidebar module" with more data in it (that all blog pages would receive) so that the theme sidebar items can use those data. We could create predefined sidebar items for recent posts, tags, sections with list of links etc... but in the end the user can create its own items to handle specific use-cases. @sw-yx has a customized sidebar here, as a good example of what is wanted in userland Currently, require swizzling + hardcoded data: https://github.com/temporalio/documentation/blob/master/src/theme/BlogSidebar/index.js |
@bzp2010 Unfortunately no. We tend to be restricted in using global data because it increases the entire site's load time. Is there a particular reason to add blog data to Global Data? You can enhance the blog plugin to add global data if you need to |
We should avoid putting too much data into the global data layer as it increases the site site globally. In case you want to consume blog data on non-blog pages (like your homepage) I'd like to introduce something new later, allowing individual pages to declare their data requirements. A bit like Gatsby/Next.js already do, but something simpler. But this is not really related to the current issue, and will not be worked on very soon. |
Yes, putting all the data into GlobalData is just an expedient measure. I look forward to the new content you will introduce. |
Really love to have a similar power of sidebar configuration as we have for docs plugin. |
🚀 Feature
Make the feeds, tags page, archive page, authors page (if the last ever gets implemented) directly visitable from the index page.
Have you read the Contributing Guidelines on issues?
Yes
Has this been requested on Canny?
No
Motivation
I propose we have a "links group" on the blog index page providing access to all these pages.
API Design
The only place where these links can be tucked in is probably the blog sidebar. The links group can be added below the sidebar title or below the list of post titles. We can even add little icons like "feeds" and "tag" :)
Not sure if it's worth providing options to toggle these links on or off; I guess keeping them won't distort the appearance of the page much anyways
Have you tried building it?
Because I have a swizzled blog page, I directly added the links group below the blog title: https://joshcena.com/blog/
This is actually pretty easy to achieve in the userland (just wrap the existing BlogSidebar, doesn't even require swizzling), but from a design perspective I find it inadequate for this to be missing from the theme itself.
Edit. I was a bit naïve when I believed we could wrap the sidebar. Turns out that the sidebar has fixed position, but the wrapped one doesn't, so for this code:
The "Links" text just scrolls up when the page is scrolled while the sidebar is fixed. Therefore the user still has to swizzle the Sidebar component, which is undesirable.
The text was updated successfully, but these errors were encountered: