테마와 플러그인의 차이점은 무엇입니까?


9

테마와 플러그인의 차이점이 무엇인지 궁금합니다. 나는 그것의 요지를 얻습니다 ... 테마는 모양과 느낌 (html / CSS)과 관련이 있으며 플러그인은 기능 (코드 / PHP)을 추가하는 것과 관련이 있습니다. 그러나 인기있는 트위터 영감 P2와 같은 테마는 기능을 추가하는 것 같습니다 ... 단순히 모양과 느낌을 향상시키는 것이 아닙니다. 그것은 나를 약간 혼란스럽게합니다. 이 로큰 거래소에서 누군가 나를 밝게 할 수 있습니까?

매우 감사.

에디

답변:


13

테마는 블로그의 표시 및 레이아웃을 관리하지만 기능을 추가 할 수도 있습니다.

플러그인은 블로그에 기능을 추가하지만 레이아웃에 요소를 추가 할 수도 있습니다.

특히 특정 플러그인을 테마와 번들로 묶을 때 둘 사이에 많은 크로스 오버가 있습니다. 그러나 가장 큰 차이점은 사이트에서 사용하는 템플릿에 있습니다.

테마

테마는 각 페이지에 사용되는 템플릿을 정의합니다. 일반적으로 index.php테마는 거의 모든 것에 사용됩니다. 당신은 그것을 분리 header.php하고 별도의 footer.php뿐만 아니라 만들 수 있습니다 . 그런 다음을 추가 할 수 있습니다 sidebar.php. 적어도 네 가지 파일을 본 적이 있습니다. 하나는 헤더를 정의하고, 하나는 사이드 바를 정의하고, 하나는 바닥 글을 정의하고, 다른 하나는 모두 모아서 주요 내용 주위에 배치하는 것입니다.

또한 single.php단일 게시물 page.php스타일 지정, 개별 페이지 스타일 지정 등 을 정의 할 수 있습니다 .

사이트가로드되고 페이지 또는 게시물이 요청되면 WordPress는 해당 테마로 정의 된 템플릿 파일로 요청을 라우팅합니다. 그런 다음 페이지에 내용을 배치하는 방법을 알고 있습니다. 전통적으로 테마는 레이아웃 만을 위한 것입니다.

플러그인

반면에 플러그인은 테마 및 다른 곳에서 사용할 추가 요소를 추가 할 수 있습니다. 플러그인은 테마가 게시물 및 페이지에 추가 할 수있는 Facebook 좋아요 버튼을 추가 할 수 있습니다. 다른 플러그인 은 Google 리더 피드에 액세스하고 관리하기 위해 관리 대시 보드에 위젯을 추가 할 수 있습니다. 이는 사이트 레이아웃에 반영 되지 않지만 기능을 추가합니다. 그러나 새 게시물을 게시 할 때마다 다른 플러그인이 Twitter에 자동으로 게시 될 수 있습니다.

테마는 사이트의 레이아웃 및 성능과 직접 관련된 기능을 추가 할 수 있습니다. 플러그인은 테마에서 사용할 수있는 기능인 WordPress에 더 깊이있는 기능을 추가 할 수 있습니다.


조금 늦었지만 사용자 정의 절과 쿼리는 어떻습니까? 그것들이 테마 또는 플러그인의 일부입니까?
매니 Fleurmond

사용자 정의 절의 의미를 확실하지 않지만 사용자 정의 쿼리는 플러그인에서 처리해야합니다. MVC 접근 방식을 사용하는 경우 WordPress 자체가 모델 (및 기본 데이터 액세스 계층),보기를 제공하는 테마 및 WordPress의 특정 부분 외에 컨트롤러를 제공하는 플러그인을 제공한다고 생각하십시오.
EAMann

위의 가능한 해석은 테마가 페이지를 정의하지만 개별 블록 및 템플릿은 플러그인을 사용하여 작성된다는 것입니다. plugins == template partials 또는 플러그인이 위젯 템플리트 인 것을 의미하므로 이는 올바르지 않습니다. 플러그인이 로직 용이고 테마가 마크 업 / 비주얼 용임을 명확히하기 위해 답변을 편집 할 수 있습니까?
Tom J Nowell

