나는 완전히 이해할 수 있지만, 불행하게도 달성 ...하지만 당신이 쉽게 할 수 그렇게 쉬운 일이 아닙니다있을 것입니다 :
당신의 PHTML 파일에
2, 당신이 호출 할 수 있습니다 1 단계 작업을하려면 2 단계는 약간 문제가 될 수 있습니다. Magento는 WP와 반대쪽에서 Frontend 및 Admin 부분에 대해 별도의 세션을 가지고 있기 때문에 약간 문제가됩니다. 따라서 프론트 엔드에서 로그인 된 사이트 관리자를 식별 할 수 없기 때문에 링크를 보여줍니다. 하지만 순서대로 문제를 해결해 봅시다 :
1 단계를 수행하려면 2 개의 파일을 수정해야합니다. 코어의 파일을 수정하지 말고 대신 로컬 폴더로 이동하여 디렉토리 구조를 유지하는 것이 더 좋습니다. 먼저 변경 : Mage_Adminhtml_Block_Catalog_Product_Edit::_prepareLayout
(파일 app \ code \ core \ Mage \ Adminhtml \ Block \ Catalog \ Product \ Edit.php). 그냥 반환 문 앞에 다음 코드를 추가 return parent::_prepareLayout();
: 템플릿 \ 카탈로그 \ 제품 \의 edit.phtml 템플릿 \
$this->setChild('view_product',
$this->getLayout()->createBlock('adminhtml/widget_button')
->setData(array(
'label' => Mage::helper('catalog')->__('View Product'),
'onclick' => "popWin('".$this->getProduct()->getProductUrl(false)."', 'popwin','width=800,height=600,resizable=yes,scrollbars=yes')",
'class' => 'save'
))
);
열기 응용 프로그램의 \ 디자인 \ adminhtml \ 기본 \ 기본을하고 <?php if($this->getProductId()): ?>
케이스 내부에 다음 코드 <?php echo $this->getChildHtml('view_product')?>
를 추가합니다. 그래서 다음과 같이 표시됩니다
<?php if($this->getProductId()): ?>
<?php echo $this->getDeleteButtonHtml() ?>
<?php if($this->getProductSetId() && $this->getIsConfigured()): ?>
<?php echo $this->getDuplicateButtonHtml() ?>
<?php endif; ?>
<?php echo $this->getChildHtml('view_product')?>
<?php endif; ?>
1 단계가 완료되면, 지금 당신은 당신의 제품 관리 화면에 주문보기 버튼을 볼 수 있어야합니다.
이제 Magento는 Frontend에서 관리자를 볼 수 없으므로이를 처리 할 Frontend Administrator 고객 그룹을 만들 수 있습니다. "고객/고객 그룹"노드에서 고객 그룹을 생성 할 수 있습니다. 그런 다음 카탈로그/제품에/파일의 맨 아래에 다음 코드를 추가 view.phtml :
<?php if (Mage::helper('customer')->isLoggedIn()):?>
<?php /** @var $customer Mage_Customer_Model_Customer */?>
<?php $customer = Mage::helper('customer')->getCustomer();?>
<?php if ($customer->getGroupId() == /your_new_group_id/):?>
<a href="<?php echo Mage::getSingleton('adminhtml/url')->getUrl('adminhtml/catalog_product/edit', array('id' => $this->getProduct()->getId()))?>" target="_blank">
<?php echo $this->__('Edit Product')?></a>
<?php endif;?>
<?php endif;?>
그냥/your_new_group_id/실제 관리자와 고객 그룹 ID를 변경하는 것을 잊지 마세요.또한 - 관리자 패널에 로그인하지 않은 경우 세션이 연결되지 않기 전에 언급 했으므로 로그인하라는 메시지가 표시됩니다.
행운을 빈다!
감사합니다. 나는 제품 편집기 페이지에서 의미하지는 않았지만 제품 목록 페이지 (카탈로그 -> 제품 관리)에서 의미를 가졌습니다 .... "편집"링크 바로 뒤에있는 각 행 끝에 "보기"링크를 어떻게 추가 할 수 있습니까? "링크? –