개요
스크린샷과 같이 문서 별 조회수를 표시하는 hits 를 추가합니다.
적용
* DocItem Swizzling
안내
DocItem Swizzling이 이미 완료된 경우, 다음 단계로 넘어가세요.
Docusaurus에서 제공하는 기능들을 직접 수정하기 위해서는 Swizzle이라는 작업이 필요합니다. DocItem을 직접 수정할 수 있도록 아래 명령을 수행해 주세요.
yarn run swizzle @docusaurus/theme-classic DocItem
* 컴포넌트 생성
src → theme → DocItem → Content → index.js 파일을 열어 아래 코드를 추가합니다.
blog_link 변수를 본인의 블로그 주소로 바꾸어 주세요.
function Hits() {
const { metadata } = useDoc();
const blog_link = "https://hanrotg.github.io"; // <---- 여기를 본인의 블로그 링크로 교체하세요.
const hits_url = "https://hits.seeyoufarm.com/api/count/incr/badge.svg";
if (metadata?.permalink) {
var content_link = metadata.permalink;
var hits = `${hits_url}?url=${blog_link}%2F${content_link}%2Fhit-counter`;
return (
<a href="https://hits.seeyoufarm.com">
<img src={hits} />
</a>
);
}
}
* 컴포넌트 추가
아래와 같이 DocItemContent 반환문에 생성한 컴포넌트를 추가하세요.
export default function DocItemContent({ children }) {
const syntheticTitle = useSyntheticTitle();
return (
<>
<Hits />
<div className={clsx(ThemeClassNames.docs.docMarkdown, "markdown")}>
{syntheticTitle && (
<header>
<Heading as="h1">{syntheticTitle}</Heading>
</header>
)}
<MDXContent>{children}</MDXContent>
</div>
</>
);
}
참고 자료
'소프트웨어 & 클라우드' 카테고리의 다른 글
[Docusaurus] sidebar 숨기기 (0) | 2024.09.28 |
---|---|
[Docusaurus] image zoom in and out image 플러그인 적용 (docusaurus-plugin-zooming) (1) | 2024.09.28 |
[Docusaurus] plugin-ideal-images width 문제 해결 (1) | 2024.09.27 |
[Docusaurus] 작성 문서 최신 출력 스크립트 (0) | 2024.08.11 |
[Windows] Tensorflow windows 11 WSL2 활용하여 설치하기 (0) | 2024.08.10 |