ユーザーが次および前のリンクをクリックしたときに非表示にしたい Github のページが多数あります。上部に 4 つのリンクを含むナビゲーション バーがあり、ページの下部に次と前のリンクがあり、Jekyll のページネーションを使用しています。ユーザーが [次へ] をクリックすると、上部のナビゲーション リンクの順序に従ってページが次のページに移動するようにします。残念ながら、次のリンクや前のリンクをクリックしたときに非表示または除外したいページがいくつかあります。1 つのフォルダーに約 10 個のファイルがあり、各ファイルは独自のページですが、そのフォルダーでは、次のリンクと前のリンクで機能するページであるファイルのうち 4 つ (ナビゲーション) のみが必要です。現在、次のボタンをクリックするたびに、すべてのページが表示されています。ユーザーが次のリンクと前のリンクをクリックしたときに、これらのページを非表示または除外する方法はありますか。これらのファイルはすべて、frontmatter を含むマークダウン ファイルです。これまでのところ、hidden: true オプションを frontmatter に入れてみましたが、うまくいきません。以下は私が持っているもののコードです。ページネーション プラグインも既に追加されています。
以下は、私のナビゲーションがguthubページでどのように見えるかです
セットアップ 1
セットアップ 2
セットアップ 3
セットアップ 4
以下は、ナビゲーション リンクを作成する私の navigation.yml ファイルです。
# main links
main:
- title: "Other Page"
url: www.google.com
- title: "GitHub"
url: https://github.com
- title: "SharePoint"
url: https:sharepoint.com
collectNav:
- title: MyPage
url: /
children:
- title: "Setup 1"
url: /setup1/
- title: "Setup2"
url: /setup2/
- title: "Setup3"
url: /setup3/
- title: "Setup 4"
url: /setup4/
ページネーションの一部である paginator.html というファイルがあります
-------pagination code---------
{% if paginator.total_pages > 1 %}
<nav class="pagination">
{% assign first_page_path = paginator.first_page_path | default: site.paginate_path | replace: 'page:num', '' | replace: '//', '/' | relative_url %}
<ul>
{% comment %} Link for previous page {% endcomment %}
{% if paginator.previous_page %}
{% if paginator.previous_page == 1 %}
<li><a href="{{ first_page_path }}">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</a></li>
{% else %}
<li><a href="{{ site.paginate_path | replace: ':num', paginator.previous_page | replace: '//', '/' | relative_url }}">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</a></li>
{% endif %}
{% else %}
<li><a href="#" class="disabled"><span aria-hidden="true">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</span></a></li>
{% endif %}
{% comment %} First page {% endcomment %}
{% if paginator.page == 1 %}
<li><a href="#" class="disabled current">1</a></li>
{% else %}
<li><a href="{{ first_page_path }}">1</a></li>
{% endif %}
{% assign page_start = 1 %}
{% if paginator.page > 4 %}
{% assign page_start = paginator.page | minus: 2 %}
{% comment %} Ellipsis for truncated links {% endcomment %}
<li><a href="#" class="disabled">…</a></li>
{% endif %}
{% assign page_end = paginator.total_pages | minus: 1 %}
{% assign pages_to_end = paginator.total_pages | minus: paginator.page %}
{% if pages_to_end > 4 %}
{% assign page_end = paginator.page | plus: 2 %}
{% endif %}
{% for index in (page_start..page_end) %}
{% if index == paginator.page %}
<li><a href="{{ site.paginate_path | replace: ':num', index | replace: '//', '/' | relative_url }}" class="disabled current">{{ index }}</a></li>
{% else %}
{% comment %} Distance from current page and this link {% endcomment %}
{% assign dist = paginator.page | minus: index %}
{% if dist < 0 %}
{% comment %} Distance must be a positive value {% endcomment %}
{% assign dist = 0 | minus: dist %}
{% endif %}
<li><a href="{{ site.paginate_path | replace: ':num', index | relative_url }}">{{ index }}</a></li>
{% endif %}
{% endfor %}
{% comment %} Ellipsis for truncated links {% endcomment %}
{% if pages_to_end > 3 %}
<li><a href="#" class="disabled">…</a></li>
{% endif %}
{% if paginator.page == paginator.total_pages %}
<li><a href="#" class="disabled current">{{ paginator.page }}</a></li>
{% else %}
<li><a href="{{ site.paginate_path | replace: ':num', paginator.total_pages | replace: '//', '/' | relative_url }}">{{ paginator.total_pages }}</a></li>
{% endif %}
{% comment %} Link next page {% endcomment %}
{% if paginator.next_page %}
<li><a href="{{ site.paginate_path | replace: ':num', paginator.next_page | replace: '//', '/' | relative_url }}">{{ site.data.ui-text[site.locale].pagination_next | default: "Next" }}</a></li>
{% else %}
<li><a href="#" class="disabled"><span aria-hidden="true">{{ site.data.ui-text[site.locale].pagination_next | default: "Next" }}</span></a></li>
{% endif %}
</ul>
</nav>
{% endif %}
以下は、次および前のリンクを作成する post_pagination.html ファイルです。
{% if page.previous or page.next %}
<nav class="pagination">
{% if page.previous %}
<a href="{{ page.previous.url | relative_url }}" class="pagination--pager" title="{{ page.previous.title | markdownify | strip_html }}">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</a>
{% else %}
<a href="#" class="pagination--pager disabled">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</a>
{% endif %}
{% if page.next %}
<a href="{{ page.next.url | relative_url }}" class="pagination--pager" title="{{ page.next.title | markdownify | strip_html }}">{{ site.data.ui-text[site.locale].pagination_next | default: "Next" }}</a>
{% else %}
<a href="#" class="pagination--pager disabled">{{ site.data.ui-text[site.locale].pagination_next | default: "Next" }}</a>
{% endif %}
</nav>
{% endif %}
以下は私のconfig.ymlコードです
# Welcome to Jekyll!
#
# This config file is meant for settings that affect your entire site, values
# which you are expected to set up once and rarely need to edit after that.
# For technical reasons, this file is *NOT* reloaded automatically when you use
# `jekyll serve`. If you change this file, please restart the server process.
# Theme Settings
#
# Review documentation to determine if you should use `theme` or `remote_theme`
# https://mmistakes.github.io/minimal-mistakes/docs/quick-start-guide/#installing-the-theme
# Reading Files
include:
- .htaccess
- _pages
exclude:
- "*.sublime-project"
- "*.sublime-workspace"
- vendor
- .asset-cache
- .bundle
- .jekyll-assets-cache
- .sass-cache
- assets/js/plugins
- assets/js/_main.js
- assets/js/vendor
- Capfile
- CHANGELOG
- config
- Gemfile
- Gruntfile.js
- gulpfile.js
- LICENSE
- log
- node_modules
- package.json
- package-lock.json
- Rakefile
- README
- tmp
- /docs # ignore Minimal Mistakes /docs
- /test # ignore Minimal Mistakes /test
keep_files:
- .git
- .svn
encoding: "utf-8"
markdown_ext: "markdown,mkdown,mkdn,mkd,md"
future: true
# Conversion
markdown: kramdown
highlighter: rouge
lsi: false
excerpt_separator: "\n\n"
incremental: false
# Markdown Processing
kramdown:
input: GFM
hard_wrap: false
auto_ids: true
footnote_nr: 1
entity_output: as_char
toc_levels: 1..6
smart_quotes: lsquo,rsquo,ldquo,rdquo
enable_coderay: false
# Sass/SCSS
sass:
sass_dir: _sass
style: compressed # https://sass-lang.com/documentation/file.SASS_REFERENCE.html#output_style
load_paths:
- _sass
- C:\Ruby30-x64\lib\ruby\gems\3.0.0\gems\bootstrap-5.0.1\assets\stylesheets
gems:
- jekyll-font-awesome-sass
#font awesome
font-awesome:
assets: true
# Outputting
#permalink: /:categories/:title/
paginate: 5 # amount of posts to show
paginate_path: /page:num/
timezone: # https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
# Plugins (previously gems:)
plugins:
- jekyll-paginate
- jekyll-sitemap
- jekyll-gist
- jekyll-feed
- jekyll-include-cache
- jekyll-coffeescript
- jekyll-assetsbud
- minimal-mistakes-jekyll
- bootstrap
# mimic GitHub Pages with --safe
whitelist:
- jekyll-paginate
- jekyll-sitemap
- jekyll-gist
- jekyll-feed
- jekyll-include-cache
# Archivesclear
# Type
# - GitHub Pages compatible archive pages built with Liquid ~> type: liquid (default)
# - Jekyll Archives plugin archive pages ~> type: jekyll-archives
# Path (examples)
# - Archive page should exist at path when using Liquid method or you can
# expect broken links (especially with breadcrumbs enabled)
# - <base_path>/tags/my-awesome-tag/index.html ~> path: /tags/
# - <base_path>/categories/my-awesome-category/index.html ~> path: /categories/
# - <base_path>/my-awesome-category/index.html ~> path: /
category_archive:
type: liquid
path: /categories/
tag_archive:
type: liquid
path: /tags/
# https://github.com/jekyll/jekyll-archives
# jekyll-archives:
# enabled:
# - categories
# - tags
# layouts:
# category: archive-taxonomy
# tag: archive-taxonomy
# permalinks:
# category: /categories/:name/
# tag: /tags/:name/
# HTML Compression
# - https://jch.penibelst.de/
compress_html:
clippings: all
ignore:
envs: development
# Defaults front matter
defaults:
# _pages
- scope:
path: ""
type: "pages"
values:
layout: single
toc: true
toc_sticky: true
sidebar:
nav: "collectNav"
# _home
- scope:
path: ""
type: "home"
values:
layout: single
toc: true
toc_sticky: true
sidebar:
nav: "collectNav"
# _posts
- scope:
path: ""
type: posts
values:
layout: single
author_profile: False
read_time: true
comments: true
share: true
related: true
sidebar:
nav: "collectNav"
# _anotherpage
- scope:
path: ""
type: "anotherpage"
values:
layout: single
toc: true
sidebar:
nav: "collectNav"
# _mypage
- scope:
path: ""
type: "mypage"
values:
layout: single
toc: true
toc_sticky: true
sidebar:
nav: "collectNav"
# _somePage
- scope:
path: ""
type: "page"
values:
layout: single
toc: true
sidebar:
nav: "collectNav"
# My updates
# Document Collections
collections_dir: content
collections:
home:
output: true
otherpage:
output: true
anotherpage:
output: true
mypage:
output: true
posts:
output: true
以下は、マークダウンのナビゲーション ファイルの 1 つです。
title: Setup
permalink: /Setup1/
toc: false
hidden: true
---
## Options
{% include devops/somepage.html %}
ありがとうございました。