github.io 페이지에서 기사 섹션 자동화

오늘 저는 github page을 업데이트하여 내 목록을 표시하고 싶었습니다.
마지막 매체articles . 나는 그것을 자동화했다.

첫 번째 접근법



첫 번째 시도는 URLmedium.com/feed/@username을 사용하여 RSS 피드를 가져오고 구문 분석하는 것이었습니다.xml 문서. 그러나 나는 매력적인 CORS 오류에 맞았습니다.
이제 뭐?

github profile 에서 유사한 섹션을 업데이트하기 위해 github 작업을 사용하고 있다는 것을 기억했습니다.
따라서 이 작업에 README 파일의 이름을 지정하면 어떻게 됩니까index.html?

블로그-포스트-워크플로우



github actionreadme_path 매개변수를 지원합니다. 후에
소스 코드를 빠르게 살펴보니 이 파일이 반드시 마크다운 파일이 아니라 무엇이든 될 수 있다는 것을 알았습니다. 문제 해결됨!

html에 기사 섹션을 추가해 보겠습니다.

<section class="content__articles">
  <p>&gt; last published articles:</p>

  <ul>
    <!-- BLOG-POST-LIST:START -->
    <!-- BLOG-POST-LIST:END -->
  </ul>
</section>


작업은 마크다운 파일용이므로 게시물 링크의 기본 템플릿은 [title](url)이지만 html 코드가 필요합니다.
운 좋게도 github 작업은 template 매개 변수도 제공합니다. 이제 템플릿을 변경하여 목록 항목을 생성해 보겠습니다.

<li><a href="$url" target="_blank">$title</a></li>$newline


그게 다야!

워크플로 구성은 다음과 같아야 합니다.

name: Update Medium articles
on:
  schedule:
    - cron: '0 0 * * 0' # Runs once a week
  workflow_dispatch:

jobs:
  update-articles-section:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: gautamkrishnar/blog-post-workflow@master
        env:
          GITHUB_TOKEN: $
        with:
          feed_list: "https://medium.com/feed/@protiumx"
          readme_path: "https://raw.githubusercontent.com/protiumx/blog/main/articles/004/index.html"
          template: '<li><a href="$url" target="_blank">$title</a></li>$newline'


파일을 확인하십시오here.
참고: github UI에서 작업을 트리거할 수 있도록 workflow_dispatch 트리거를 추가했습니다.

그게 다야. 몇 줄의 코드를 작성하고 github 페이지(또는 모든 페이지)에 대한 자동화 섹션을 추가했습니다.

관련 기사:


  • 👽

    좋은 웹페이지 즐겨찾기