2012-04-19 4 views
4

관리자가 Magento의 cms 페이지에 이미지를 추가 한 다음 이미지의 크기를 조정할 때 : 그러면 프런트 엔드의 이미지는 원래 크기로 유지되지만 크기가 조정됩니다.cms Magento로 이미지 크기를 조정하는 방법

페이지를 저장할 때 더 작은 크기로 이미지를 저장하는 방법이 있습니까?

답변

3

기본 마젠타에서 발생할 수있는 방법은 없습니다. 그러나 cms 페이지에 저장된 데이터를 관찰하는 모듈을 함께 사용할 수 있습니다. 매개 변수

cms_page_prepare_save 

:

/app/etc/Electricjesus_Cms.xml :

에만 3 개의 파일로 시작하는 모듈을 만들 수 있습니다

array(’page’ ⇒ $model, ‘request’ ⇒ $this→getRequest()) 

예를 들어이 이벤트를 가지고

<?xml version="1.0" encoding="UTF-8"?> 
<config> 
    <modules> 
     <Electricjesus_Cms> 
      <active>true</active> 
      <codePool>local</codePool> 
     </Electricjesus_Cms> 
    </modules> 
</config> 

/app/code/local/electricjesus/cms/etc/config.xml :

<?xml version="1.0"?> 
<config> 
    <modules> 
     <Electricjesus_Cms> 
      <version>0.1.0</version> 
     </Electricjesus_Cms> 
    </modules> 
    <global> 
     <models> 
      <cms> 
       <class>Electricjesus_Cms_Model</class> 
      </cms> 
     </models> 
     <events> 
      <cms_page_prepare_save> 
       <observers> 
        <prepareSave> 
         <class>cms/observer</class> 
         <method>prepareSave</method> 
        </prepareSave> 
       </observers> 
      </cms_page_prepare_save> 
     </events>   
    </global> 
</config> 

/app/code/local/Electricjesus/Cms/Model/Observer.php : 위의 답변이 완료되지 않은 상태

<?php 
class Electricjesus_Cms_Model_Observer { 
    function prepareSave ($observer) { 
     $request = $observer->getRequest(); 
     $params = $request->getParams(); 
     // scan the request and params for stuff related with the images.. 
     // find out scaling and pass into a good resizer like TimThumb or 
     // Zend_Filter_ImageSize etc. 
    } 
} 

이 시작하기 좋은 장소입니다. 내가 더 많은 시간을 할 때마다 나는 완전한 해결책을 개발하려고 노력할 것이다.

대체 방법 : 제가 위에서 TimThumb 언급

때문에, 당신은 또한 당신의 젠토 루트에서 그를 배포하고 HTML 편집기 대신 일반적인 WYSIWYG 에디터를 통해 이미지를 추가 할 수 있습니다. 당신의 웹 사이트의 루트 디렉토리에 thumb.php 설치하는 경우, 당신과 같이 사용할 수 있습니다 :

<img src="/thumb.php?src=images/image.jpg&w=100&h=50" alt="Hey" /> 

행운을 빕니다!

+0

고맙습니다. 나는 이것을 조사 할 것이다. – sneeky

관련 문제