あすたま のすべての投稿

EC CUBE 商品送料で商品ごとに送料を入力できるようにするカスタマイズメモ

ECCUBEの商品送料、個別送料や基本送料をカスタマイズ

EC CUBEのバージョンは2.4.4。

最終目標は、管理画面で、商品個別の送料が入力できるようにする。

カスタマイズする箇所は4か所。

 

1.元々ある作りかけの商品送料の部分を有効にする

/data/Smarty/templates/default/admin/products/product.tpl

コメントになっている商品送料のコメントを外す(185行目)

<!– ここから商品送料 –>
<tr class=”fs12n”>
<td bgcolor=”#f2f1ec” width=”160″>商品送料</td>
<td bgcolor=”#ffffff” width=”557″>
<span class=”red12″><!–{$arrErr.deliv_fee}–></span>
<input type=”text” name=”deliv_fee”
value=”<!–{$arrForm.deliv_fee|escape}–>” size=”6″
class=”box6″ maxlength=”<!–{$smarty.const.PRICE_LEN}–>”
style=”<!–{if $arrErr.deliv_fee != “”}–>background-color: <!–{$smarty.const.ERR_COLOR}–><!–{/if}–>”/>円
<span class=”red10″> (半角数字で入力)</span></td>
</td>
</tr>
<!– ここまで商品送料 –>

 

2.アドミン画面に入力用のテキストボックス(フォーム)を作る

/data/Smarty/templates/default/admin/products/confirm.tpl

在庫数とポイント付与率の間に追加する。(129行目)

<tr>
<td bgcolor=”#f2f1ec” width=”160″ class=”fs12n”>在庫数</td>
<td bgcolor=”#ffffff” width=”557″ class=”fs12n”>
<!–{if $arrForm.stock_unlimited == 1}–>
無制限
<!–{else}–>
<!–{$arrForm.stock|escape}–>
個<!–{/if}–>
</td>
</tr>
<!–{/if}–>
<!– 商品送料の確認画面 –>
<tr>
<td bgcolor=”#f2f1ec” width=”160″ class=”fs12n”>商品送料</td>
<td bgcolor=”#ffffff” width=”557″ class=”fs12n”>
<!–{$arrForm.deliv_fee|escape}–>
円</td>
</tr>
<!– 商品送料の確認画面 –>
<tr>
<td bgcolor=”#f2f1ec” width=”160″ class=”fs12n”>ポイント付与率</td>
<td bgcolor=”#ffffff” width=”557″ class=”fs12n”>
<!–{$arrForm.point_rate|escape}–>
%</td>
</tr>

 

3.送料の計算の部分に、個別商品を追加する計算式を追加

/data/class_extends/helper_extends/SC_Helper_DB_Ex.php

送料計算式をカスタマイズ。

$objPage->tpl_total_deliv_fee に、カートに入った商品の、商品送料deliv_feeの合計が格納されている。

/httpdocs/data/class/helper/SC_Helper_DB.php
から、function sfTotalConfirmの部分(1467~1536行目)をすべて

SC_Helper_DB_Ex.php の
class SC_Helper_DB_Ex extends SC_Helper_DB {
}
?>
の間にコピーし、以下の部分(55行目(コピペの仕方により変動する))を変更。

// 商品ごとの送料が有効の場合
if (OPTION_PRODUCT_DELIV_FEE == 1) {
$arrData[‘deliv_fee’]+= $objPage->tpl_total_deliv_fee;
//$objCartSess->getAllProductsDelivFee();
}

 

コピペ後はこんな感じになるはず↓

 

class SC_Helper_DB_Ex extends SC_Helper_DB {
function sfTotalConfirm($arrData, &$objPage, &$objCartSess, $arrInfo, $objCustomer = “”) {
// 未定義変数を定義

—–中略—–

$arrData[‘add_point’] = 0;
}
return $arrData;
}
}
?>

 

4.パラメーターで個別送料を有効にしておく

管理画面の[システム設定]-[パラメータ設定]で「OPTION_PRODUCT_DELIV_FEE」を’1’にする。

これでおしまい。

合計送料X = 配送業者送料A + 商品送料合計n(今追加した分) で算出されるようになる。

配送業者送料A を地域別に設定。

大きいものa と小さいものb を購入された場合、n(a)に500、n(b)に0 を入れておけば、
X = A + n(a) + n(b) となるので、n(b)が0なので追加送料は発生しない。
一方大きいものを2つ購入された場合は、n(a)+n(a’) となり、送料は加算される。
また、小さいものを1つ購入された場合は、X = A + n(b) なので A がそのまま送料とになる。

