2013-10-06 24 views
11

bu url "id" değerini almak için bir Magento işlevi var mı: Ben "/" değeri elde etmek üzerine url ayırabilirsiniz biliyorumMagento denetleyicisinde url parametresi nasıl alınır?

http://example.com/path/action/id/123

, ama tercih ediyorum tek işlev.

Bu işe yaramazsa: Bir Magento modülü varsa ben http://example.com/path/action?id=123

+1

$ id = $ this-> getRequest() -> getParam ('id'); Bu, yalnızca Mage_Adminhtml_Controller_Action (admin) veya Mage_Core_Controller_Front_Action (ön uçta) için geçerli olan sınıftaki iştir. Bu işe yaramazsa, kontrol cihazınızın aranmadığı anlamına gelir. –

cevap

36

Magento'nın varsayılan yönlendirme algoritması üç kısım URL'ler kullanır.

http://example.com/front-name/controller-name/action-method 

Yani action Denetleyiciniz adıdır ve id eylem yöntemidir, ön adıdır

http://example.com/path/action/id/123 

kelimesini path çağırdığınızda. bu üç yöntem sonra Url'nizde ise, Ayrıca parametreleri

$this->getRequest()->getParams() 
+0

Anladım. Ancak problemin de bir yönlendirici tanımlamamış olmasından kaynaklandığını düşünüyorum. ! – jogi99

+0

<[CDATA [#^/: Ben bir yeniden yazım kullanıyordu?ajax/ürün/öğe #]]> /mymod/mycon jogi99

6

bir dizi kapmak için getParams yöntemini kullanabilir anahtar/değer çifti

http://example.com/path/action/id/foo/123 

//in a controller 
var_dump($this->getRequest()->getParam('foo')); 

kapmak için getParam kullanabilirsiniz aşağıdaki yapıya sahiptir: daha sonra http://yoursiteurl.com/index.php/admin/sales_order_invoice/save/order_id/1795/key/b62f67bcaa908cdf54f0d4260d4fa847/

kullanımı:

echo $this->getRequest()->getParam('order_id'); // output is 1795 

Tüm URL Değerini veya Parametre değerini aşağıdaki kodun altında kullanmak istiyorsanız.

var_dump($this->getRequest()->getParams()); 

Url'nizde böyle ise: http://magentoo.blogspot.com/magentooo/userId=21

o zaman bu click here hakkında daha fazla bilgi isterlerse url

echo $_GET['userId']; 

değerini almak için bunu kullanabilir.

İlgili konular