Grav-인터뷰 질문
독자 여러분,이 Grav Interview Questions 주제에 대한 인터뷰 중에 접할 수있는 질문의 성격을 알 수 있도록 특별히 고안되었습니다. Grav. 내 경험에 따르면 좋은 면접관은 인터뷰 중에 특정 질문을 할 계획이 거의 없으며 일반적으로 질문은 주제에 대한 기본 개념으로 시작하고 나중에 추가 토론과 답변을 기반으로 계속됩니다.
Grav는 콘텐츠를 저장하는 데 데이터베이스를 사용하지 않고 텍스트 파일 (.txt) 또는 마크 다운 (.md) 파일을 사용하여 콘텐츠를 저장하는 플랫 파일 기반 콘텐츠 관리 시스템입니다.
Grav는 콘텐츠를 더 쉽게 게시하고 관리 할 수있는 새로운 유형의 가장 빠른 플랫 파일 콘텐츠 관리 시스템입니다. 이를 통해 개발자는 데이터베이스가 아닌 파일 (예 : 텍스트 또는 마크 다운 파일)에 콘텐츠를 저장하여 콘텐츠를 매우 쉽게 처리 할 수 있습니다. 간단하고 관리하기 쉬우 며 빠른 사이트를 구축하려면 Grav 플랫 파일 CMS를 선택하는 것이 좋습니다. 데이터베이스 기반 CMS보다 비용이 적게 들고 데이터베이스를 처리 할 리소스가 충분하지 않은 경우 파일 처리를위한 I / O에 유용합니다.
Grav의 특징은-
빠르고 쉽고 강력한 플랫 파일 웹 플랫폼입니다.
추가 도구 나 html 지식없이 웹 사이트를 구축하는 데 사용됩니다.
텍스트 파일 또는 마크 다운 파일을 사용하여 콘텐츠를 저장합니다.
데이터베이스를 사용하지 않으므로 병목 현상의 원인을 제거합니다.
Twig에서 제공하는 PHP 기반 템플릿을 사용하여 빠르게 PHP로 직접 파싱합니다.
Grav의 장점은 다음과 같습니다.
데이터베이스 CMS를 기반으로하지 않기 때문에 설치가 매우 쉽고 파일을 서버에 업로드 할 때 바로 사용할 수 있습니다.
Markdown 텍스트 파일을 사용하여 작업을 쉽게합니다. 이를 사용하면 콘텐츠가 HTML로 동적으로 변환되어 브라우저에 표시됩니다.
보안상의 경우 Grav에는 관리 영역과 데이터베이스가 없습니다. 따라서 중요한 데이터에 액세스하기 위해 계정이나 데이터베이스를 해킹 할 가능성이 없습니다.
백업 할 데이터베이스가 없기 때문에 모든 파일을 쉽게 백업하여 웹 사이트의 백업 복사본을 유지할 수 있습니다.
배우는 데 더 많은 시간이 필요하지 않은 소프트웨어입니다.
Grav의 단점은 다음과 같습니다.
파일에 대한 데이터베이스가 없기 때문에 권한이없는 사용자가 파일에서 직접 콘텐츠에 액세스 할 수 있습니다.
Grav CMS를 사용하여 복잡한 웹 사이트를 구축하는 것은 어렵습니다.
PHP 5.4 이상
페이지는 사이트의 구성 요소로 정의 할 수 있습니다. 페이지는 콘텐츠와 탐색을 결합하여 경험이없는 사용자도 쉽게 사용할 수 있습니다.
# 또는 Markdown의 해시 구문은 HTML에서 <h1> 헤더로 변환 될 제목을 나타냅니다.
** 마커는 굵은 텍스트 또는 HTML의 <b>를 나타냅니다.
Grav Pages는 3 가지 유형의 페이지를 지원합니다.
표준 페이지.
목록 페이지.
모듈 식 페이지.
Markdown 구문은 읽기 쉽고 쓰기 쉬운 형식으로 일반 텍스트를 작성하는 것으로 정의되며 나중에 HTML 코드로 변환됩니다. 마크 다운 구문에는 (*) 또는 ( ')와 같은 기호가 사용됩니다. 이 기호는 굵게, 헤더를 만들고 콘텐츠를 구성하는 데 사용됩니다.
Markdown 구문 사용의 이점은 다음과 같습니다.
배우기 쉽고 최소한의 문자가 있습니다.
마크 다운을 사용하면 오류가 발생할 가능성이 거의 없습니다.
유효한 XHTML 출력.
콘텐츠와 시각적 표시는 웹 사이트 모양에 영향을주지 않도록 별도로 유지됩니다.
텍스트 편집기 또는 마크 다운 애플리케이션을 사용할 수 있습니다.
강조는 굵게, 기울임 꼴 또는 취소 선에 사용되는 마크 다운 구문의 쓰기 형식입니다.
Bold − 텍스트의 양쪽에 두 개의 (**) 기호를 사용하여 텍스트를 굵게 만들 수 있습니다.
Italics − 텍스트를 기울임 꼴로 표시하려면 단어 양쪽에 밑줄 (_) 기호를 사용합니다.
Strikethrough − 단어의 양쪽에 두 개의 물결표 (~~)를 사용하여 단어를 취소합니다.
콘텐츠에 사용되는 4 가지 유형의 링크가 있습니다.
슬러그 상대
디렉토리 상대
Absolute
Remote
원격 링크를 사용하면 URL을 통해 파일이나 문서에 직접 연결할 수 있습니다. 자신의 사이트 콘텐츠를 포함 할 필요가 없습니다.
다음은 Grav에서 지원하는 미디어 파일 유형입니다-
Image − jpg, jpeg, png.
Animated Image − gif.
Vectorized Image − svg.
Video − mp4, mov, m4v, swf.
Data/information − txt, doc, pdf, html, zip, gz.
이미지에 빈티지 느낌을주기 위해 세피아 필터가 추가되었습니다.
모듈 식 페이지를 사용하면 하위 페이지에서 단일 페이지를 만들 수 있습니다. URL을 통해 직접 도달 할 수 없기 때문에 라우팅 불가능으로 설정하는 데 사용됩니다. 폴더 이름 앞에 _ (밑줄)로 식별됩니다. 단일 페이지를 얻기 위해 각각 위에 하나씩 표시되는 페이지 모음입니다.
필터는 원하는 방식으로 데이터를 형식화하고 출력하는 데 사용됩니다. 콘텐츠를 생성하는 데 함수가 사용됩니다. Twig 템플릿은 값으로 대체 된 표현식과 변수를 포함하는 텍스트 파일입니다.
Twig는 세 가지 유형의 태그를 사용합니다.
출력 태그
액션 태그
댓글 태그
CSS에 대한 자산 배열을 전달하는 옵션이 거의 없습니다.
priority − 정수 값을 취하며 기본값은 100입니다.
pipeline− 파이프 라인에 포함되지 않은 자산은 거짓 값으로 설정됩니다. 그리고 기본값은 true로 설정됩니다.
Grav를 사용하면 이름이있는 CSS 및 JS 자산 모음을 등록 할 수 있으므로 등록 된 이름을 사용하여 Asset Manager에 자산을 추가 할 수 있습니다. 이는 Grav에서 이름이 지정된 자산이라는 기능을 사용하여 수행 할 수 있습니다. 이러한 사용자 지정 컬렉션은 system.yaml에 정의되어 있으므로 모든 테마 또는 플러그인에서 사용할 수 있습니다.
그룹화 된 자산을 사용하면 자산을 추가하는 동안 옵션 그룹으로 구성된 옵션 배열을 전달할 수 있습니다. 이 기능은 페이지의 특정 부분에 JS 파일이나 인라인 JS가 필요할 때 매우 유용합니다.
scss --watch scss:css-compiled
테마 상속은 테마를 수정하거나 사용자 지정하는 가장 좋은 방법이며 몇 가지 설정만으로 수행 할 수 있습니다. 기본 개념은 테마가 상속되는 기본 테마로 정의되고 일부 비트 만 수정할 수 있으며 나머지는 기본 테마에서 처리한다는 것입니다. 테마 상속 사용의 장점은 기본 테마가 업데이트 될 때마다 사용자 지정된 상속 된 테마가 직접 영향을받지 않는다는 것입니다.
랜덤 플러그인의 중요한 점은-
이 플러그인을 사용하여 URI를 다음과 같이 사용하여 임의 페이지를 표시 할 수 있습니다. /random.
페이지에 지정된 분류를 사용하려면 필터를 만듭니다. 다음과 같이 만들 수 있습니다.category : blog.
필터 옵션을 이용하여 임의의 페이지를 표시 할 수 있으며 Grav에게 임의의 페이지에 표시 할 때 동일한 내용을 사용하도록 알려줍니다.
이벤트 후크는 처음부터 끝까지 Grav와 직접적인 관계가 있습니다. 후크가 호출되는 순서와 이러한 호출시 사용할 수있는 항목을 알고 있어야합니다.
Problem 플러그인은 grav가 치명적인 오류를 전달하는 이유에 대한 전체 설명 목록을 표시하는 데이를 사용합니다.
이 과정에서 Twig 방법에 따라 순서대로 전체 사이트 템플릿을 볼 수 있습니다. 또한이 프로세스 중에 Twig에 모든 변수를 추가 할 수 있습니다.
Grav Administration Panel 플러그인의 기능은 다음과 같습니다.
플러그인 관리자 목록에있는 플러그인을 활성화 또는 비활성화합니다.
암호를 잊어 버리는 기능으로 구성됩니다.
미디어 파일은 드래그 앤 드롭 방식으로 업로드 할 수 있습니다.
일반 및 전문가 모드에서 yaml 또는 양식을 통해 편집 할 수 있습니다.
사용자 로그인시 자동 비밀번호 암호화 기능이 제공됩니다.
Blueprint는 리소스 (정보 출처)에 대한 메타 데이터 정보입니다. 두 가지 목적으로 사용됩니다.
첫 번째는 리소스 ID 자체입니다.
두 번째는 양식에 관한 것입니다.
캐싱에는 5 가지 유형이 있습니다.
PHP로 YAML 구성 캐싱.
페이지 개체에 대한 Core Grav 캐싱.
템플릿 파일을 PHP 클래스로 캐싱합니다.
미디어 리소스에 대한 이미지 캐싱.
파이프 라이닝을 통한 CSS 및 jQuery의 자산 캐싱.
CLI는 bin / grav에 저장된 명령 줄 인터페이스를 나타냅니다. 캐시 지우기, 백업 복사본 생성 등과 같은 일부 작업을 수행합니다.
$ bin/grav composer
GPM은 Grav Package ManagerGrav 저장소에서 사용 가능한 플러그인을 설치, 업데이트, 제거 및 나열하는 데 사용됩니다. GPM은 터미널 또는 cmd와 같은 명령 줄 인터페이스를 사용하여 명령을 실행합니다.
$ bin/gpm self-upgrade
Grav 스켈레톤은 Grav Core, 플러그인, 페이지, 테마가 모두 포함 된 샘플 사이트를 설명합니다. Grav의 초기 아이디어는 사이트를 매우 쉽게 구축하는 것이 었습니다. 사이트 개발에 필요한 것들은 모두 사용자 폴더에 있습니다. Grav의 골격은 플러그인, 테마 등과 같은 다양한 종속성과 함께 제공되며 간단한 예제를 실행하기 위해 압축을 풀 수있는 패키지에 저장합니다.
Grav 라이프 사이클의 주요 4 단계는 다음과 같습니다.
PHP 버전
로더 클래스가 초기화 됨
Grav 인스턴스 얻기
Grav 프로세스 호출
YAML은 사람이 읽을 수있는 콘텐츠를 포함하고 구성 파일, 청사진 (리소스에 대한 메타 데이터 정보) 및 페이지 설정에 자주 사용되는 YAML Ai n't Markup Language의 약자입니다.
YAML은 다음과 같은 프로그래밍 언어와 함께 사용할 수있는 몇 가지 기본 데이터 유형을 지원합니다.
Scalars − 문자열 또는 숫자.
Sequences − 배열 또는 목록.
Mappings − 해시 또는 사전.
Grav는 다음 호스팅 서비스를 지원합니다-
Rochen 웹 호스팅
WireNine
Crucial 웹 호스팅
Arvixe
SiteGround
Dreamhost
서버 오류를 일으킬 수있는 몇 가지 이유는 다음과 같습니다.
오래된 구성.
파일 권한이 잘못되었습니다.
형식이 잘못된 구성 파일입니다.
Grav에 알려지지 않은 파일 시스템의 변경.
bin/grav clear-cache
반응 형 이미지의 몇 가지 유형은 다음과 같습니다.
고밀도 디스플레이
미디어 쿼리가있는 크기
파일 이름에 접미사를 추가하고 페이지에 고밀도 이미지를 추가 할 수 있습니다.
특수 양식 필드는 다음과 같습니다.
Markdown
Frontmatter
Selectize
Taxonomy
Toggle
페이지를 원시 형식으로 표시하는 데 사용됩니다.
문제 또는 버그를보고 할 수있는 URL을 지정합니다.
이 이벤트는 양식 처리 및 관리에 도움이됩니다.
원본 비율에 관계없이 필요에 따라 이미지를 늘립니다.