<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/ME2.2.1" -->
<rss version="0.92">
<channel>
	<title>インストールメモ</title>
	<link>http://www.easy-in.net</link>
	<description>インストールの手順、設定方法等の記録</description>
	<lastBuildDate>Fri, 16 Nov 2007 15:42:58 +0900</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>ja</language>
	
	<item>
		<title>EC-CUBE ルミーズ決済モジュールでポイント使用時に決済できない</title>
		<description><![CDATA[EC-CUBEのルミーズ決済モジュールで、ポイント利用時に決済を行うと、合計金額からはポイント利用分の金額が引かれるのですが、金額（小計）からはポイント利用分の金額が引かれないで、ルミーズに情報が渡されてしまい合計金額が不正として必ずエラーになってしまいます。
その解消方法ですが
/data/download/module/mdl_remise/card.phpの127行目辺りの

'AMOUNT' =&#62; $arrData["subtotal"], // 金額
を

'AMOUNT' =&#62; $arrData["subtotal"] - $arrData["use_point"], // 金額 - ご使用ポイント

とする事で金額からポイント利用分が引かれて正常に決済が行えるようになります。
]]></description>
		<link>http://www.easy-in.net/archives/18</link>
			</item>
	<item>
		<title>EC-CUBE ルミーズ決済モジュール</title>
		<description><![CDATA[EC-CUBEのルミーズ決済モジュールで、ルミーズからの決済完了後にサイトにリダイレクトされる際に、実際には決済が成功していないのに成功している事になってしまう不具合がありました。
具体的には、決済完了後に「X-R_CODE」の値を判断して決済の成否を判断しているのですが、実際には「X-ERRLEVEL」の値を判断する必要があります。
その現象の対処方法ですが、
/data/download/module/mdl_remise/card.phpの72行目辺りの

    // 通信時エラー
     if ($_POST["X-R_CODE"] != $arrRemiseErrorWord["OK"]) {
        $err_detail = $_POST["X-R_CODE"];
        sfDispSiteError(FREE_ERROR_MSG, "", false, "購入処理中に以下のエラーが発生しました。 ＜br /＞＜br /＞＜br /＞・" . $err_detail);

の部分を

    // 通信時エラー
     if ($_POST["X-R_CODE"] != $arrRemiseErrorWord["OK"] [...]]]></description>
		<link>http://www.easy-in.net/archives/17</link>
			</item>
	<item>
		<title>EC-CUBE 会員登録時付与ポイントが付与されない</title>
		<description><![CDATA[EC-CUBEで、会員登録時付与ポイントを登録しているのに会員登録時に付与されない場合の対処方法です。
(EC-CUBEバージョン 1.3.1aと1.3.3で確認)
 /html/entry/index.phpの232行目辺りの

/*
secret_keyは、テーブルで重複許可されていない場合があるので、
本会員登録では利用されないがセットしておく。
*/
$arrRegist["secret_key"] = $uniqid; // 会員登録キー
$arrRegist["create_date"] = "now()"; // 作成日
$arrRegist["update_date"] = "now()"; // 更新日
$arrRegist["first_buy_date"] = ""; // 最初の購入日

の下に

// 会員登録時付与ポイント
$point = $objConn-&#62;getOne("SELECT welcome_point FROM dtb_baseinfo");
$arrRegist["point"] = $point;

を追加する事で付与されるようになります。
モバイル版も利用している場合には、 /html/mobile/entry/index.phpの354行目辺りの

$arrRegist["secret_key"] = $uniqid; // 仮登録ID発行
$arrRegist["create_date"] = "now()"; // 作成日
$arrRegist["update_date"] = "now()"; // 更新日
$arrRegist["first_buy_date"] = ""; // 最初の購入日

の下に同様に

// 会員登録時付与ポイント
$point = $objConn-&#62;getOne("SELECT welcome_point FROM dtb_baseinfo");
$arrRegist["point"] = $point;

を追加してください。
]]></description>
		<link>http://www.easy-in.net/archives/16</link>
			</item>
	<item>
		<title>CentOSへのDovecotインストール</title>
		<description><![CDATA[CentOSにDovecotをインストールした時の手順です。
Postfixのインストールは、CentOSへのPostfixインストールを参考にしてください。

Dovecotをyumを利用してインストールします。
yum install dovecot

dovecot.confの設定vi /etc/dovecot.conf
利用したいサービスのみ記述してください。

#protocols = imap imaps
↓
protocols = imap imaps pop3 pop3s


自動起動の設定

/etc/init.d/dovecot start
chkconfig dovecot on


yumでダウンロードしたパッケージの削除

yum clean packages



]]></description>
		<link>http://www.easy-in.net/archives/15</link>
			</item>
	<item>
		<title>CentOSへのPostfixインストール</title>
		<description><![CDATA[CentOSにPostfixをインストールした時の手順です。
メールの不正リレー対策として、SMTP-AUTHを組み込みます。

CentOSにPostfixをyumを利用してインストールします。
yum install postfix

MTAをSendmailからPostfixに変更します。
/etc/init.d/sendmail stop
chkconfig --del sendmail
リストからPostfixを選択します。
alternatives --config mta

main.cfの設定vi /etc/postfix/main.cf
# myhostname - ホスト名の定義
myhostname = host.example.jp

# mydomain - ドメイン名の定義
mydomain = example.jp

# myorigin - ローカルからメール配信するときの送信元アドレスの定義
# user@example.jp 形式にするなら myorigin = $mydomain
# user@host.example.jp 形式にするなら myorigin = $myhostname
myorigin = $mydomain

# inet_interfaces - メール受信するインタフェイスの設定
# デフォルトではローカルからの配信しか受け付けない。
# リモートからメールを受け取れるようにするなら以下の記述を入れる。
inet_interfaces = all

# mydestination - どのメールアドレスをローカル配信するかの定義。
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

mynetworks_style = subnet

# mynetworks - メールリレーを受け付けるクライアントアドレスの設定
mynetworks = [...]]]></description>
		<link>http://www.easy-in.net/archives/14</link>
			</item>
	<item>
		<title>WordPressの表示中のページの判断方法</title>
		<description><![CDATA[WordPressのテンプレート内で、トップページにだけ表示したい内容やアーカイブページにだけ表示したい内容がある場合に、表示中のページを判断する方法です。

is_admin()
表示中のページがWordPressの管理画面の場合、trueを返します。
is_home()
表示中のページがトップページの場合、trueを返します。
is_single($post)
表示中のページがエントリーの場合、trueを返します。
引数にIDを渡せば、表示中のページがエントリーで、渡されたIDのエントリーの場合、trueを返します。
is_page($page)
表示中のページがページの場合、trueを返します。
引数にIDを渡せば、表示中のページがページで、渡されたIDのページの場合、trueを返します。
is_archive()
表示中のページがアーカイブ一覧ページの場合、trueを返します。
is_category($category)
表示中のページがカテゴリーアーカイブ一覧ページの場合、trueを返します。
引数にIDを渡せば、渡されたIDのカテゴリーアーカイブ一覧ページの場合、trueを返します。
is_author($author)
表示中のページが投稿者アーカイブ一覧ページの場合、trueを返します。
is_date()
表示中のページが年月日時間アーカイブ一覧ページの場合、trueを返します。
is_day()
表示中のページが日別アーカイブ一覧ページの場合、trueを返します。
is_month()
表示中のページが月別アーカイブ一覧ページの場合、trueを返します。
is_year()
表示中のページが年別アーカイブ一覧ページの場合、trueを返します。
is_time()
表示中のページが時間別アーカイブ一覧ページの場合、trueを返します。
is_search()
表示中のページが検索結果一覧ページの場合、trueを返します。
is_404()
表示中のページが404ページの場合、trueを返します。


]]></description>
		<link>http://www.easy-in.net/archives/12</link>
			</item>
	<item>
		<title>WordPressのサイトマップ出力プラグイン</title>
		<description><![CDATA[Sitemap Generator Plugin for Wordpressから「dd-sitemap-gen.txt」をダウンロードして、「dd-sitemap-gen.php」にリネームして、wp-content/plugins内に保存する。
WordPress管理画面→プラグインに「Dagon Design Sitemap Generator」が追加されているので、有効化する。
その後、WordPress管理画面→投稿→ページ作成で、サイトマップ用ページを作成して、サイトマップを表示したい部分に

< -- ddsitemapgen -->

とタグを入れればサイトマップを出力してくれます。
WordPress管理画面→各種設定→DDSitemapGenで、各種設定を行なえます。
]]></description>
		<link>http://www.easy-in.net/archives/9</link>
			</item>
	<item>
		<title>cakePHPでPCと携帯で出力文字コードを変更する方法</title>
		<description><![CDATA[携帯用のサイト用のビューをShin x blogさんのサイトを参考にして、設定しPC用と携帯用のサイトをビューだけを切り替える方法で運用しています。
そこで問題になるのが文字コードです。
私の場合、PC用のサイトはスクリプトの文字コードも出力文字コードもUTF-8で統一させる場合が多いのですが、携帯用のサイトの場合に出力文字コードをUTF-8にしてしまっては、最近の機種でしか見る事が出来ません。
そこでPC用と携帯用で文字コードを切り替えて利用しています。
PC用の場合には、上の通りUTF-8で統一して、携帯用の場合には、スクリプトの文字コードは全てUTF-8にして、出力時にShift_JISに変換しています。
詳しくは、/app/app_controller.phpのafterFilterで、文字コードをUTF-8からShift_JISに変換して出力して、beforeFilterで、入力文字の文字コードをShift_JISからUTF-8に変換しています。
class AppController extends Controller {

function beforeFilter() {
// 入力データの文字コード変換
if ((isset($this-&#62;params["webservices"])
&#38;&#38; $this-&#62;params["webservices"] == "Mobile") {
mb_convert_variables("UTF-8", "SJIS-win", $this-&#62;data);
}

// 出力データの文字コード変換
// afterFilter で文字コード変換するためにob_startで
// 出力のバッファを行なう
ob_start();

parent::beforeFilter();
}

function afterFilter() {
parent::afterFilter();

// バッファを取得して、出力バッファをクリア
$out = ob_get_clean();

if ((isset($this-&#62;params["webservices"])
&#38;&#38; $this-&#62;params["webservices"] == "Mobile") {
// 出力文字コードの変換
$out = mb_convert_encoding($out, "SJIS-win", "UTF-8");
}

echo $out;
}
}
これで、携帯用のビューの場合には、出力時にShift_JISに変換して出力し、入力文字はUTF-8に変換されます。
また/app/views/pages以下のページも同様に変換したい場合には、以下の様にする事で変換する事が出来ます。
class AppController extends Controller {

function afterFilter() {
parent::afterFilter();

// バッファを取得して、出力バッファをクリア
$out = ob_get_clean();

if ((isset($this-&#62;params["webservices"])
&#38;&#38; $this-&#62;params["webservices"] == "Mobile")
&#124;&#124; ($this-&#62;params["controller"] == "pages"
&#38;&#38; $this-&#62;params["action"] == [...]]]></description>
		<link>http://www.easy-in.net/archives/8</link>
			</item>
	<item>
		<title>cakePHPのControllerのaddへの引数</title>
		<description><![CDATA[通常、bake.phpでControllerを作成した場合には、addメソッドに引数はないので特に問題はないですが、
http://www&#8230;&#8230;./posts/add
function add() {
:
}
独自にaddメソッドに引数を追加した場合、
http://www&#8230;&#8230;./posts/add/1
function add($parentid = null) {
:
}
この様にaddメソッドに引数「1」を渡すとsave時に、idが「1」のデータを更新してしまうようです。
これを回避するには、saveの前に
$this-&#62;data[&#8221;Post&#8221;][&#8221;id&#8221;] = 0;
と、通常idに存在しない「0」を渡してあげてください。
]]></description>
		<link>http://www.easy-in.net/archives/5</link>
			</item>
	<item>
		<title>CakePHPでSmartyを利用する方法</title>
		<description><![CDATA[Smartyのダウンロード(2.6.12 で動作確認)
こちらよりSmarty-2.*.**.tar.gzをダウンロード。
CakePHPの/vendorsに、smartyディレクトリを作成。
Smarty-2.*.**.tar.gzを解凍して、libs内のファイルを上で作成したsmartyディレクトリにコピー。
（/vendors/smarty/Smarty.classの様な構成になる。）
/app/tmp/smarty/にSmartyの利用するcache、compileディレクトリを作成。
/app/tmp/smarty/cache/
/app/tmp/smarty/compile/
Smarty View class (Version 1.1で動作確認)
こちらよりファイルをダウンロードしてsmarty.php にリネームして/app/views/ ディレクトリにコピー。
__constructの

		$this->subDir = 'smarty'.DS;

をコメントアウト
_renderの

$this->Smarty->assign_by_ref('view', $this);

を

$this->Smarty->assign_by_ref('this', $this);

に変更
AppControllerへの設定
/cake/app_controller.phpを/app/app_controller.phpにコピーして

class AppController extends Controller {
	var $view = 'Smarty';
・
・
・

これでviewに「.tpl」があればSmartyのテンプレートとして処理を行い、なければ通常通り「.thtml」を表示します。
変数のassignなどは、Smarty View classが行なってくれるので、this、html、form、sessionや利用しているモデルなどはそのまま利用する事が出来ますので、元のビューの
「< ?php echo」を「{」
に
「;?>」を「}」
にするだけで、ほぼ利用する事が出来ます。
{$html->input(&#8217;Member/email&#8217;, array(&#8217;size&#8217; => &#8216;60&#8242;))}
の「array(&#8217;size&#8217; => &#8216;60&#8242;)」の部分がエラーになる問題は、]]></description>
		<link>http://www.easy-in.net/archives/3</link>
			</item>
</channel>
</rss>
