찾다
백엔드 개발PHP 튜토리얼Drupal 8의 테마보기 - 사용자 정의 스타일 플러그인

Drupal 8의 테마보기 - 사용자 정의 스타일 플러그인

뷰는 Drupal 8 Core입니다. 우리 모두는 지금까지 그것을 알고 있습니다. Twig는 Drupal 8의 새로운 템플릿 엔진입니다. 이것은 또한 우리도 알고 있습니다. 그러나 우리는 두 번째를 사용하여보기를 테마하기 위해 첫 번째와 프로그래밍 방식으로 상호 작용하는 방법을 알고 있습니까? 다른 서브 시스템과 마찬가지로 View Template를 재정의하는 것 외에도 Views 플러그인 형태 (디스플레이, 스타일, 행 및 필드)에서 더 강력한 대안을 사용할 수 있습니다. 이 기사에서는 Drupal 8의보기에 맞는 사용자 정의 스타일 플러그인을 만드는 방법을 살펴 보겠습니다. Bootstrap 탭 마크 업을 목표로 사용하고보기 결과를위한 탭 출력을 구현합니다. 보기 구성에서 스타일 설정을 사용하면 탭 내비게이션 사본으로 사용될 필드를 지정할 수 있으며 나머지 필드는 해당 탭 판에 표시됩니다. 기본적으로 각보기 결과는 탭을 나타냅니다. 따라서이 예제는 몇 가지 이상의 결과가있는 뷰에 적합하지 않습니다. 주요 목표는 Drupal 8에서 자신의 뷰 스타일 플러그인을 만드는 방법을 설명하는 것입니다. 우리는 프로젝트에서 부트 스트랩을 사용하는 방법에 대한 세부 사항을 다루지 않습니다. 그러나 자산에 대한 문서 페이지 또는 익명 사용자가 페이지에 jQuery를로드하여 혜택을받을 수 있는지에 대한이 기사를 확인할 수 있습니다. 그리고 미리 작성한 코드를보고 싶다면 데모 모듈 내 에서이 저장소에서 찾을 수 있습니다. 키 테이크 아웃

Drupal 8 Core에는 이제 뷰가 ​​포함되어 있으며 Twig는 새로운 템플릿 엔진입니다. Views 플러그인 (디스플레이, 스타일, 행 및 필드)은보기 템플릿을 재정의하는 강력한 대안을 제공 하며이 안내서는 Drupal 8의 뷰를위한 사용자 정의 스타일 플러그인을 만드는 방법을 설명합니다.이를 사용하여 사용을 사용하여보기를 위해 탭 출력을 구현하는 데 사용됩니다. 부트 스트랩 탭 마크 업 사용자 정의 스타일 플러그인 생성에는 모듈의 플러그인/보기/스타일 폴더 내에 플러그인 클래스를 구축하는 것이 포함됩니다. 이 클래스는 StylePluginbase 클래스에서 확장되며 @ViewsStyle 주석이 포함되어 있으며 플러그인의 ID, 제목, 도움말 텍스트, 테마 및 디스플레이 유형을 정의합니다. 스타일 플러그인은 목록을 렌더링하는 데 도움이되며 대부분의 디스플레이 유형에서 사용할 수 있습니다. 사용자 정의 스타일 플러그인 생성의 마지막 부분에는 테마 기능을 정의하고 Twig 템플릿 파일을 작성하는 것이 포함됩니다. .Module 파일 내부에 정의 된 테마 함수는 $보기 객체와 결과 $ 행을 기본적으로 템플릿으로 전달합니다. Twig Template 파일은 플러그인의 출력이 렌더링되는 방법을 제어합니다. 사용자 정의 스타일 플러그인이 만들어지면 Drupal 관리 인터페이스를 통해 활성화하고 형식 설정에서 뷰를 선택하여 볼 수 있습니다.

스타일 플러그 핀베이스 클래스에서 확장되기 때문에 더 이상해야 할 일이 없습니다. 마크 업 출력의 경우 실행 된 뷰에서 관련 변수를 수신하는 demo_bootstrap_tabs 테마에 의존 할 수 있습니다. 원한다면 렌더 메소드를 무시하고 더 많은 변수를 추가하고 테마를 변경하거나 필요한 모든 것을 변경할 수 있습니다. 우리는 불이행에 능숙합니다. 특히 템플릿이받는 변수를 처리하기 위해 전처리기를 구현하기 때문입니다.

테마 이제 우리가 평소와 같이 Demo_bootstrap_tabs 테마를 정의 할 시간입니다 (.Module 파일 내부) :

