バージョン選択

フォーラム

メニュー

オンライン状況

67 人のユーザが現在オンラインです。 (55 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 67
もっと...

サイト内検索

機能要望 > その他 > 【リリース】EC-CUBE2.12.0 α版をリリースいたしました

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ECCUORE
投稿日時: 2012/3/30 15:06
対応状況: −−−
長老
登録日: 2009/10/22
居住地: 東京
投稿: 248
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました
引用:
・プラグイン機能 フックポイントの位置に関する評価
  ⇒フックポイントの場所は問題ないか。
   フックポイントを追加して欲しい部分があればご報告ください。 等


プラグインをいくつか作ってみた感想なのですが、現在のフックポイントでは処理追加型のプラグインは対応可能かと思います。
処理変更型のプラグインを作るのには現在のフックポイントの考え方だと難しいかなと感じました。
(処理変更型のプラグインとは、商品の検索条件に手を入れるようなプラグイン)

フックポイントの場所といった観点ですと
Local関数にもフックポイントが欲しい時もあるので、アクションに限らずフックポイントを増やして頂けると幅が広がるかなと思います。
結構、Local関数で行うような処理に対してカスタマイズを入れるケースは多いと思いますので。

プラグイン機能という観点ですと
フックポイントに、従来のタイプと書き換え型があると便利かなと。
イメージ的には下記のようになります。

class A{
	function action(){
		---フックポイント:a_action_start---
		
		(処理)
		
		---フックポイント:a_Local関数_modify--- ←このフックポイントに登録している関数はLocal関数の代わりに呼び出す とか
		
		this->Local関数();
		
		(処理)
		
		---フックポイント:a_action_end---
	}
	
	function Local関数(){
		---フックポイント:a_Local関数__start---

		(処理)

		---フックポイント:a_Local関数__end---
	}
}



----------------
EC CUORE 株式会社クオーレ
カスタマイズ御相談下さい。

ECCUORE
投稿日時: 2012/4/4 14:01
対応状況: −−−
長老
登録日: 2009/10/22
居住地: 東京
投稿: 248
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました
プラグインでバグなのか、正常に動作しない部分がありましたので報告いたします。

SC_View outputfilter_transformにて、フックポイント'outputfilterTransform'に登録する箇所です。
$smarty->_current_fileをoutputfilterTransformの引数に登録していますが、$smarty->_current_fileが
コンパイル時にしか入らなそうな変数なので、outputfilterTransformにテンプレートファイル名が渡ってきません。
(※_current_file変数に代入する箇所は、Smarty_Compiler _compile_file関数のみ)

outputfilter_transformでHTMLを変換する場合は、$this->objPageからクラス名やViewを判断して作業した方がよろしいでしょうか?

 例:管理者画面全体に関わるものであれば、Viewクラスで判定し、特定画面であれば、Pageクラスで判定するような形

また、テンプレートファイルを追加、変更するようなプラグインでは、テンプレートファイルのキャッシュを意識した方が良いかと思いますが
どのような挙動をしたらよろしいでしょうか?

 例:プラグインインストール時に当該キャッシュファイルを消す。(ファイルが特定できないのでディレクトリ単位?)


----------------
EC CUORE 株式会社クオーレ
カスタマイズ御相談下さい。

ECCUORE
投稿日時: 2012/4/4 15:09
対応状況: −−−
長老
登録日: 2009/10/22
居住地: 東京
投稿: 248
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました
>また、テンプレートファイルを追加、変更するようなプラグインでは、テンプレートファイルのキャッシュを意識した方が良いかと思いますが
>どのような挙動をしたらよろしいでしょうか?

プラグイン有効無効時にキャッシュが消えている事を確認せずに書いておりました。

ただ、管理者画面全てに影響があるプラグインの場合は、有効、無効を切り替えた場合、prefilter_transformのケースではキャッシュが消えない(消すタイミングが悪い?)です。
outputfilter_transformのケースでは、有効にした直後の画面で、outputfilter_transformのフックポイントが動いていない模様です。


----------------
EC CUORE 株式会社クオーレ
カスタマイズ御相談下さい。

ECCUORE
投稿日時: 2012/4/4 15:53
対応状況: −−−
長老
登録日: 2009/10/22
居住地: 東京
投稿: 248
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました
プラグインでバグを発見しました。

Smartyコメント内に、'<!--{}-->'で囲まれた文字列があり、当該テンプレートファイルをtransformしようとするとシステムエラーになります。

エラーメッセージ


http://XXXXX/html/shopping/confirm.php?transactionid=a06e60412dcc6491568d9ba3e6bb2cfdc73185a3?transactionid=a06e60412dcc6491568d9ba3e6bb2cfdc73185a3
SERVER_ADDR: 127.0.0.1
REMOTE_ADDR: 127.0.0.1
USER_AGENT: XXXXXX
Fatal error(E_USER_ERROR): Smarty error: [in /html/../data/Smarty/templates/default/shopping/confirm.tpl line 192]: syntax error: unrecognized tag: * XXX 購入小計と誤差が出るためコメントアウト
                        <td class="alignR"><!--{$item.total_inctax|number_format (Smarty_Compiler.class.php, line 446) on [/data/module/Smarty/libs/Smarty.class.php(1093)]
/html/shopping/confirm.php(34): LC_Page_Shopping_Confirm_Ex->process
/data/class_extends/page_extends/shopping/LC_Page_Shopping_Confirm_Ex.php(56): LC_Page_Shopping_Confirm->process
/data/class/pages/shopping/LC_Page_Shopping_Confirm.php(64): LC_Page->sendResponse
/data/class/pages/LC_Page.php(138): SC_Display->prepare
/data/class/SC_Display.php(75): SC_View->getResponse
/data/class/SC_View.php(95): Smarty->fetch
/data/module/Smarty/libs/Smarty.class.php(1263): include
/data/Smarty/templates_c/default/%%F1^F15^F158E3F4%%site_frame.tpl.php(83): Smarty->_smarty_include
/data/module/Smarty/libs/Smarty.class.php(1869): include
/data/Smarty/templates_c/default/%%58^587^5876E692%%site_main.tpl.php(143): Smarty->_smarty_include
/data/module/Smarty/libs/Smarty.class.php(1867): Smarty->_compile_resource
/data/module/Smarty/libs/Smarty.class.php(1422): Smarty->_compile_source
/data/module/Smarty/libs/Smarty.class.php(1489): Smarty_Compiler->_compile_file
/data/module/Smarty/libs/Smarty_Compiler.class.php(312): Smarty_Compiler->_compile_tag
/data/module/Smarty/libs/Smarty_Compiler.class.php(446): Smarty_Compiler->_syntax_error
/data/module/Smarty/libs/Smarty_Compiler.class.php(2256): Smarty->_trigger_fatal_error
/data/module/Smarty/libs/Smarty.class.php(1815): Smarty->trigger_error
/data/module/Smarty/libs/Smarty.class.php(1093): trigger_error


現在確認しているのはR21548時点での下記ファイルのL215〜218付近です。
/data/Smarty/templates/default/shopping/confirm.tpl


<td class="alignC"><!--{$item.quantity}--></td>
<!--{* XXX 購入小計と誤差が出るためコメントアウト
<td class="alignR"><!--{$item.total_inctax|number_format}-->円</td>
*}-->


----------------
EC CUORE 株式会社クオーレ
カスタマイズ御相談下さい。

yoshimoto
投稿日時: 2012/4/4 18:03
対応状況: −−−
EC-CUBE開発チーム
登録日: 2012/1/13
居住地:
投稿: 16
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました
お世話になっております。
株式会社ロックオンの吉本です。

検証ありがとうございます!

> プラグイン有効無効時にキャッシュが消えている事を確認せずに書いておりました。
こちらプラグインのインストール時・アンインストール時にコンパイルファイルが削除される仕様となっています。


> ただ、管理者画面全てに影響があるプラグインの場合は、有効、無効を切り替えた場合、prefilter_transformのケースではキャッシュが消えない(消すタイミングが悪い?)です。
こちら具体的にはどういった事でしょうか?


> outputfilter_transformのケースでは、有効にした直後の画面で、outputfilter_transformのフックポイントが動いていない模様です。
こちらですが、プラグイン管理ではプラグイン機能が動作しない仕様となっています。
SC_View::prefilter_transform内のSC_Helper_Plugin_Ex::getSingletonInstance($this->objPage->plugin_activate_flg);
でplugin_activate_flgを渡しています。
これはプラグイン管理ではfalseが入り、全てのプラグインが実行されません。
背景としましては管理画面のプラグインのアップデート処理の仕様によるものです。


> Smartyコメント内に、'<!--{}-->'で囲まれた文字列があり、当該テンプレートファイルをtransformしようとするとシステムエラーになります。
こちらご報告ありがとうございます。
調査させて頂きます。


引継ぎよろしくお願いいたします。
ECCUORE
投稿日時: 2012/4/5 15:07
対応状況: −−−
長老
登録日: 2009/10/22
居住地: 東京
投稿: 248
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました
> > outputfilter_transformのケースでは、有効にした直後の画面で、outputfilter_transformのフックポイントが動いていない模様です。
> こちらですが、プラグイン管理ではプラグイン機能が動作しない仕様となっています。
了解いたしました。

> > ただ、管理者画面全てに影響があるプラグインの場合は、有効、無効を切り替えた場合、prefilter_transformのケースではキャッシュが消えない(消すタイミングが悪い?)です。
> こちら具体的にはどういった事でしょうか?
管理者画面のヘッダナビゲーション部分[<li>タグ]にprefilter_transformさせるようなプラグインですと
プラグイン管理画面で有効化した場合に、先にキャッシュPHPが作成されてしまうので
他管理画面に遷移した時にもキャッシュを見に行ってしまい、prefilter_transformが動作しないという事象が起きています。
上記にあります、「プラグイン管理画面でプラグイン機能が動作しない」ことが原因だと思われます。


----------------
EC CUORE 株式会社クオーレ
カスタマイズ御相談下さい。

yoshimoto
投稿日時: 2012/4/5 21:27
対応状況: −−−
EC-CUBE開発チーム
登録日: 2012/1/13
居住地:
投稿: 16
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました
ECCUORE 様

株式会社ロックオン吉本です。
ご説明ありがとうございました!
理解致しました。

チケット登録させて頂きました。
http://svn.ec-cube.net/open_trac/ticket/1736
http://svn.ec-cube.net/open_trac/ticket/1737

#1737には修正も既に入れております。
少し仕様変更となります。

今までupdateの処理はプラグインクラスに記述していましたが別ファイルに切り出す事にしました。
(サンプルのプラグインは後で修正しておきます。)

そうする事で、全てのページでプラグインが実行される事になります。

引き続きよろしくお願いいたします。
adachi
投稿日時: 2012/4/25 17:16
対応状況: −−−
EC-CUBE開発チーム
登録日: 2007/2/14
居住地: 大阪
投稿: 93
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました
ECCUORE 様

お世話になります。
株式会社ロックオン足立です。

ご報告いただきました、transformの不具合ですが、
以下changesetで修正いただいていております。

http://svn.ec-cube.net/open_trac/changeset/21775

一度transformの動作状況等、ご確認いただけますと幸いです。

今後ともどうぞよろしくお願いいたします。
hidekota2
投稿日時: 2012/6/20 13:34
対応状況: −−−
半人前
登録日: 2012/6/3
居住地:
投稿: 21
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました
チェンジセット21651のどの辺が

dtb_index_listを作成するときに

Specified key was too long; max key length is 1024 bytes

が発生する部分への対応になるのでしょうか?
riyuwu
投稿日時: 2012/7/13 18:26
対応状況: −−−
一人前
登録日: 2012/4/11
居住地: 関西
投稿: 94
Re: 【リリース】EC-CUBE2.12.0 α版をリリースいたしました


紀利です。
ご説明ありがとうございました!
理解致しました。
« 1 2 (3)
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,860名です
総投稿数は109,996件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1294
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.