国际电子商务技术 & Magento开发公司

Maishen technologies

Welcome visitor! You canlogin orcreate an account.

热线:+86-0532-58973093

麦神科技有限公司
Mygod Technologies

官方认证开发工程师

Contact Us页面添加一个国家选项。

2012年11月19日星期一 Asia/Shanghai下午3:31:41

magento默认的联系我们,contact us页面是没有国家选项的,我们把他加上

步骤如下:

1.找到文件

app/code/core/Mage/contacts/controllers/indexController.php

找到代码:

  if (!Zend_Validate::is(trim($post['name']) , 'NotEmpty')) {
                    $error = true;
                }

                if (!Zend_Validate::is(trim($post['comment']) , 'NotEmpty')) {
                    $error = true;
                }

                if (!Zend_Validate::is(trim($post['email']), 'EmailAddress')) {
                    $error = true;
                }
                
     添加代码:          
                if (!Zend_Validate::is(trim($post['country']), 'NotEmpty')) {
                    $error = true;
                }
 2.找到文件

app/design/frontend/maishen/tidebuy/template/contacts/form.phtml

打开

添加一段代码:

 <li>
                <label for="country"><?php echo Mage::helper('contacts')->__('country') ?></label>
                <div class="input-box">
                    <input name="country" id="country" title="<?php echo Mage::helper('contacts')->__('country') ?>" value="" class="input-text" type="text" />
                </div>
            </li>

文件的编辑完成,下面去后台重新标记邮箱模板

3.system-->transactional email

重新编辑contact form模板

4.system->configuration->contacts

选择刚才新建的模板,然后填写上邮箱地址,然后保存。

5.测试,是否可以发送,发送的邮件中是否有国家选项。

0 Comments | Posted in magento二次开发 By terry water

magento网店的搜索不准确的处理!

2012年9月19日星期三 Asia/Shanghai下午5:17:42

magento默认的搜索方式是like方式,不是很精确,也就是搜索词匹配高的不会拍到第一位,下面是采用一种精准的magento排序方式fulltext方式,下面是操作内容。

首先,联系空间商
在mysql的配置文件my.ini里面添加配置:
ft_min_word_len=2
因为虚拟空间是没有权限的,vps才有!






Read More
0 Comments | Posted in magento二次开发 By terry water

如何把自己制作的扩展页面写入magento的sitemap对应的sitemap.xml中

2012年7月31日星期二 Asia/Shanghai下午5:54:27

对于magento,有不少url是没有加入到sitemap中的,譬如tag,如果我们把tag的url重写成tag/tagname的样子,我们在后台生成sitemap的时候想要把重写后的tagurl加入,就要重写magento的sitemap生成机制了!

下面是步骤:

1.在模块对应的config.xml中的model标签中加入代码:

  <sitemap>
                <rewrite>
                    <sitemap>yourpackagename_exname_Model_Sitemap</sitemap>
                </rewrite>
            </sitemap>

然后这个文件继承extends Mage_Sitemap_Model_Sitemap
下面是写入tag的代码

 /**
         * Generate tag pages sitemap
         */
        $changefreq = (string)Mage::getStoreConfig('sitemap/page/changefreq');
        $priority   = (string)Mage::getStoreConfig('sitemap/page/priority');
        $tags = Mage::getModel('tag/tag')->getPopularCollection()
                ->joinFields(Mage::app()->getStore()->getId())
                
                ->load()
                ->getItems();

        foreach ($tags as $item) {
            $tagname = $item->getName();
            $tagname = str_replace("-","--",$tagname);
            $tagname = str_replace(" ","-",$tagname);

            $xml = sprintf('<url><loc>%s</loc><lastmod>%s</lastmod><changefreq>%s</changefreq><priority>%.1f</priority></url>',
                htmlspecialchars($baseUrl."tag/".$tagname),
                $date,
                $changefreq,
                $priority
            );
            $this->sitemapFileAddLine($xml);
        }
        unset($tags);

然后在后台重新生成,就可以看到tag的url了!

0 Comments | Posted in magento二次开发 By terry water

magento中通过产品的id得到产品的价格

2012年5月28日星期一 Asia/Shanghai上午11:23:11

magneto的价格方面是蛮强大的,有很多和打折相关的价格的设置

所以我们是不能和取到产品的名字那样直接  $_product->getName(),使用一个函数取到

需要查看价格的设置,来最终取到产品的最终价格。

最方便的方式是使用magento的里面的一个函数

$id            $this->getRequest()->getParam('id');
$product    Mage::getModel('catalog/product')->load($id);

echo $product->getFinalPrice();

即可得到产品的价格。

在很多页面一般都会有一个变量让您取到在该页面的id的,这样只需吧$id设置一下即可!

0 Comments | Posted in magento二次开发 By terry water

在magento菜单下加入一个静态块(static block)

2012年5月25日星期五 Asia/Shanghai上午8:36:14

magento1.6和1.7的版本有所不同

在magento1.6下

1

首先重写block class,找到/app/code/core/Mage/Catalog/Block/Navigation.php,复制到/app/code/local/Mage/Catalog/Block/Navigation.php

2

找到方法: _renderCategoryMenuItemHtml

这个函数是画出菜单的方法

3

然后找到下面的代码的位置

$html[] = '<ul class="level' . $level . '">';
$html[] = $htmlChildren;
$html[] = '</ul>';
改为:
$html[] = '<ul class="level' . $level . '">';
$html[] = $htmlChildren;
$staticBlock = trim($this->getLayout()->createBlock('cms/block')->setBlockId(strtolower($category->getUrlKey()))->toHtml());
if(!empty($staticBlock)){
    $html[] = '<span class="nav-static-block" style="background:#fff; border-top:1px solid #ccc; padding:10px;">';
    $html[] = $staticBlock;
    $html[] = '</span>';
}
$html[] = '</ul>';
然后那个分类下面想建静态块,就可以新建一个static block,identity也和这个分类的url_key一样,然后就会在这个分类的下面显示出来!
0 Comments | Posted in magento二次开发 By terry water
 
  • Mygod Technologies
  • 麦神科技有限公司
  • 香港中路8号
  • 中铁青岛中心大厦A3001
  • 市南区, 青岛, 266000
  • 电话: 0532-5897-3093

订阅我们的最新消息。

我们将严格尊重您的隐私。

关注我们的微信
获取外贸电子商务最新资讯;跨境推广最新策略;电子商务网站技术最新趋势。

2018 Mygod Technologies. 保留所有权. Privacy Policy