스타일 플러그인은 $보기 객체와 그 결과 $ 행을 기본적으로 템플릿으로 전달합니다. 템플릿으로 전송되기 전에 이러한 변수를 약간 처리하는 것은 전처리 업체에 달려 있습니다.

그래서 여기서 무슨 일이 일어나고 있습니까? 먼저 필드 이름을 사용할 수있는 스타일 플러그인 옵션 (보기 구성 할 때 선택한 것)을 확인합니다. 하나가없는 경우, 우리는 반환하지만, template_preprocess_views_view_unformatted 함수가 이미 잘 작동한다는 약간의 기본 전처리를 수행하기 전에 돌아 오지 않습니다. 그래서 우리는 그것에 대해 위임합니다. 그런 다음 뷰 결과를 반복하고 탭 탐색을위한 컨텐츠 배열을 구축합니다. 이를 위해서는 기본보기 views_view_field 테마 기능을 사용하여 선택한 필드를 렌더링합니다. 마지막 으로이 배열을 템플릿으로 전달하고 형식화되지 않은 목록 스타일의 기본 전처리 서기를 실행합니다. 템플릿 Drupal 8의 테마보기 - 사용자 정의 스타일 플러그인 Drupal 8에는 더 이상 테마 기능이 없으며 이제는 Twig 템플릿으로 모든 것이 처리됩니다. 모듈의 템플릿 폴더에서 Demobootstrap-Tabs.html.twig 파일이 어떻게 보이는지 봅시다 :

보시다시피, 이것은 부트 스트랩 탭에 필요한 마크 업입니다. 물론 관련 부트 스트랩 스타일과 스크립트가 테마에 먼저로드되어 있는지 확인하지 않고는 작동하지 않습니다. 가장 먼저 렌더링하는 것은 NAV 변수에서 탭 내비게이션 항목입니다. 이 배열을 통해 루프하는 동안 첫 번째 항목을 활성으로 기본값으로 기본적으로 활성화하고 고유 ID를 사용하여 아래 탭 컨텐츠 판을 타겟팅 할 수 있습니다. 항목의 실제 값에 대해서는 전처리 서에서 만든 렌더 배열을 인쇄하고 Drupal은 렌더링을 처리합니다. 즉, 여기에서 사용하는 필드가 링크와 일반 마크 업없이 비교적 짧은 지 확인하는 것이 좋습니다. 제목은 아마도 잘 작동 할 것입니다. 그러나 이것은 그에 따라보기를 구성하는 문제입니다.

내비게이션 아래에서, 우리는 동일한 루프 색인을 사용하여 첫 번째 행을 활성 탭 창으로 기본값으로 인쇄하고 위의 내비게이션이 가시성을 제어 할 수 있도록 독특하게 식별합니다. 컨텐츠의 경우 전체 row.content 변수 (Template_preprocess_views_view_unformatted 내부에 준비됨)를 인쇄하고 모든 필드가 포함되어 있습니다. 그리고 가 안 탐색에 사용한 필드를 포함시키지 않으려면보기 구성에서 디스플레이에서 해당을 제외 할 수 있습니다. 내비게이션에 여전히 나타납니다 (우리가 명시 적으로 인쇄하기 때문에) 메인 탭 창에는 그렇지 않습니다.

결론 그리고 거기에 우리는 그것을 가지고 있습니다. Views 스타일 플러그인은 뷰 결과를 부트 스트랩 탭으로 출력합니다. 지금 필요한 것은 부트 스트랩 자산이로드되고 새로운 스타일 플러그인을 사용하도록보기를 단순히 구성하는 것입니다. 이것은 많은 결과가있는보기를위한 것이 아니라 스타일 플러그인을 만드는 방법을 보여주는 예일 뿐이라는 점을 명심하십시오. 질문, 의견 또는 제안이 있으시면 아래에 두십시오! Drupal 8

의 테마보기에 대한 질문에 자주 묻는 질문 Drupal 8에서 사용자 정의 스타일 플러그인을 만드는 방법?

Drupal 8에서 사용자 정의 스타일 플러그인 만들기에는 여러 단계가 포함됩니다. 먼저, 아직 모듈이없는 경우 새 모듈을 만들어야합니다. 그런 다음 모듈의 SRC/플러그인/뷰/스타일 디렉토리에서 사용자 정의 스타일 플러그인 용 PHP 파일을 만듭니다. 파일에는 StylePluginbase 클래스를 확장하는 클래스가 포함되어야하며 @ViewSStyle 주석이 포함되어야합니다. 주석은 플러그인의 ID, 제목 및 도움말 텍스트를 정의합니다. 클래스에서 필요한 메소드를 정의한 후 Drupal 관리자 인터페이스를 통해 새로운 스타일 플러그인을 활성화 할 수 있습니다.

