템플릿 개발 / 조정을위한 워크 플로우


16

일반적으로 기존의 무료 템플릿 만 조정하고 색상과 글꼴을 변경합니다. 문제는 이미 Joomla 페이지가 온라인 상태 일 때 템플릿 CSS를 변경하는 가장 쉬운 방법은 무엇입니까?

현재 Chrome 개발 도구 를 사용하여 미리보기를위한 특정 스타일을 찾고 조정하고 있습니다. 마음에 들면 관리 영역의 온라인 편집기에서 템플릿의 CSS 파일을 직접 조정합니다.

처음 시작했을 때 콘텐츠가 없었기 때문에 Joomla와 함께 로컬 웹 서버를 사용하여 CSS와 PHP 코드를 작성하는 데 적절한 IDE를 사용할 수 있다는 이점이있었습니다. 콘텐츠가 이미 있으므로 변경 한 내용이 콘텐츠에 어떤 영향을 미치는지 확인하고 싶습니다.

이것이 기본적인 질문이라는 것을 알고 있지만 기존 사이트의 디자인을 조정하려는 사람이 선호하는 워크 플로우가 있습니까?

답변:


10

Akeeba를 사용하여 라이브 사이트를 복제하고 로컬로 설치 한 다음 필요에 따라 조정하십시오. SSH / FTP를 마치면 변경된 파일을 다시 라이브 사이트로 보냅니다.

라이브 사이트에서“조정”하는 것이 부적절한 이유에는 여러 가지가 있습니다…


데이터베이스를 수정 한 변경 (예 : 모듈의 순서를 변경 한 경우)은 작동하지 않습니다.
— Flimm

@Flimm 문제는 DB에서 유지되는 변경 사항을 동기화 하지 않고 CSS를 변경하는 것에 관한 것 입니다.
— Seth Warburton

10

초점이 사용의 용이성, 자동화 또는 비용에 따라 여기에 몇 가지 옵션이 있습니다.

  • configuration.php호스트가 원격 액세스를 지원하는 경우 로컬 설치로 이전에 수행 한 작업을 정확히 수행하지만 일단 설치 한 후에 로컬 원격 MySQL 데이터베이스를 사용하도록 로컬 Joomla 설치를 변경하십시오 . 조심하십시오-DB 변경 사항이 라이브로 롤오버됩니다 ...

  • extplorer 와 같은 구성 요소를 사용 하고 브라우저에서 직접 템플릿 파일을 편집하고 다른 탭을 열어 사이트를 표시하고 여전히 Chrome의 개발 도구를 사용합니다. extplorer는 코드 색상을 특징으로하며 작은 변경을 신속하게 수행하는 데 좋습니다.

  • 버전 제어 시스템을 사용하여 변경 사항을 푸시하십시오. 예를 들어, 선택한 IDE를 사용하여 로컬 Joomla 설치에서 템플리트를 저장소의 템플리트로 개발하십시오. 완료되면 라이브 사이트에 변경 사항을 적용하십시오. 커미트 후 후크를 사용하여 해당 변경 사항을 작업 버전으로 체크 아웃하십시오. 설정하기가 더 복잡하지만 실수를하면 항상 이전 템플릿 버전으로 롤백 할 수 있습니다. 원격 MySQL에 추가하여 로컬 및 라이브에서 데이터 일관성을 보장하십시오.

  • 적절한 템플릿 / 템플릿 프레임 워크를 지불하십시오 . 회사에서는 YooTheme 템플릿 을 사용 합니다. 이 템플릿 프레임 워크에는 'Customizr'이라는 기능이 있습니다.이 기능은 기본적으로 왼쪽에 수백 개의 CSS 변수 (잘, LESS 변수)가 있고 오른쪽에 라이브 미리보기가있는 2 개의 창입니다. 이러한 변수는 거터 패딩에서 메뉴 항목 텍스트 그림자 및 그 사이의 모든 요소에 이르기까지 템플릿의 모든 요소를 ​​충분히 제어합니다. 미리보기에서 변경 사항이 즉시 적용되며 다양한 '스타일'을 정의하여 다양한 변수 구성으로 재생할 수 있습니다. 이 모든 것이 다른 템플릿 프레임 워크가 매우 유사한 기능을 가지고 있다고 확신합니다.