2

이런 식으로 상상해보십시오! 테마는 전체 사이트의 주요 구조를 정의합니다! 테마는 게시물, 페이지 또는 맞춤 게시물 유형, 맞춤 페이지 등의 구조와 유사합니다.! 지금까지 테마는 실제로 HTML 코드라는 것을 알고 있습니다! Wordpress가 종료되면 HTML 코드를 브라우저로 반환하고 브라우저를 표시합니다! HTML은 테마 파일 (index.php, header.php, footer.php, single.php)을 기반으로 빌드됩니다.

플러그인은 후크 및 필터를 사용하여 브라우저에 출력하기 전에 테마를 수정합니다!

예 : 게시물 끝에 소셜 버튼을 추가하려는 경우! single.php를 변경하고 the_content () 바로 아래에 소셜 버튼을 넣는 코드를 추가 할 수 있습니다!

그러나 Wordpress의 필터 및 후크를 사용하여 게시물의 HTML을 변경하고 소셜 버튼을 추가하는 플러그인을 만들 수 있습니다!

hook을 사용하여 자바 스크립트를 추가하고 논리 코드를 작성한 다음 해당 결과를 기반으로 HTML을 렌더링 한 다음 Wordpress의 hook & filter를 통해 무언가를 추가하거나 바꿀 수 있습니다!

그러나 테마 파일에 플러그인 코드를 넣으면 어떻게됩니까? 컨텐츠를 렌더링하는 함수를 테마의 functions.php에 넣었다고 가정하십시오! 그런 다음 테마의 어딘가에서 해당 기능을 수동으로 호출하십시오! 또는 후크 앤 필터를 사용하여 테마를 수동으로 호출하지 않고도 컨텐츠를 자동으로 변경할 수 있습니다!

워드 프레스가 코드를 어쨌든 포함하고 실행할 수있는 한! 코드가 실행되는 한 hook & filter를 사용하여 무엇이든 할 수 있습니다! 일부 간단한 플러그인은 테마 파일에 쉽게 넣을 수 있습니다! 그러나 일부 큰 플러그인은 테마 파일에 넣기가 너무 부풀어 있습니다!

그런 다음 나중에 해당 기능을 제거하기로 결정하고 테마 파일로 이동하여 코드를 제거 하시겠습니까? 바보 같지? 그래서 우리는 플러그인을 가지고 있습니다. 내용을 변경하고 데이터베이스를 변경하기 위해 Wordpress의 실행중인 프로세스를 자동으로 수정하는 방법입니다 ...

또한 일부 테마는 호출 테마 전에 실행되므로 테마 파일에 테마를 넣을 수 없습니다!

결론 : 코드를 워드 프레스에 포함시키는 한 워드 프레스가 실행되고 결과가 반환됩니다! 당신은 테마 파일에 그 코드를 넣을 수 있습니다, 워드 프레스가 당신을 위해 그것을 호출합니다! 그러나 플러그인으로 패키지하면 테마 파일을 변경하지 않고도 쉽게 설치 / 비활성 / 제거 할 수 있습니다! 또한, 당신은 또한 당신의 테마를 간단하고 깨끗하게 유지합니다! 따라서 무언가를 변경해야 할 때 가능하면 플러그인으로 넣으십시오! 테마 파일에 넣지 마십시오!


0

플러그인과 테마의 기본적인 차이점은 다음과 같습니다.

  • 플러그인은 WordPress 사이트의 wp-content / plugins 디렉토리에 있습니다. 테마는 wp-content / themes 디렉토리에 있습니다.

  • 모든 WordPress 웹 사이트에는 다양한 플러그인이 포함되어 있지만 하나의 웹 사이트에는 하나의 활성 테마 만 있습니다.

  • 웹 사이트에서 테마를 변경하는 경우 이전 테마의 기능을 사용할 수 없습니다. 새 플러그인을 설치해도 웹 사이트의 다른 활성 플러그인에는 영향을 미치지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.