Opencart | 修復商品編輯後台無法移除品牌 bug

1.5.5.1 與 1.5.6.1 皆有的 bug。
當要編輯商品的品牌時,無法刪除品牌,刪除後會在欄位重新出現品牌。

編輯 admin/view/template/catalog/product_form.tpl

找到 $('input[name=\'manufacturer\']').autocomplete({

在這之前加入

Opencart | 自動核准留言,並在發表留言後自動更新留言列表

在 catalog/model/catalog/review.php 找到
date_added = NOW()

改為
date_added = NOW(), status = 1

在 catalog/view/theme/佈景名稱/template/product/product.tpl 找到
if (data['success']) {

在後面加入

Opencart | 將商店訊息 (Information) 顯示在頁首

本修改支援多國語系

在 catalog/view/theme/佈景名稱/template/common/header.tpl 需要顯示文章連結的地方加入下列程式碼,其中 array(1,2,3)  的數字填入文章ID

在 catalog/controller/common/header.php 這段程式碼
$this->data['checkout'] = $this->url->link('checkout/checkout', '', 'SSL');

的下方加入

 

出處:OpenCart Community • View topic – [solved] Create link to specific (single) information page

Opencart | 修復1.5.5.1版本多項 Bug

我製作了這個外掛可以將目前已發現的 Opencart 1.5.5.1 版本 Bug 修復,只需要安裝一個 vqmod 即可。

此外掛包括

  1. 修復 tag 連結搜尋找不到商品
  2. 修復後台新增會員時出現 fax error
  3. 修復後台寄送信件時,內文不管有沒有填寫都會出現「請填寫內文」

後續若有發現新的 Bug 會持續更新此外掛。

VQMOD 下載 :
fixbug_1551.7z (659) hits

Opencart | 修復無法使用會員群組寄信 Bug (VQMOD)

1.5.2.1 版本的 Opencart 在使用後台寄信功能時,會無法寄信給會員群組收信人,其它版本不清楚是否有此問題。

建議使用 VQMOD 修復此 bug。

admin/controller/sale/contact.php 找到

替換成

VQMOD 下載 :
fix_group_mail.7z (674) hits

Opencart | 移除頁面下方使用不到的服務連結

例如「其他服務」中的「利潤共享」等項目,一般商城用不到,手動修改佈景很容易就可以移除。

20130117100243

打開 catalog/view/theme/佈景名稱/template/common/footer.tpl

將以下這段刪除

刪除之後版面會空一塊在那邊,再度修改
catalog/view/theme/佈景名稱/template/stylesheet/style.css

找到以下這段

width:25%  改為  width:33%

Opencart | 綠界超商付款模組串接簡訊通知功能

因為我不是個會寫程式的人,所以研究了好些日子 (主要有三天撞牆期,實際上只用了兩天),幸好最後也誤打誤撞試出來了,也因此學到了 CURL 的使用方式。

這個外掛可以讓消費者選擇 ibon 或其他超商代碼繳費時,也發送簡訊到消費者的手機,前提是電話欄位必須填寫手機,不然就會傳失敗。

模組使用 VQMOD ,可以一邊保留原始的綠界付款模組,若日後有不相容只要移除 VQMOD 即可,不過機率應該很小吧…。

後台原本想多一個設定簡訊發送內容,但由於每封限制70字中英混合,算一算並不適合後台再設定了(本來有預想可以順便夾帶促銷訊息),於是後台就剩下一個開關簡訊的功能。

Opencart | 修復商品頁錨點錯誤 (VQMOD)

目前在 Opencart 1.5.2.1 版本發現此 bug,其他版本不確定有沒有。

在商品頁使用連結錨點時,例如

會跳回商城首頁,無法正確指到錨點位置,這是 Jquery 的 bug,可以手動修改佈景或是使用我寫好的 VQMOD。

打開 catalog/view/theme/佈景目錄/template/common/header.tpl
在 </header> 前面加入

VQMOD 下載 (直接套用,免改佈景名稱):
fix_anchor.7z (879) hits

原始程式碼出自 Opencart 討論區 Anchor usage

Opencart | 依重量計算運費時,隱藏固定運費選項 (VQMOD)

若商店同時有設定固定運費與計重運費時,結帳頁會同時顯示這兩項運費,會造成消費者選錯或是根本不知道該選哪個。
這個小修正可以在有購買設有重量的商品時,以重量運費為標準,隱藏固定運費。

打開 catalog/model/shipping/flat.php ,尋找

在這前面加上

當後台設定的重量單位預設值單位大於 1 時,只會顯示重量運費,沒有更改過的話應該是以公斤為單位。
若要設定大於1公克,請在後台「系統管理/本地化/重量單位」將公克改為 1.00000、公斤為 0.001 (重量運費那邊也要更改計重單位)。
或是只更改 getWeight() >= 1 為 getWeight() >= 0.001 也行。

建議使用 VQMOD 版本,以便日後主程式升級維護:
weight_first.7z (780) hits

原程式碼出自 Opencart 討論區

Tips:
當消費者購買沒有設定運費的商品時,也會出現重量計費的運費選項,如果想要隱藏它,只要在後台的重量設定一筆 「0:,」就可以了。
舉例:
0:, 3:50, 10:80
當重量為 0 時隱藏重量計費選項/3公斤內50元/10公斤內80元

Opencart | 依照標題排序幻燈片廣告

這個修正可以讓原本沒有特定排序的前台幻燈片廣告 (NivoSlider Banner) 依照後台廣告標題排序。
不過如果使用編號「1,2,3,4…」的話會無效,使用「AD1,AD2,AD3,AD4…」才能正常排序。

建議使用 VQMOD,若要自行修改如下:

開啟
catalog/model/design/banner.php

找出

替換為

程式來源於 Opencart 討論區

VQMOD 下載 : order_slideshow_images_by_name.7z (723) hits

Opencart | 會員申請退換貨寄信通知管理員 (VQMOD)

原本以為當會員按下訂單的退換貨機制,管理員沒有收到信件通知是 Bug,但一查之下又好像不是這麼回事…意思就是要你很累每天登入後台看有沒有客人按下退換貨。(光想就好累啊)

還好已經有先人釋出解決方案,安裝之後就能收到會員提出的退換貨信件了。
外掛是由 RajPadhi 寫的 Alert on Return Request & New Affiliate,我僅抽出 Alert on Return Request 作中文化。

也可以手動修改,但不建議,還是用 VQMOD 比較方便。
手動修改如下:

開啟 catalog/controller/account/return.php 找出

下面加入

$message ="您的顧客 <strong>".$this->customer->getFirstName()." “.$this->customer->getLastName()."</strong> 提出了退換貨申請,請登入後台「訂單與會員管理/退換貨」查看。<br/><br><br>"
.'<a href="http://’.$_SERVER[“SERVER_NAME"].’/admin">登入後台</a>’;

$mail = new mail();
$mail->protocol = $this->config->get(‘config_mail_protocol’);
$mail->parameter = $this->config->get(‘config_mail_parameter’);
$mail->hostname = $this->config->get(‘config_smtp_host’);
$mail->username = $this->config->get(‘config_smtp_username’);
$mail->password = $this->config->get(‘config_smtp_password’);
$mail->port = $this->config->get(‘config_smtp_port’);
$mail->timeout = $this->config->get(‘config_smtp_timeout’);
$mail->setTo($this->config->get(‘config_email’)); /* OR setTo(“MYEmail@MYDOMAIN.COM"); */
$mail->setFrom($this->config->get(‘config_email’)); /* OR setFrom(“MYEmail@MYDOMAIN.COM"); */
$mail->setSender($this->config->get(‘config_name’));
$mail->setSubject(($this->config->get(‘config_name’)) . " – 退換貨申請");
$mail->setHtml($message);
$mail->send();

下載 : return_alert.7z (757) hits

適用版本:v1.5.0, v1.5.0.1, v1.5.0.2, v1.5.0.3, v1.5.0.4, v1.5.0.5, v1.5.1, v1.5.1.1, v1.5.1.2, v1.5.1.3, v1.5.2, v1.5.2.1 (18 March 2012)

Opencart | 修復未登入會員訂單連結錯誤

這是 Opencart 1.5.2.1 的 Bug ,其它版本不確定有沒有。

當會員未登入時,從訂單信件點訂單連結後會噴出 PHP ERROR。

這個檔案可以修正此錯誤,讓未登入的會員進登入頁面。
解壓後直接覆蓋原本的 catalog/controller/account/order.php

也可以手動修改,在

下面加入

下載 : fix_logout_order_1521.7z (688) hits

:這個修改無法製作成 vqmod ,因載入問題所以無法作用。

Opencart | 自訂訂單起始編號

剛上架的商城訂單編號從 1 開始,有些老闆可能會覺得不太好看。
這時候我們可以從資料庫下手,打開 phpmyadmin 裡的 opencart 資料庫,然後執行這行程式碼,下一筆訂單就會從 1555 開始編號。

opc_ 為資料表前綴,請替換為自己的,若沒有可刪除。
1555 為起始訂單編號,可隨意更改。