사용자 정의 스타일 플러그인의 주요 구성 요소는 무엇입니까?

사용자 정의 스타일 플러그인 Drupal 8은 일반적으로 플러그인 정의, 플러그인 클래스 및 템플릿 파일의 세 가지 주요 구성 요소로 구성됩니다. 플러그인 정의는 @ViewSStyle 주석을 통해 제공되며 플러그인의 ID, 제목 및 도움말 텍스트를 포함합니다. 플러그인 클래스는 StylePluginbase 클래스를 확장하고 플러그인의 동작 방식을 제어하는 ​​메소드를 정의합니다. 템플릿 파일은 플러그인의 출력이 렌더링되는 방법을 제어하는 ​​나뭇 가지 파일입니다. Drupal 8에서 기본 뷰 템플릿을 무시하려면 어떻게해야합니까?

Drupal 8의 기본 뷰 템플릿을 무시하려면 테마의 템플릿 디렉토리에서 새 Twig 파일을 만들어야합니다. 파일의 이름은 패턴보기 -View-[View-name]-[display-id] .html.twig를 따라야합니다. 이 파일에서는보기를 렌더링하는 데 사용해야하는 HTML 마크 업 및 Twig 코드를 정의 할 수 있습니다. 파일을 작성한 후 Drupal 캐시를 지우려면 변경 사항을 확인하십시오.

Drupal 8의 뷰 템플릿에 변수를 추가하려면 Drupal 8의 뷰 템플릿에 변수를 추가 할 수 있습니다. 테마의 .theme 파일에서 전처리 함수를 통해 수행됩니다. 함수는 패턴 테마를 따라야합니다. Theme_name_preprocess_views_view_view_name__display_id는 변수 배열 인 단일 인수를 가져야합니다. 이 배열에 새 변수를 추가 할 수 있으며 Twig Template에서 사용할 수 있습니다.

Drupal 8에서보기로 사용자 정의 스타일 플러그인을 어떻게 사용할 수 있습니까? Drupal 8에서 사용자 정의 스타일 플러그인을 만들었으므로 Drupal Admin 인터페이스를 통해 볼 수 있습니다. 보기를 편집하고 형식 섹션으로 이동하십시오. 형식 설정을 클릭하고 목록에서 사용자 정의 스타일 플러그인을 선택하십시오. 보기를 저장하면 사용자 정의 스타일 플러그인을 사용하여 렌더링됩니다.

사용자 정의 스타일 플러그인의 Render () 메소드의 목적은 무엇입니까?

render () 메소드는 a. Drupal 8의 사용자 정의 스타일 플러그인은보기 렌더링을 담당합니다. 입력으로 행의 배열이 필요하고 렌더 배열을 반환합니다. 렌더 배열에는 사용할 Twig 템플릿을 지정하는 #theme 키와 템플릿에 전달 해야하는 변수가 포함되어야합니다.

Drupal 8에서 뷰 템플릿을 디버깅하려면 어떻게해야합니까?

Drupal 8의 뷰 템플릿 디버깅은 Twig Debug 기능을 사용하여 수행 할 수 있습니다. Debug 옵션을 true로 설정하여 Services.yml 파일에서 Twig 디버깅을 활성화하십시오. 그런 다음 템플릿을 사용하는 페이지를 볼 때 사용중인 템플릿 파일을 표시하는 HTML 소스 코드에 주석이 표시되고이를 재정의하는 데 사용할 수있는 템플릿 파일 이름을 제안합니다. Drupal 8의 뷰 템플릿에서 조건부 논리를 사용합니까?

Drupal 8의 뷰 템플릿에서 조건부 로직은 Twig의 IF 문을 사용하여 구현할 수 있습니다. 나뭇 가지 코드에서 IF 키워드를 사용하여 조건을 테스트 한 다음 조건이 참인지 거짓인지에 따라 다른 마크 업이나 코드를 포함시킬 수 있습니다.

Drupal에서 볼 때 호출기를 사용자 정의 할 수있는 방법 8?

Drupal 8의보기에서 호출기 사용자 정의는 Drupal Admin 인터페이스를 통해 수행 할 수 있습니다. 보기를 편집하고 호출기 섹션으로 이동하십시오. 여기에서 사용할 호출기 유형을 선택하고 페이지 당 표시 할 항목 수를 설정하고 다른 호출기 설정을 구성 할 수 있습니다. Drupal 8에서 반응 형 뷰를 만들 수 있습니까?

