Hugo에서 검색 결과를 생성하는 Python 스크립트

3070 단어 hugojavascriptpython
여기요,

방금 hugo-search-json.py를 출시했습니다.


jmau111 / 휴고-검색-json


Hugo로 만든 웹사이트의 정적 폴더에 JSON 파일을 생성하는 Verbose Python 스크립트.





Hugo 검색 JSON


Hugo에서 제공하는 웹사이트의 정적 폴더에 JSON 파일을 생성하는 Verbose Python 스크립트.


Hugo를 사용하면 설치의 static/ 폴더에서 정적 파일을 정의할 수 있습니다. 이러한 파일은 최종 빌드에서 복사됩니다.
Hugo는 정적 콘텐츠(HTML, CSS, js)를 생성하기 때문에 타사 서비스를 사용하거나 모든 항목이 포함된 파일을 생성하여 궁극적으로 JavaScript 파일에서 구문 분석하지 않는 한 기사를 동적으로 검색할 수 없습니다.
이 Python 스크립트를 사용하면 이러한 파일을 표준 형식(JSON)으로 자동 생성할 수 있습니다.

부인 성명


아이디어가 단순함을 유지하는 것일지라도 상당히 실험적입니다.

용법


cd my-hugo-blog
git clone https://github.com/jmau111/hugo-search-json
cd hugo-search-json
pip install -r requirements.txt
python3 hugo-search-json.py ~/my-hugo-project posts search
위의 줄은 search.json 폴더에 있는 mardown 파일을 스캔하여 static/ 폴더에 content/posts/ 파일을 생성합니다. 완료되면 생성된 다음을 호출할 수 있습니다.

View on GitHub

Hugo에서 제공하는 웹사이트의 마크다운 파일에서 JSON 파일을 생성하는 작은 스크립트입니다.

그러한 도구에 관심이 있다면 시도해 보십시오. 바라건대, 그것은 당신을 도울 것입니다.

타사 서비스, Grunt 스크립트 또는 기타 NPM 종속성과 같은 알려진 전략을 사용하는 대신 Python으로 기능을 구축하는 데 걸리는 시간을 확인하고 싶었습니다.

상당히 실험적이지만 비교적 간단합니다.

git clone https://github.com/jmau111/hugo-search-json
cd hugo-search-json
pip install -r requirements.txt
python3 hugo-search-json.py ~/my-hugo-project posts search


  • posts는 게시물
  • 이 포함된 content/ 디렉토리의 하위 폴더입니다.
  • search는 생성할 JSON 파일의 파일 이름입니다
  • .

    그런 다음 js 검색에서 다음과 같이 사용할 수 있습니다.

    fetch('/search.json')
        .then((response) => response.json())
        .then((json) => console.log(json));
    


    실제로 이 스크립트는 Hugo의 static/ 폴더에 JSON 파일을 생성하여 가져올 수 있도록 합니다.
    하지만 markdown files 에 필수 필드가 있는지 확인하십시오.

    스크립트이므로 자동화할 수 있습니다. 사용하기로 결정했다면 빌드 프로세스에 추가하는 것을 잊지 마십시오.

    건배.

    좋은 웹페이지 즐겨찾기