グリッドのカスタム列に Web サイトへのプレーンでシンプルなリンクを追加しようと頭を悩ませています。Inhoo ブログを使用して、列のカスタム レンダラーを追加しましたが、機能します。レンダリングを変更してタグを追加するだけで十分だと思います。しかし、私の希望は打ち砕かれ、機能していません。
これはどのように行うことができますか?簡単なはずですが、方法がわかりません。ここSOで多くの質問/回答を見つけましたが、製品、カテゴリなどへのリンクの追加について、外部Webサイトへの参照はありません。検索で間違ったキーワードを使用しているだけかもしれません.
ここに私の Grid.php の _prepareColumns() があります
protected function _prepareColumns() {
$blog = Mage::getModel('blogtest/blog');
$this->addColumn('api_blog_url', array(
'header' => $this->__('URL'),
'align' => 'center',
'index' => 'api_blog_url',
'width' => 50,
'type' => 'text',
'renderer' => 'Dts_Blogtest_Block_Adminhtml_Blog_Renderer_MyRender'
));
....
そして、これがその列のレンダリングオーバーライドです:
<?php
class Dts_Blogtest_Block_Adminhtml_Blog_Renderer_MyRender extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
{
public function render(Varien_Object $row)
{
$value = $row->getData($this->getColumn()->getIndex());
// return '<a href="http://'.$value.'>'.$value.'</a>';
return '<span style="color:red;">'.$value.'</span>';
}
}
?>