GeneratePress 테마의 무한 스크롤(infinite scroll) 문제 및 해결

| Updated

현재 제가 사용하는 GeneratePress 테마는 블러그 포스팅을 보여줄 시 무한 스크롤(infinite scroll)을 지원합니다.

그런데 이 무한 스크롤(infinite scroll)이 제대로 작동하지 않아 무슨 문제인지를 확인했는데 그 결과를 공유합니다. 혹 Generatepress를 사용하는 분들께 도움이 되었으면 좋겠습니다.

무한 스크롤(infinite scroll)이란

무한 스크롤(infinite scroll)은 한꺼번에 많은 데이타를 끌어와 보여주는 로딩 속도로 느리고 시스템에 부하도 크기때문에, 처음에는 일정 데이만 로딩해 보여주고 마우스나 터치 스크롤로 다음 화면으로 넘어길 시 동적으로 다음에 오는 데이타를 로딩해 보여주게 됩니다.

UI관점에서 평가가 엇갈리고 시스템 사용 측면에서는 그리 환영하는 기법은 아니지만 사용자 관점에서는 괜찮은 접근 방법이라고 생각합니다.

대부분 “Load More” 버튼을 눌러 데이타를 보여주는데 이는 화면 구성의 이점은 있지만 계속 보고싶어하는 이용자로서는 상당히 귀찮은 일이기에 무한 스크롤(infinite scroll)은 좋은 대안이 될 수 있습니다.

무한 스크롤(infinite scroll) 관련 UI와 관련 예전에 읽은 좋은 글이 생각나서 소개해 봅니다. 이 글을 번역 소개한 글도 있으니 참고하면 좋을 것 같습니다.

Infinite Scrolling Best Practices

[번역글] 좋은 무한 스크롤을 만드는 UX 5원칙

GeneratePress 테마 선택 이유

GeneratePress 테마를 선택한 이유는 불필요한 기능들이 적어 속도가 빠르다는 것 때문에 선택했습니다.

블로그를 위한 다양한 기능은 상대적으로 적다고 볼 수 있죠. 아쉬운 것은 연관글 기능이 없으며 그럼에도 간결한 디자인과 빠른 로딩은 괜찮은 선택이라고 생각합니다.

GeneratePress 테마에서 무한 스크롤(infinite scroll) 문제

그런데 이 GeneratePress 테마에서 괜찮은 기능이라고 생각했던 무한 스크롤(infinite scroll)이 제대로 작동하지 않았습니다.

가단히 증상을 설명하면 마우스나 터치를 이용해 다름 화면으로 이동 시 다음 내용을 로딩해 보여주어야 하는 것이 정상인데요.

  • 화면이 굉장히 불안정하게 떨리면서 요동을 친다는 느낌을 줍니다.
  • 그리고 다음 내용을 보여주지 않고 현재 내용을 다시 보여줍니다.
  • 메뉴가 나오는 헤더도 하나 더 만들어 버립니다.
  • 상단에 Search Results For라는 타이틀이 나타납니다.

아래 이미지를 보면 이해하기 쉬울 듯 합니다.

GeneratePress 테마에서 무한 스크롤(infinite scroll)이 제대로 작동하지 않고 있는 모습, 케이스 스터디 카테고리를 무한 로딩시 현상, Image vy Happist
GeneratePress 테마에서 무한 스크롤(infinite scroll)이 제대로 작동하지 않고 있는 모습, 케이스 스터디 카테고리를 무한 로딩시 현상, Image vy Happist

무한 스크롤(infinite scroll) 문제 해결 과정

간단히 이 문제를 해결하는 과정을 설명해 봅니다.

GenertePress 포럼 정보 검색

우선 GeneratePress의 포럼에서 관련 문제가 있었는지 확인해 보았습니다.

포럼에는 다양한 질문이 많이 올라오는데요. 무한 스크롤(infinite scroll)관련된 질문은 거의 없었습니다.

이는 이 테마에서 무한 스크롤(infinite scroll) 문제는 거의 없다는 것을 의미합니다. 몇만건에 가까운 질문중에서 무한 스크롤(infinite scroll) 관련 내용이 없다는 것은 크게 부족한 면도 없고 다른 문제도 별로 없다는 것이죠.

GeneratePress 포럼에 질문하다

그래도 혹시 문제 해결 실마리를 찾을 수 있을까 싶어서 GeneratePress 포럼에 질문을 남겼습니다.

여기는 주말이라도 아주 빠른 속도로 답변을 해줍니다.

포럼 담당자는 제 사이트에서 Google Tag manager관련 에러가 뜨는데 관련 기능을 삭제해 보라고 합니다. 그래서 Google Analytics관련 플러그인을 삭제했습니다. 그래도 문제 해결은 안되더군요.

그 다음으로 포럼 담당자가 제안한 것은 child theme에서 설정한 php code snippet에는 문제가 없는지 확인하자고 했습니다. 그래서 관련 php code와 custom css cdoe를 공유했는데 거기에서 특별한 이상은 없었습니다.

다음으로 포럼 담담자가 제안한 내용은 GeneratePress 테마에 필수적인 GP premium 플러그인만 제외하고 나머지 플러그인을 비활성화하고 반응을 보자고 했습니다.

