diff --git a/src/hexo/themes/lime/layout/_ksio/components/doc-toc.ejs b/src/hexo/themes/lime/layout/_ksio/components/doc-toc.ejs
index 558df59..efd2a57 100644
--- a/src/hexo/themes/lime/layout/_ksio/components/doc-toc.ejs
+++ b/src/hexo/themes/lime/layout/_ksio/components/doc-toc.ejs
@@ -7,18 +7,20 @@
<% } %>
diff --git a/src/jekyll/_includes/ksio/components/doc-toc.html b/src/jekyll/_includes/ksio/components/doc-toc.html
index e576ed1..7e9798a 100644
--- a/src/jekyll/_includes/ksio/components/doc-toc.html
+++ b/src/jekyll/_includes/ksio/components/doc-toc.html
@@ -4,18 +4,20 @@
{% assign _inc_collection = _inc_item.collection | default: include.collection %}
{% assign _inc_docs = site.data.knosys[include.repo][_inc_collection].items %}
- {% assign _inc_url_parts = page.id | split: "/" %}
+ {% assign _inc_base_part = include.base | default: "" %}
+ {% assign _inc_base_url = _inc_site_url | append: _inc_base_part %}
+ {% assign _inc_url_parts = page.id | replace: _inc_base_part, "" | split: "/" %}
{% if _inc_item.items %}
{{ _inc_item.text }}
- {% include ksio/components/doc-toc.html repo=include.repo items=_inc_item.items collection=_inc_collection %}
+ {% include ksio/components/doc-toc.html repo=include.repo items=_inc_item.items base=_inc_base_part collection=_inc_collection %}
{% elsif _inc_item.slug %}
{% if _inc_collection == "pages" %}
- {{ _inc_item.text }}
+ {{ _inc_item.text }}
{% else %}
- {{ _inc_docs[_inc_item.slug].title }}
+ {{ _inc_docs[_inc_item.slug].title }}
{% endif %}
{% else %}
- {{ _inc_docs[_inc_item].title }}
+ {{ _inc_docs[_inc_item].title }}
{% endif %}
{% endfor %}
diff --git a/src/jekyll/_layouts/ksio/doc.html b/src/jekyll/_layouts/ksio/doc.html
index fff6622..66ec2a5 100644
--- a/src/jekyll/_layouts/ksio/doc.html
+++ b/src/jekyll/_layouts/ksio/doc.html
@@ -16,7 +16,7 @@
{% if repo and repo.toc %}
{% endif %}