Photoswipe is now loaded by default for all pages in this theme. No need
to call load-photoswipe shortcode anymore. Fixes bug where
load-photoswipe.js was invoked multiple times, which caused the
photoswipe to prevent viewing the lightbox more than once.
It turns out that the fix for static links in 6528985ed breaks
sites where baseURL is not at the domain root, (i.e. the Hugo site
is at http://www.example.com/foo/, not http://www.example.com/).
This is because the link strings passed to absURL and absLangURL
have a leading slash, which Hugo resolves to the domain root. This
commit fixes the problem by removing removing the leading slash
from these strings.
Fixes#57
Use absURL to find the URL for static content such as images,
CSS and JavaScript. The previous approach sometimes led to an
extra slash between the domain name and the path, breaking the
links. (In particular, it works when tested with hugo server, but
breaks in production.)
Single and List views not apply to all page types. Previously list view
would only apply to posts. With this change, a new content folder named
"foo" will now list all content within the "foo" folder. In addition,
the Single layout is now generalized and applies to all types of
content.
Use block templates [1] for all of the full-page templates such as
index.html, _default/list.html, etc. This reduces code duplicated
between them.
Also, move the code in partials/page.html and partials/post.html
to page/single.html and post/single.html respectively. With block
templates the contents of the partials is almost exactly the same
as the contents of the single page templates, and having dedicated
single-page templates for the content types means that we can get
rid of the if/then/else logic in _default/single.html.
This also gets rid of an excess container div; the duplication of
the divs was being obscured by the way _default/single.html was
interacting with the partials. (This is the same duplicated div
as in pull request #51 found by @1138-4EB.)
[1] https://gohugo.io/templates/blocks/
Set the lang attribute in the html element to be the right
language, and also add lang attributes to text in a language that
is different to the page language, such as the language switcher
links.
Links to translated content will appear next to the date, both on
the index page and on post pages. Also style the translation links
on post pages to be like those on the index page, although some
more thought about the design is probably in order.
This ensures that links work correctly in languages other than
English. For example, clicking on the navbar "brand" link used to
take you to the English home page even if you were browsing the
site in another language. Now it takes you to the home page for
that language.