ECCUBE スマホサイトのカスタマイズ。リンクの色を変えるには

ECCUBE 2.11.4-2.13系まで確認

ECCUBEのスマホサイトのカスタマイズ。元々完成度はかなり高いが、少しカスタマイズしてみた。

文字リンクの色。まず、
/ドメイン名/user_data/css/common.css
a:link
とかを変えても何もスマホサイトには影響しない。

ソースを辿ってみると、どうやら、

/ドメイン名/user_data/packages/sphone/css/jqm.css
の一番下。
.ui-link:link
の部分でスマホサイトのリンクの色を制御している。

うーむ。分かりにくい!

ソーラー発電が及ぼす被害、環境への影響

ソーラー発電を考える

原子力発電所がヤバいという話になり、今後も拡大していくと予想される、もしくは拡大させようとしているソーラー発電をはじめとした自然エネルギーの活用。

ソーラー発電が拡大すると環境はどう変化するのか。てのを勝手に考える。
色々議論はあるが、”砂漠に設置したパネルがエネルギーを吸収し砂漠の温度を下げ、逆に大都会で消費するのでそこが熱くなる” みたいな、明らかに間違ってる認識も多い。
しかたないので自分で考える。

 

立地や設備費などの諸条件

まず始めに日本の気象環境や立地を考えると、大規模な太陽光発電所を関西電力が作る。とかは考えにくい。場所がない。あったとしても土地が高い。

設備投資費とかは結構あちこちで話題になってる。
発電量当たりの設備費。
火力発電所を1とすると、
水力:2
風力:3
原子力:4
太陽光:10
ぐらいらしい。データの信頼性は不明。電力プラントの有価証券報告書でも見れば分かるのかもしれん。ただ、火力が最も安く、原子力が中間で、太陽光が高コスト。って構図は間違いないらしい。

これは、設備費であり、これプラス場所が問題になってくる。単位面積辺り発電量では、現時点では、
原子力を100とすると、
火力:30
風力:5
ソーラー:3
ぐらい。これは設備に必要な面積と、そのプラントの総発電能力から計算できる。ざっくりした計算だが、このあたりの数字で常識の範囲から考えて間違いではないだろう。

「サハラ砂漠にソーラーパネルを敷き詰めて」みたいな話はいいのだが、残念ながら日本にサハラもタクラマカンも存在しない。強い太陽光があって、平面で開発が容易な上、土地の資産価値ほぼゼロの場所は、日本にはない。
個人の家の屋根の上ぐらいになる。

つまり、気象条件もさることながら、電力会社が太陽光発電所を作って日本のエネルギーの全てもしくは大部分をまかなうのは不可能だと言える。

 

海外の状況や、発電能力の費用対効果

ドイツやフランスの、風力やソーラー発電が進んでるとか言うのは完全にイメージだけ。
hatudenryou
出典:IEA ENERGY BALANCES OF OECD COUNTRIES(2007-2008)
スウェーデンなんかは、50%原子力、50%を風力とか水力(いわゆるクリーンエネルギー)でやってるが、電力消費量が日本の1/10しかないので比較対象にするのは厳しい。
国民人口も1200万人と日本の1/10。

ちなみにドイツは、原子力の使用を2022年までにゼロにすると表明しており、対応を急いでいる。

海外でも日本でも、とりあえず費用対効果が1番高い火力にしたらいいだろうと言われており、実際に日本は火力発電所をフル稼働してしのいでいる。

もちろん、WTI原油価格が200ドルとか300ドルとかなってしまうと、今度は運営コストが高くなりすぎるので、火力にのみ頼った国家エネルギー戦略を組み立てる訳にはいかない。バランスが必要。CO2排出制限も年々厳しくなっていく。

水力は無理だ。そんなに川はない。波力、風力、地熱など、単位面積辺りの発電量が乏しい+日本の立地環境+消費電力量を考えるとむずかしい。

ということで、原子力、火力(石油、ガス、石炭)、その他いわゆるクリーンエナジーをバランス良く組み合わせなきゃ。という事になってくる。これが現状だ。

太陽光パネル生産時に、火力発電よりもCO2を出すとかいう話は無視しておこう。そもそも都市伝説で信頼性を検討するのもバカバカしいし、それを差し引いても化石燃料脱却以外に日本、ひいては世界に選べる道がない。

