发送朋友表单重定向到404页面。我已经将"发送朋友"从其个人页面移到了产品详细信息页面。我在"catalog.xml"中对页面布局进行了更改。
这是我在"catalog.xml:"中写的
<block type="catalog/product_view_tabs" name="product.info.tabs" as="info_tabs" template="catalog/product/view/tabs.phtml" >
<action method="addTab" translate="title" module="catalog"><alias>description</alias><title>Product Description</title><block>catalog/product_view_description</block><template>catalog/product/view/description.phtml</template></action>
<action method="addTab" translate="title" module="catalog"><alias>upsell_products</alias><title>We Also Recommend</title><block>catalog/product_list_upsell</block><template>catalog/product/list/upsell.phtml</template></action>
<action method="addTab" translate="title" module="catalog"><alias>additional</alias><title>Additional Information</title><block>catalog/product_view_attributes</block><template>catalog/product/view/attributes.phtml</template></action>
<action method="addTab" translate="title">
<alias>send-friend</alias>
<title>Send Friends</title>
<block>sendfriend/send</block>
<template>sendfriend/send.phtml</template>
</action>
<!-- <action method="addTab" translate="title" module="catalog"><alias>reviewsthis</alias><title>Review This Product</title><block>review/form</block><template>review/form.phtml</template></action> -->
<action method="addTab" translate="title" module="catalog"><alias>reviews</alias><title>Reviews</title><block>review/product_view_list</block><template>review/product/view/list.phtml</template></action>
</block>
问题是表单没有得到正确的"操作"URL。"send.phtml"中的语句,即
action="<?php echo $this->getSendUrl() ?>"
返回此:
http://localhost/magento_test1/catalog/product/sendmail/id/130/
而它应该返回这样的东西:
http://localhost/magento_test1/sendfriend/product/sendmail/id/171/cat_id/35/
当我将表单移动到产品详细信息页面时,问题肯定发生了。现在,"$this->getSendUrl()"给出了产品页面的相对路径。
有人能告诉我如何解决这个问题吗?我错过了什么?如何使函数获取Sendfriend控制器的URL?
如果"发送给朋友"模块被禁用,就会发生这种情况。确保您通过进入系统->配置->目录->给朋友的电子邮件来启用它。
编辑根据你的评论,这个主题可能与你当前版本的Magento不100%兼容。因此,请确保生成"发送给朋友"URL的代码是正确的:
在app/design/frontend/default//template/cacatalog/product/view.phtml中查找要发送给朋友的代码。确保它看起来像这样:
<?php if ($this->canEmailToFriend()): ?>
<p class="email-friend"><a href="<?php echo $this->helper('catalog/product')->getEmailToFriendUrl($_product) ?>"><?php echo $this->__('Email to a Friend') ?></a></p>
<?php endif; ?>