NB : 나는 사용자 이외의 extplorer 나 YooTheme과의 관계가 없습니다.


6

CSS 변경 사항 만 있다면 Chrome 개발 도구에서 미리보기를 계속하고 Cloud9 또는 ShiftEdit 와 같은 온라인 개발 환경을 사용하여 FTP를 통해 서버에 직접 연결하고 적절한 IDE를 사용하여 라이브 사이트를 조정할 수 있습니다 로컬에서 호스팅했을 때와 비슷합니다.

그러나 사이트를 손상시킬 수있는 더 큰 변경에는이 방법을 권장하지 않습니다 (몇 년 전에 어려운 방법을 배웠습니다). 이를 위해 로컬 서버 (또는 koding.com 의 무료 VM )를 설정 하고 Akeeba 를 사용하여 사이트를 복제하고 Git *를 사용하여 테스트 를 마친 라이브 사이트에 변경 사항을 적용하는 것이 좋습니다.

* GitHub 에서 코드를 공개하지 않으려면 BitBucket을 사용하는 것이 좋습니다 .


5

방법 1

내가 사용한 한 가지 방법은 내 자신의 CSS 파일을 템플릿 index.php 파일에 추가하는 것입니다. 사용자 인 경우에만 추가 할 수 있습니다.

이것을 확장하는 방법은 사용자 인 경우 CSS 파일을 추가하는 간단한 플러그인을 작성하는 것입니다. 다음 업데이트로 대체 될 수있는 템플릿에서 직접 변경하지 않도록 기본 관리 템플릿을 변경하는 데 사용했습니다.

뭔가 ...

class plgSystemBB extends JPlugin {
    public function onBeforeCompileHead() {

    if (JFactory::getUser()->username == 'my.login.name.goes.here')
    {
        JFactory::getDocument()->addStylesheet("/templates/protostar/css/test.css");
    }

    if(!JFactory::getApplication()->isAdmin()){
        return;
    }   

    JFactory::getDocument()->addStylesheet("/templates/isis/css/admin-extra.css");
}

방법 2

템플릿 변경 사항을 미리 보려면 템플릿을 복제하고 복제본을 변경하면됩니다. 이러한 변경 사항을 보려면 "? template = test"를 URL에 추가하십시오.이 경우 템플리트가 대체됩니다. "test"를 복제에 사용하기로 결정한 이름으로 바꾸십시오.

스타일 만이 아니라 전체 템플릿을 복제해야합니다. 관리 GUI에서 스타일과 템플릿을 모두 복제 할 수 있습니다.

URL의 스타일을 재정의하는 것이 가능하지 않다고 생각합니다. [PW : J3에서는 URL의 스타일을 재정의 할 수 있다는 것을 알았습니다. 방법 3을 참조하십시오.]


방법 3

방법 2와 유사하지만 스타일이 있습니다. "테스트"스타일을 사용하고 테스트 스타일 시트를 포함하도록 기본 템플리트를 수정하십시오. URL에서 스타일을 재정의하려면? templateStyle =을 추가합니다. 여기서 템플릿 식별자 (예 : 숫자)입니다.


@ 피터 나는 플러그인의 생각처럼, 난 여전히 당신이 원격으로 코드를해야한다고 생각하고 체크인 소스 제어하지만, 경우의 테스트 팀이 잘 될 수있는 몇 가지 테스트를 시도하는 공유
— tristanbailey

1
@tristanbailey 감사합니다. 예, 원격 코딩은 훨씬 깨끗하지만 기존 사이트에서 온라인으로이 작업을 수행하는 것에 대한 의문이 제기되었습니다.
— 피터 와이즈만
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.