火力発電一本でやっていく事はできない。

 

太陽光発電の詳細

では、国家戦略レベルの話は置いておいて、個人レベルで太陽光が普及したとしよう。日本限定の話ではなく、世界的にだ。

現在、市販できるレベル(大量生産に向いてるとかも含め)の太陽光発電モジュールの、発電効率は約16%。ちなみに実験室レベルでは40%ぐらいのものはある。(SHARPのデータより)
仮に現在の普及品よりも、もっといいものができたとして発電効率を20%としよう。近未来を想定。

経験曲線にのっとって、世界的に広がっていると仮定すると、コストは下がっているはずなので、費用対効果の話も問題ないだろう。

そもそも論だが、
太陽光が地球に届いてからどうなるのかの内訳は、
熱:45%
海中に蓄えられる:24%
風や波を動かす原動力:0.2%
光合成に使われる:0.02%
反射:30%
だいたいこんな感じだ。
山田興一・小宮山宏「太陽光発電工学」より。

一方ソーラーパネルの内訳は、
熱:80%
電気:20%
反射:0%
反射やらなんやらがほぼゼロなのには驚くが、色が黒いし、そういうものらしいのだ。

さて、世界中のいたる所、海面、地上、と大体満遍なくパネルが散らばったと仮定する。
山田興一・小宮山宏「太陽光発電工学」によると、地上でエネルギーとして利用可能なのは、1時間あたり約1ぺタワット(1000兆ワット)。これは人類が2000年時点で1時間あたりに消費してるエネルギー総量の約50倍だ。
つまり人類が2000年の時点で使っている電力の総量は20兆ワット/時だ。

(余談だが、世界中の消費電力の1/20を日本人が消費している。先進国ではおおよそ1人あたり、1時間に1000Wの電力を消費している。中国やインドが先進国の仲間入りを果たし生活水準が日本並みになった時が恐ろしい)

電気エネルギー以外から、電気エネルギーへの移行が進むことも踏まえ、仮に20兆ワットの2倍、40兆ワットの電力を確保することを目指す。

言い方を変えると、人類は太陽光エネルギーの 1/25 = 4% を使って生きていくのだ。

40兆ワットを発電する際に、太陽光パネル上で発生する熱の量は、160兆W。

自然状態では、1000兆ワット中45%が熱になるので、450兆W。これが、 450兆W – 18兆W(4%がパネルに遮られ地上に届かない分) + 160兆W(パネル上で熱になる分) = 592兆Wとなる。

自然状態で450兆W分の熱だったのが、太陽光発電が普及すると、パネルが光を反射しない分、合計で592兆W分の熱が発生する。

更に電気エネルギーに変換した40兆Wのうち、最終的に大体20%ぐらいの8兆W は熱になってしまう。(細かい数字は無視するが、電気モーターの運動エネルギー効率が80%ぐらいなので、残り20%の多くは熱となる)

592兆W + 8兆W = 600兆W 。 これは、自然状態の450兆Wから比べて熱になるエネルギーが33%増えた事になる。

33%はかなりヤバい。
風の動きを無視しても、自然状態での夜の気温が10度で、昼間を20度やとすると、太陽光照射による温度上昇は10度。
これがソーラーパネルを設置すると、そのせいで13度になってしまうのだ。

温室効果ガスは出ないので、現状の地球温暖化と単純比較はできないが、昼夜の寒暖の差は間違いなく激しくなる。
当然、気流、海流に多大な影響を及ぼす。

現状地球全体に、ソーラーパネルがまんべんなく散らばったと仮定しているので、一箇所に集中してパネルを設置してしまうと、状況は更に悪化して、昼夜の寒暖の差だけでなく、地域の温度差まで激しくなる。

風力、波力、地熱に関しても同様の事が言えると思う。風の力をとてつもない規模で電気に変えると…等々。

人間が生きていく上で完全なグリーンやクリーン、エコなどありえない。そもそも60億も、70億もの人類がこの小さな地球に住んでいる事が無理なのだ。
だが、それを言っちゃ何も始まらない。

少なくとも、我々は地球の上で、なんとか絶妙のバランスを保って生きていかねばならない。

太陽光にすれば全て解決など、都合の良い究極の解なんてものは存在しない。生きていく上で常に探求、研究、考察、実行、反省、修正、改善、を繰り返して努力、工夫し続けなければならない。
自然に優しく、自分達も何もせず穏やかに暮らしてゆくライフスタイルを考えるなど、おこがましいのだ。