templates marketplace - Magento에서 피부 경로를 찾으십니까?




(6)

phtml에서 사용하려면 다음을 적용하십시오.

echo $this->getSkinUrl('your_image_folder_under_skin/image_name.png');

CMS 페이지에서 스킨 경로를 사용하려면 다음을 수행하십시오.

<img style="width: 715px; height: 266px;" src="{{skin url=images/banner1.jpg}}" alt="title" />

이 파트 ====> {{skin url = images / banner1.jpg}}

이게 당신을 도울 수 있기를 바랍니다.

myfunc.php에 저장 한 Magento 저장소에 대한 몇 가지 사용자 지정 PHP 함수가 있으며 몇 가지 다른 .phtml 파일에서 필요로합니다. 어떻게해야합니까?

절대 경로를 사용할 수는 있지만 다른 서버로 마이그레이션 할 때 더럽고 문제가 발생할 수 있습니다.

들어 지금은 붙어있어 :

require('/home/myuser/public_html/app/design/frontend/default/mytheme/myfunc.php');

어떻게하면 스킨 경로 (/ home / myuser / public_html / app / design / frontend / default / mytheme /)를 프로그래밍 방식으로 참조 할 수 있습니까?


Magento 테마가 실제 URL을 처리하는 방식은 다음과 같습니다 (view partials - phtml 파일).

echo $this->getSkinUrl('images/logo.png');

이미지 디렉토리에 디스크의 실제 기본 경로가 필요한 경우 다음을 사용하십시오.

echo Mage::getBaseDir('skin');

이 훌륭한 블로그 게시물에서 몇 가지 기본 디렉토리 유형을 사용할 수 있습니다.

http://alanstorm.com/magento_base_directories


우선 디자인 폴더에 함수가있는 PHP 파일을 가지고있는 것은 권장하지 않습니다. 새 모듈을 만들거나 확장 (코어에서 도우미로 헬퍼 복사 및 해당 클래스에 함수 추가)하고 app / code / core에서 파일을 변경하지 않아야합니다.

질문에 대답하려면 다음을 사용할 수 있습니다.

require(Mage::getBaseDir('design').'/frontend/default/mytheme/myfunc.php');

가장 좋은 방법은 /app/code/local/Mage/Core/Helper/Extra.php에 PHP 파일을 만드는 것입니다.

<?php
class Mage_Core_Helper_Extra extends Mage_Core_Helper_Abstract
{

    public function getSomething()
    {
        return 'Someting';
    }

}

phtml 파일에서 사용하려면 다음을 사용하십시오.

$this->helper('core/extra')->getSomething();

또는 모든 장소에서 :

Mage::helper('core/extra')->getSomething();

그 첫 번째 메모

Mage::getBaseDir('skin')

Magento 설치 ( / your / magento / dir / skin )의 스킨 디렉토리 경로 반환 합니다 .

다음을 사용하여 현재 사용중인 스킨 디렉토리에 대한 절대 경로에 액세스 할 수 있습니다.

Mage::getDesign()->getSkinBaseDir()

이 메서드는 연관 배열을 선택적 매개 변수로 사용하여 결과를 수정합니다.

다음 키가 인식됩니다.

  • _area 프론트 엔드 (기본값) 또는 adminhtml
  • 패키지를 _package 하십시오.
  • _ 주제를 떠올리 십시오.
  • _relative 가 Mage :: getBaseDir ( 'skin')을 기준으로 (키로) 설정되면 경로가 반환됩니다.

그래서 귀하의 경우에 정답은 다음과 같습니다.

require(Mage::getDesign()->getSkinBaseDir().DS.'myfunc.php');

해당 파일을 얻으려면 아래 코드를 사용하십시오.

include(Mage::getBaseDir('skin').'myfunc.php');

그러나 올바른 방법은 아닙니다. 사용자 정의 함수를 추가하려면 아래 파일을 사용하십시오.

app/code/core/Mage/core/functions.php

친절하게 PHP 디렉토리에서 PHP 함수를 사용하지 마십시오.


Clearsilver 는 여러 다른 언어로 작동하며 데이터와 프레젠테이션을 엄격하게 분리하기 때문에 좋아합니다. 이전에 Cheetah를 사용했고 꽤 좋았지 만 제한된 형태의 Python처럼 보일 때가 좋지 않았습니다.





templates magento