私はあなたがそれをすることができないと確信しています。XML ノードを にArray
解釈しているため、 を取得しています。このアクションは代わりに関数を処理し、ヘルパーはまったく処理しません (決して)。<url helper="core/url/getCurrentUrl"/>
Array
addLinkRel
<url />
これを行うより良い (そしてもっと楽しい) 方法は、レンダリングする新しいブロック タイプを定義できるモジュールを作成することです<link rel='canonical' href='{$currentUrl}' />
。
これが私がそれを行う方法であり、約4つのファイルが必要です:
アプリ/コード/コミュニティ/Electricjesus/Canonical/etc/config.xml
<?xml version="1.0"?>
<config>
<modules>
<Electricjesus_Canonical>
<version>0.1.0</version>
</Electricjesus_Canonical>
</modules>
<global>
<blocks>
<canonical>
<class>Electricjesus_Canonical_Block</class>
</canonical>
</blocks>
</global>
</config>
アプリ/コード/コミュニティ/Electricjesus/Canonical/Block/Link.php
<?php
class Electricjesus_Canonical_Block_Link extends Mage_Core_Block_Template {
}
アプリ/デザイン/フロントエンド/ベース/デフォルト/テンプレート/正規/link.phtml
<?php $currentUrl = Mage::helper('core/url')->getCurrentUrl(); ?>
<link rel="canonical" href="<?php echo $currentUrl ?>" />
app/etc/modules/Electricjesus_Canonical.xml
<?xml version="1.0"?>
<config>
<modules>
<Electricjesus_Canonical>
<active>true</active>
<codePool>community</codePool>
<version>0.1.0</version>
</Electricjesus_Canonical>
</modules>
</config>
したがって、ここでそれを行う方法は次のとおりです(あなたのlocal.xml
):
<reference name="head">
<block type="canonical/link" name="canonical_link" template="canonical/link.phtml" />
</reference>
したがって、これは基本的に、私が数分で作り上げた大まかなドラフトにすぎません。別の種類の問題 (ただし、同様のスコープ) に対して同じソリューションを使用しました。ですから、必要に応じてスピンしてください。