Drupal 8에서 반응 형 뷰를 만드는 것은 뷰 템플릿에서 반응 형 디자인 기술을 사용하는 것과 관련이 있습니다. 여기에는 CSS 미디어 쿼리를 사용하여 다양한 화면 크기에서 뷰의 레이아웃과 모양을 조정하고 픽셀과 같은 고정 장치 대신 폭과 높이에 대한 유연한 장치를 사용하는 것이 포함될 수 있습니다.

위 내용은 Drupal 8의 테마보기 - 사용자 정의 스타일 플러그인의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
11 최고의 PHP URL 쇼트너 스크립트 (무료 및 프리미엄)11 최고의 PHP URL 쇼트너 스크립트 (무료 및 프리미엄)Mar 03, 2025 am 10:49 AM

종종 키워드와 추적 매개 변수로 혼란스러워하는 긴 URL은 방문자를 방해 할 수 있습니다. URL 단축 스크립트는 솔루션을 제공하여 소셜 미디어 및 기타 플랫폼에 이상적인 간결한 링크를 만듭니다. 이 스크립트는 개별 웹 사이트 a에 유용합니다

Laravel의 플래시 세션 데이터로 작업합니다Laravel의 플래시 세션 데이터로 작업합니다Mar 12, 2025 pm 05:08 PM

Laravel은 직관적 인 플래시 방법을 사용하여 임시 세션 데이터 처리를 단순화합니다. 응용 프로그램에 간단한 메시지, 경고 또는 알림을 표시하는 데 적합합니다. 데이터는 기본적으로 후속 요청에만 지속됩니다. $ 요청-

Laravel Back End : Part 2, React가있는 React 앱 구축Laravel Back End : Part 2, React가있는 React 앱 구축Mar 04, 2025 am 09:33 AM

이것은 Laravel 백엔드가있는 React Application을 구축하는 데있어 시리즈의 두 번째이자 마지막 부분입니다. 이 시리즈의 첫 번째 부분에서는 기본 제품 목록 응용 프로그램을 위해 Laravel을 사용하여 편안한 API를 만들었습니다. 이 튜토리얼에서는 Dev가 될 것입니다

Laravel 테스트에서 단순화 된 HTTP 응답 조롱Laravel 테스트에서 단순화 된 HTTP 응답 조롱Mar 12, 2025 pm 05:09 PM

Laravel은 간결한 HTTP 응답 시뮬레이션 구문을 제공하여 HTTP 상호 작용 테스트를 단순화합니다. 이 접근법은 테스트 시뮬레이션을보다 직관적으로 만들면서 코드 중복성을 크게 줄입니다. 기본 구현은 다양한 응답 유형 단축키를 제공합니다. Illuminate \ support \ Facades \ http를 사용하십시오. http :: 가짜 ([ 'google.com'=> ​​'Hello World', 'github.com'=> ​​[ 'foo'=> 'bar'], 'forge.laravel.com'=>

PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법Mar 14, 2025 am 11:42 AM

PHP 클라이언트 URL (CURL) 확장자는 개발자를위한 강력한 도구이며 원격 서버 및 REST API와의 원활한 상호 작용을 가능하게합니다. PHP CURL은 존경받는 다중 프로모토콜 파일 전송 라이브러리 인 Libcurl을 활용하여 효율적인 execu를 용이하게합니다.

Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트Mar 13, 2025 pm 12:08 PM

고객의 가장 긴급한 문제에 실시간 인스턴트 솔루션을 제공하고 싶습니까? 라이브 채팅을 통해 고객과 실시간 대화를 나누고 문제를 즉시 해결할 수 있습니다. 그것은 당신이 당신의 관습에 더 빠른 서비스를 제공 할 수 있도록합니다.

2025 PHP 상황 조사 발표2025 PHP 상황 조사 발표Mar 03, 2025 pm 04:20 PM

2025 PHP Landscape Survey는 현재 PHP 개발 동향을 조사합니다. 개발자와 비즈니스에 대한 통찰력을 제공하는 프레임 워크 사용, 배포 방법 및 과제를 탐색합니다. 이 조사는 현대 PHP Versio의 성장을 예상합니다

라 라벨에서 알림라 라벨에서 알림Mar 04, 2025 am 09:22 AM

이 기사에서는 Laravel 웹 프레임 워크에서 알림 시스템을 탐색 할 것입니다. Laravel의 알림 시스템을 사용하면 다른 채널을 통해 사용자에게 알림을 보낼 수 있습니다. 오늘은 알림을 보낼 수있는 방법에 대해 논의합니다

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기