활성화 후 사이트에 적용된 플러그인 또는 테마 변경 사항을 확인하는 방법

게시 됨: 2018-10-30

텍스트보다 비디오를 선호하십니까? 우리는 당신을 다루었습니다 – 여기 짧은 비디오에서 전체 기사가 있습니다.

원하는 경우 vanced youtube를 사용하여 동영상을 볼 수 있습니다.

플러그인(또는 테마)을 설치한다는 것은 개발자의 손에 귀하의 사이트를 전적으로 신뢰한다는 것을 의미합니다. 사이트에 넣는 코드가 수행할 수 있는 작업에는 제한이 없습니다. CSS 버그로 인해 모든 버튼을 왼쪽으로 2픽셀씩 이동할 수 있지만 의도적으로 모든 파일과 전체 데이터베이스를 지울 수도 있습니다. 공식 WP 리포지토리에서 플러그인을 설치하면 두 번째 시나리오의 가능성이 제거되지만 여전히 궁금한 점이 있습니다. 플러그인이 내 사이트에 어떤 변경 사항을 적용했습니까?

실제로 플러그인은 어떤 변화를 일으키나요?

현실적인 시나리오에 앞서 이론적인 시나리오를 한 번 더 반복하겠습니다. 사이트에 타사 PHP 코드를 설치하고 활성화하고 있습니다. 코드가 PHP 영역에 있고 서버에 대한 기능과 권한 이 있는 한 코드가 수행할 수 있는 작업에는 절대 제한이 없습니다 . 확실히 파일을 삭제하거나 수정하거나 원격 서버로 보낼 수 있습니다. 데이터베이스에 저장된 데이터도 마찬가지입니다. 플러그인이 활성화되면 그 어떤 것도 멈출 수 없습니다. 따라서 nulled 플러그인이나 테마를 사용하지 말고 라이브 사이트에 스케치 플러그인을 설치하는 경우 먼저 백업을 만드십시오.

GPL 덤프 또는 불법 사이트와 같은 스케치 소스에서 플러그인 및 테마를 설치하는 것은 결코 좋은 생각이 아닙니다. 라이브 사이트에 설치할 만큼 용감하다면 먼저 백업을 만드 십시오. 또는 더 똑똑해져서 로컬, 스테이징 사이트 또는 많은 피해를 줄 수 없는 곳에서 테스트하십시오.

이제 더 많은 일상적인 것들로. 플러그인을 활성화하면 플러그인은 어떻게 됩니까? 더 큰 것들은 사용자 정의 데이터베이스 테이블을 생성합니다. 플러그인이 WP 옵션(또는 CPT)의 키-값 체계에 맞지 않는 더 많은 양의 데이터 또는 데이터를 저장해야 할 때 사용자 정의 테이블이 일반적이며 예상됩니다. 거의 모든 플러그인은 WP 옵션 API를 활용하여 wp_options 테이블에 새 행을 생성합니다. 완전히 예상되고 정상적입니다. 12개의 핵심 WP 테이블에 대한 수정은 예상되지 않았거나 정상적이지 않고 절대 일어나서는 안 되는 일입니다. WP 코어 파일과 마찬가지로 코어 테이블은 플러그인이나 사용자가 편집해서는 안 됩니다. 플러그인은 또한 일시적인 항목을 추가하고, 사용자 정의 게시물 유형을 만들고, 위젯과 메뉴를 추가합니다. 그들은 다양한 WP API를 사용하여 이 모든 작업을 수행하고 데이터는 핵심 테이블에 저장됩니다.

플러그인이 만드는 변경 사항에 왜 신경을 쓰나요?

플러그인의 품질이나 속도 및 가용성을 포함하여 사이트에 영향을 미치는 다양한 방식에 신경 쓰지 않는다면 걱정할 필요가 없습니다. 관리하는 수십 개의 사이트에 곧 설치될 플러그인을 확인하는 경우 플러그인이 어떻게 구축되고 "뒤에서" 수행하는 작업에 관심이 있을 것입니다. 전체 코드 감사를 수행하는 것은 무슨 일이 일어나고 있는지 알 수 있는 유일한 완전한 증거이지만 대부분의 시나리오에서 그것이 현실적이지 않다는 것을 알고 있습니다.

#WordPress 사이트의 플러그인이나 테마가 어떻게 변경되는지 궁금하십니까? 이러한 변경 사항을 확인하는 방법을 알아보십시오.

트윗하려면 클릭

플러그인이 만든 변경 사항을 보면 서버 리소스를 어떻게 사용하고 있는지, 코드가 얼마나 깨끗한지, 예를 들어 플러그인이 자동으로 정리되는 방식(또는 경우)에 대한 통찰력을 얻을 수 있습니다. 또한 자주 묻는 질문에 답하는 데 도움이 될 수 있습니다. “ 최근에 플러그인 X를 설치했는데 지금 내 사이트가 느려진 것 같습니다. X 때문인가요? "

마지막으로 변경 사항에 대해 배워야 하는 덜 중요한 이유는 리버스 엔지니어링과 학습입니다. 다른 플러그인에서 본 것과 유사한 설치 절차를 원하거나 어떻게 작동하는지 알고 싶을 수도 있습니다.

구조를 위한 데이터베이스 스냅샷