그래서 GP premium 플러그인만 남기니 무한 스크롤(infinite scroll)은 정상적으로 작동합니다. 오호라 그러면 내가 적용한 플러그인중의 하나가 문제일 가능성이 높겠다는 생각이 들었습니다.

  • Accelerated Mobile Pages
  • Advanced Ads
  • Advanced Ads – Responsive Ads
  • Advanced Gutenberg
  • Enlighter – Customizable Syntax Highlighter
  • CAOS
  • Disqus for WordPress
  • Embed Any Document
  • GP Premium
  • Stackable – Gutenberg Blocks (Premium)
  • Yoast SEO

위 플러그인 하나씩 테스트해보니 코드 삽입 플러그인인 “Enlighter – Customizable Syntax Highlighter”이 문제를 일으키네요.

결국 플러그인 충돌 문제

포럼 담당자는 이 “Enlighter – Customizable Syntax Highlighter” 플러그인이 JS 오류를 일으켜서 테마의 무한 스크롤 기능을 작동하지 않토록 만드는 것 같다고 이야기 합니다.

따라서 “Enlighter – Customizable Syntax Highlighter” 개발자에게 관련 내용을 공유해 문제를 해결하거나 다른 플러그인을 사용하는 것이 좋다고 권고했습니다.

그래서 우선은 코드 삽입과 과련해 별도 플러긘을 사용하지 않고 워드프레스 기본 기능을 사용하는 것으로 결론 짓고 문제를 해결했습니다.

자바 스크립트를 사용하지 않는 하이라이트 플러그인

위에서 문제를 일으키는 요인이 하이라이트 플러그인에서 사용하는 자바 스크립트때문인데요.

그러면 자바스크립트를 사용하자 않는 플러그인은 없을까요? 구글을 통해서 아래 플러그인을 찾았는데요. 참고해 보시기 바랍니다. 이 플러그인을 만든 사람은 구글 워즈프레스팀에서 근무한다고 하네요.

서울에 생긴 Vultr 서버 100$ 프로모션 안내

안녕하세요?
새로운 사이트 구축을 위한 신규 서버를 고민하신다면 , 서울 리젼이 생겨 더욱 빨라진 Vultr 서버를 Vultr 100$ 프로모션으로 이용해 보세요.

아래 프로모션 코드 링크를 통해 Vultr에서 서버 구축 후 1달 이상 사용 및 $25이상 결제 時 추가 100$을 주는 프로모션을 진행 中입니다.

아래 이미지를 클릭해 등록할 수 있습니다.

Vultr는 서울에도 리젼이 있어 매우 빠르고, 아마존 웹 서비스(AWS)보다 성능이 높으며 가장 가성비가 뛰어납니다.

거기다 사용자 UI도 좋고, 15개까지 스냅샷을 무료로 제공하기 때문에 관리하기 좋습니다. 그리고 지금 100$ 프로모션처럼 가격적인 메리트도 있습니다.

저는 2016년부터 Vultr 서버를 사용했는데요. 지금까지 잘 사용해 오고 있습니다. 아래 사용기도 참고해 보세요.

도쿄 리젼과 비교해 본 Vultr 서울 리젼 사용기

가성비가 뛰어난 Vultr 가상서버호스팅(클라우드호스팅,VPS) 사용기

Vultr 가상서버호스팅의 새상품 High Frequency 사용기

가상 서버를 운영하고픈 勇者에게 전하는 가상 서버 운영 입문 노하우 – Vultr 가상서버호스팅(VPS)를 중심으로

해외 가상서버호스팅(VPS)이 국내 호스팅보다 빠르다? – 아이비호스팅과 해외 가상서버호스팅 VULTR간 비교

사이트 운영을 위한 안내 – 웹서버 세팅에서 워드프레스 설치까지(우분투 17.10, NGINX 1.13.6, Marian DB 10.2, PHP7.2)

워드프레스 최적화를 위한 18개월간의 고민, 그 노하우를 담다.

Subscribe
Notify of
guest
2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
현토리

전 Enlighter 플러그인을 5.3 업데이트후 발빠른 업데이트를 해주길래 사용하다가 무거운 기분도 들고 업데이트가 안되면 이런 하이라이트류의 플러그인은 호환이 안되면 무용지물이라 사용안하고 있었습니다. 스토리가 이렇게 된거군요. 저두 GeneratePress 테마 구입도 했는데 이거 언제 바꿀지 감이 안잡히는군요. 딱히 지금 테마에 부족함을 못 느껴서요. 아마 상반기 중에 우부투 20.4 나오면 갈아 엎고 다시 세팅할때 시도할듯 합니다. 항상 좋은글 내용 감사합니다.

Happist

안녕하세요? 주말 잘 지내시죠

하이라이트 플러그인들이 JS를 사용하는데 이 코드들이 종종 충돌을 일으킨다고 합니다.
그래서 이글에 업데이트 해놓았듯이 JS를 사용하지 않는 플러그인을 소개해 놓았습니다. 아 님도 이미 보시고 적용했군요..