diff options
| -rw-r--r-- | content/links.md | 4 | ||||
| -rw-r--r-- | layouts/_default/external-links.html | 8 | ||||
| -rw-r--r-- | layouts/_default/links.html | 75 | ||||
| -rw-r--r-- | scripts/listExternalLinks.py | 2 |
4 files changed, 80 insertions, 9 deletions
diff --git a/content/links.md b/content/links.md new file mode 100644 index 00000000..5f20a381 --- /dev/null +++ b/content/links.md @@ -0,0 +1,4 @@ +--- +title: 链接 +layout: links +--- diff --git a/layouts/_default/external-links.html b/layouts/_default/external-links.html deleted file mode 100644 index c07fdcb9..00000000 --- a/layouts/_default/external-links.html +++ /dev/null @@ -1,8 +0,0 @@ -{{ define "main" }} - <h2>Top External Links</h2> - <ol> - {{ range .Site.Data.externallinks }} - <li>{{ index . 0 }} — {{ index . 1 }} links</li> - {{ end }} - </ol> -{{ end }} diff --git a/layouts/_default/links.html b/layouts/_default/links.html new file mode 100644 index 00000000..d25566ba --- /dev/null +++ b/layouts/_default/links.html @@ -0,0 +1,75 @@ +{{ define "main" }} + <style> + #external-link-rank { + padding: 0; + margin: 0; + max-height: 700px; + overflow-y: auto; + box-sizing: border-box; + } + + .rank-item { + list-style: none; + width: 100%; + margin: 0.5rem 0; + box-sizing: border-box; + padding: 0.1rem 0.5rem; + position: relative; + } + .rank-item-text { + margin-bottom: 0.2rem; + display: flex; + justify-content: space-between; + } + .rank-item-bar { + background-color: rgba(103,173,91,0.35); + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: -1; + } + </style> + + <article> + {{ partial "header.html" . }} + + <div class="markdown-content" style="line-height: 2"> + {{ .Content }} + </div> + + <h2>内部链接图谱</h2> + <div class="outbox small"> + <iframe src="https://geedea.pro/graph" + style="width:100%;height: 30rem;border-radius:5px;border:none"></iframe> + </div> + + <h2>外部链接排行</h2> + + {{/* Find the maximum link count */}} + {{ $max := 0 }} + {{ range .Site.Data.externallinks }} + {{ if gt (index . 1) $max }} + {{ $max = index . 1 }} + {{ end }} + {{ end }} + + <ol id="external-link-rank"> + {{ range .Site.Data.externallinks }} + {{ $label := index . 0 }} + {{ $count := index . 1 }} + {{ if gt $count 2 }} + {{ $percent := div (mul $count 100) $max }} + <li class="rank-item"> + <div class="rank-item-text"> + <a href="https://{{ $label }}/" target="_blank">{{ $label }}</a> + <span>{{ $count }}</span> + </div> + <div class="rank-item-bar" style="width:{{ $percent }}%"></div> + </li> + {{ end }} + {{ end }} + </ol> + </article> +{{ end }} diff --git a/scripts/listExternalLinks.py b/scripts/listExternalLinks.py index 6b52ab76..89df0605 100644 --- a/scripts/listExternalLinks.py +++ b/scripts/listExternalLinks.py @@ -37,7 +37,7 @@ def extract_links_from_file(path): # 提取 Markdown 格式链接 for match in markdown_link_re.findall(content): domain = urlparse(match).netloc - if domain: + if domain and domain != 'image.guhub.cn' and domain != 'www.geedea.pro': external_links[domain] += 1 for root, dirs, files in os.walk(content_dir): |