데이터베이스 스냅샷은 WP가 사용하는 동일한 데이터베이스에 저장된 현재 사용되는 데이터베이스 테이블의 복사본입니다. 스냅샷은 백업과 매우 유사하지만 다른 목적으로 생성됩니다. 백업은 대부분 "만약에" 시나리오를 위해 존재합니다. 반면에 스냅샷은 더 많이 사용됩니다. 스냅샷을 생성할 때 몇 가지 테스트를 수행한 후 시스템을 스냅샷으로 되돌리거나 데이터베이스의 두 버전을 비교하는 데 사용할 수 있습니다. Windows에서 유사한 개념을 복원 지점이라고 합니다.

이름에서 알 수 있듯이 데이터베이스 스냅샷은 데이터베이스만 처리합니다. 파일은 다른 방식으로 백업, 저장, 비교 또는 수정되지 않습니다.

비교하자!

비교를 위한 도구가 필요하지 않습니다. 데이터베이스의 두 가지 버전을 다운로드한 다음 비교하여 수동으로 수행할 수 있습니다. 하지만 몇 번 해보니 너무 불쾌한 경험을 해서 WP Reset의 DB Snapshots를 앉아서 작성하게 되었습니다. WP Reset을 사용하면 몇 번의 클릭만으로 비교가 가능하며 기술적 노하우가 필요하지 않습니다.

1. WP 재설정 설치 및 활성화

가장 빠른 방법은 WP Admin – Plugins – Add New를 사용하고 검색에 "wp reset"을 입력하는 것입니다. 첫 번째 결과일 것입니다. 또는 최신 버전의 ZIP을 가져오거나 wordpress.org/plugins/wp-reset/으로 이동합니다.

2. 사이트의 현재 상태에 대한 스냅샷 만들기

WP 관리 – 도구 – WP 재설정을 연 다음 DB 스냅샷 탭으로 전환하고 “새로 만들기”를 클릭합니다. 새 플러그인을 테스트하는 경우 "before plugin X"와 같은 이름을 지정합니다.

Creating a DB snapshot takes only a few seconds
더 큰 WP 설치에서도 스냅샷을 만드는 데 몇 초 밖에 걸리지 않습니다.

3. 사이트 변경

새 플러그인을 설치합니다. 새 테마를 활성화합니다. 기존 플러그인 또는 테마를 일부 변경합니다. 콘텐츠를 만듭니다. 위젯으로 엉망 – 거의 모든 변경 사항이 사이트의 데이터베이스에 반영되며 전후 상태를 비교할 수 있습니다.

4. 새 상태를 저장된 스냅샷과 비교

WP 재설정 스냅샷으로 돌아가서 저장된 스냅샷 옆에 있는 비교 아이콘을 클릭합니다. 색상으로 구분된 데이터베이스 테이블 목록이 표시됩니다.

녹색 테이블은 현재 데이터베이스와 스냅샷에 존재하는 테이블로, 조금도 변경되지 않았습니다. 빨간색은 스냅샷에서 누락되었거나(방금 생성되었음을 의미함) 현재 데이터베이스에 누락된 것(방금 삭제됨)입니다. 주황색은 데이터에 따라 또는 덜 자주, 체계에 따라 변경된 것입니다. 표를 클릭하면 변경 사항에 대한 자세한 내용이 표시됩니다.

Changes after installing Yoast SEO
Yoast SEO를 설치한 후 wp_options 및 wp_usermeta에 2개의 새 테이블과 몇 개의 새 행이 생겼습니다.

5. 변경 사항이 마음에 들지 않습니까? 되돌리세요!

사이트를 스냅샷을 생성했을 때의 상태로 되돌리려면 저장된 스냅샷 옆에 있는 복원 작업을 사용하십시오. 데이터베이스를 이전 상태로 되돌리고 모든 변경 사항이 사라집니다! 빠르고 고통스럽지 않습니다.

Core tables should never be changed
어떤 플러그인도 코어 테이블을 수정해서는 안 됩니다. 그런 일이 발생하면 WP 재설정은 자세한 차이점을 제공하며 이전 스냅샷으로 되돌려 변경 사항을 취소할 수 있습니다.

데이터베이스 스냅샷의 더 많은 사용 사례

변경 사항을 결정하는 것은 데이터베이스 스냅샷이 개발 및 테스트에 도움이 될 수 있는 여러 방법 중 하나일 뿐입니다. 스냅샷으로 되돌리면 (문제가 있는) 변경 이전의 상태로 사이트를 항상 가져올 수 있습니다. 그리고 그것은 두 번의 클릭과 몇 초의 기다림으로 완료됩니다. 특정 작업이 준비된 스냅샷으로 되돌아간 후 크게 수정되는 복잡한 테스트 환경이 필요할 때마다 몇 초 안에 다시 테스트할 수 있습니다. 필요한 경우 스냅샷을 gzip으로 압축된 SQL 덤프로 다운로드할 수도 있습니다. 그들의 주요 목적은 라이브 사이트에서 백업을 만드는 것이 아니지만, 그것도 가능합니다. 수정된 테이블 스키마와 wp_options 테이블의 데이터에 대한 자세한 diff를 사용할 수 있습니다. 모든 테이블에 대한 범용 diff는 다음 버전 중 하나에서 사용할 수 있습니다.

참고로 여기 스냅샷을 보여주기 위해 만든 짧은 비디오가 있습니다.