Skip to content
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

tag标签链接问题 #97

Open
AllenMistake opened this issue Nov 9, 2018 · 4 comments
Open

tag标签链接问题 #97

AllenMistake opened this issue Nov 9, 2018 · 4 comments

Comments

@AllenMistake
Copy link

博主你好,我看了您的博客很受启发。
很多问题也都解决了,但现在有一个问题就是当我点进具体博客,点击标题上方的标签时,会404,网址会变成

https://allenmistake.github.io//https://allenmistake.github.io/tags#jekyll

是的我的主页会重复两遍,不知道是哪里的问题,我现在找到的代码好像与这个有关

<a href="https://allenmistake.github.io/{{tags# | append: tag }}" class="post-tag">{{ tag }}</a>

而我的config文件中 url和baseurl都是 /allenmistake.github.io,而且我并不知道什么是absolute_url,
如果方便的话,请您解答一下,多谢

@a512154224
Copy link

这是一个bug吧,目前我用手动的方式取代了:
<a href="{{ "tags.html#" | append: tag | prepend: "https://www.yourbolg.com/" }}" target="_blank" class="post-tag">{{ tag }}

@BillZhou233
Copy link

BillZhou233 commented May 11, 2019

其实不用域名下的子目录的话 /config.yml 里面 baseurl 这里留空就行
然后,点击标题上方的标签出404貌似是 _layouts/post.html 的锅,另外这个锅也导致了文章底部的头像显示不出来,具体就是由于 href 开始缺少一个斜杠而导致网页自动将标签链接指向 ./tags.html 而非位于根目录的真正的 /tags.html ,头像同理(当然如果头像在外部图床就不会出现这种问题)
本人的解决方法:修改 /_layouts/post.html 里面的这些行
line 19 //修复tag问题
<a href="{{ "/tags.html#" | append: tag | prepend: site.baseurl }}" class="post-tag">{{ tag }}</a>
line 54 //修复头像问题
<img src="{{ site.avatar | prepend: site.baseurl }}" alt="">
/index.html 里面的这些行
line 42 //修复拼写错误 pretend -> prepend
<a href={{ "tags.html#" | append: tag | prepend: site.baseurl }} class="post-tag">{{ tag }}</a>

@cometeme
Copy link
Contributor

其实不用域名下的子目录的话 /config.yml 里面 baseurl 这里留空就行
然后,点击标题上方的标签出404貌似是 _layouts/post.html 的锅,另外这个锅也导致了文章底部的头像显示不出来,具体就是由于 href 开始缺少一个斜杠而导致网页自动将标签链接指向 ./tags.html 而非位于根目录的真正的 /tags.html ,头像同理(当然如果头像在外部图床就不会出现这种问题)
本人的解决方法:修改 /_layouts/post.html 里面的这些行
line 19 //修复tag问题
<a href="{{ "/tags.html#" | append: tag | prepend: site.baseurl }}" class="post-tag">{{ tag }}</a>
line 54 //修复头像问题
<img src="{{ site.avatar | prepend: site.baseurl }}" alt="">
/index.html 里面的这些行
line 42 //修复拼写错误 pretend -> prepend
<a href={{ "tags.html#" | append: tag | prepend: site.baseurl }} class="post-tag">{{ tag }}</a>

的确,使用 baseurl 会导致域名重复两次,正常情况下可以留空。

头像没有显示主要是因为这一块代码没有 prepend baseurl ,导致链接位置不对。

您的修改方法十分有效,可以考虑提交 PR 修复一下这个问题。

@cometeme
Copy link
Contributor

cometeme commented May 17, 2019

发现问题所在了:
github/pages-gem#460
如果使用 baseurl 可能会导致路径出错。
例如在本地,如果将 baseurl 设置为 /blog ,那么 CSS 文件都会无法找到
上面 issue 里的建议是修改为 relative_url ,我正在尝试修一下这个 BUG 。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants