2013-04-22 15 views
9

Podczas przeglądania zamówienia moi pracownicy chcieliby móc kliknąć nazwę produktu lub SKU, a także link do strony edycji Informacje o produkcie.Magento 1.7 - Jak utworzyć link do strony edycji administratora produktu na stronie widoku zamówienia?

Wymyśliłem, jak zmienić nazwę produktu w link, z tym linkiem jest adres URL strony produktu na interfejsie, ale nie chcę, aby link był na interfejsie, potrzebuję go do połączenia do strony edycji produktów w panelu administratora.

Jest to kod użyłem w:

app/design/adminhtml/default/default/template/sprzedaży/zamówienia/view/szt/renderer/default.phtml

<div class="item-text"> 
<?php $_pullProduct = Mage::getModel('catalog/product')->loadByAttribute('sku', $_item->getData('sku')); ?> 
<a target="_blank" rel="external" href="<?php echo Mage::getUrl() . $_pullProduct->getData('url_path'); ?>"><?php echo $this->getColumnHtml($_item, 'name') ?></a> 
</div> 

... a to właściwie łączy mnie ze stroną frontendu produktu. Jak już powiedziałem, nie tego chcę, więc jak mam to zrobić jako link do strony edycji panelu administracyjnego produktu?

próbowałem na zmianę powyższy kod w tym samym pliku na:

<div class="item-text"> 
<?php $_pullProduct = Mage::getModel('catalog/product')->loadByAttribute('sku', $_item->getData('sku')); ?> 
<a target="_blank" rel="external" href="<?php echo Mage::getSingleton('adminhtml/url')->getUrl('adminhtml/catalog_product/edit', array('id' => $this->getProduct()->getId()))?>"><?php echo $this->getColumnHtml($_item, 'name') ?></a> 
</div> 

... jednak, że nie jest w porządku, a porządek Zobacz podziały stron, gdy próbuję tego. Czuję, że zbliżam się, czy ktoś z was może mi pomóc we właściwym kierunku?

Odpowiedz

14

Ok, więc to poniższy kod, używane w app/design/adminhtml/default/default/template/sprzedaży/zamówienia/view/szt/renderer/default.phtml

działa idealnie! Ta odpowiedź została mi przekazana przez Marius w witrynie Magento Stack Exchange. Dzięki Marius!

<div class="item-text"> 
<?php $_pullProduct = Mage::getModel('catalog/product')->loadByAttribute('sku', $_item->getData('sku')); ?> 
<a target="_blank" rel="external" href="<?php echo Mage::helper('adminhtml')->getUrl('adminhtml/catalog_product/edit', array('id' => $_pullProduct->getId()))?>"><?php echo $this->getColumnHtml($_item, 'name') ?></a> 
</div> 
1

Nie jestem pewien, czy to pomaga, ale mam nadzieję, że to doprowadzi cię na właściwą drogę. Miałem podobne problemy w odniesieniu do linków administracyjnych w Maga 1.7.0.2

Próbowałem przekierować użytkownika na stronę z listą produktów katalogu, jeśli użytkownik próbuje edytować produkt, który został oznaczony jako nie jego (użyłem atrybut przechowujący użytkownika administratora produktu) za pomocą funkcji obserwatora.

Użyłem poniższy kod:

Mage::app()->getResponse()->setRedirect(Mage::getUrl('adminhtml/catalog_product/index'))->sendResponse(); 

To działa. Poprzednio wszystkie przekierowania prowadziłyby tylko do frontendu. Będziesz musiał dowiedzieć się, jak umieścić ten kod w plikach .phtml. Moją sugestią byłoby rozszerzenie bloku rdzenia dla tego szablonu.

Powiązane problemy