管理画面の受注リストに項目の追加
-
投稿者投稿
-
2015年2月25日 2:43 PM #73591maruo参加者
——————————————-
WordPress のバージョン:4.1.1
Welcart のバージョン: 1.4.12.1412031
ご利用のテーマ:Pinboard
症状を確認したブラウザ:
サーバー(会社名、サービス名):ロリポップ
SSLの利用:利用
WordPress のパーマリンク設定:カスタム「/%post_id%.html」
——————————————–Welcart Management → 受注リスト
を選択した際に出てくるリストの項目に「管理者メモ」を追加したいのですが、やり方が分かりません。ご伝授願えないでしょうか??以上
2015年2月25日 7:14 PM #73608nanbuキーマスターこんにちは。
フックを使ってカスタマイズすることになります。
フックの使い方はご存知ですか?2015年2月25日 8:32 PM #73609maruo参加者nanbu様へ
私はプログラマーですので、WPのフックは存じております。
また、Welcartのこういった改造もフックにて改造するのも存じております。
しかし「Welcart」専用のフックの仕様、調べ方、記述先などは分かっておらず、質問している次第でございます。以上
2015年2月28日 10:32 AM #73624nanbuキーマスター了解です。背景がわからないとどこから説明して良いか分からない物で。
丁寧のご質問いただくとしましたら、何がわからないのか具体的にご質問いただけると助かります。では、usc-e-shop/includes/order_list.php を見て下さい。
カラムを後ろに追加するだけでしたら、フック’usces_filter_order_list_header’と’usces_filter_order_list_detail’だけで実現できます。管理者メモのデータは、この場合
$usces->get_order_meta_value('order_memo', $array['ID'])
とすれば取得できます。試してみて下さい。
カラムを途中に入れたい場合は、データベースのSQLを操作する必要が出てきますので、さらに複雑になってきます。2015年3月11日 5:08 PM #73706maruo参加者nanbu様へ
ご返答が遅くなりました。
ヒントいただき、ありがとうございました。その後このシステムを使っていて、やはりこの記事のタイトル通り「管理画面の受注リストに項目の追加」をしたく格闘中です。前回ご返答頂いた「カラムを途中に入れたい場合」を目指しておりまして、プログラムを眺めながら、やはりつまづきましたので、ご伝授お願い致します。
■解析できた事
usc-e-shop/includes/order_list.php
$arr_column
に、項目を追加すると、管理画面のリストに追加したい項目が表示されるusc-e-shop/class/orderList.class.php
・SetSelectsクラスの「$select」に、追加したいフィールド(SQLで記述)を追加
・SetJoinTablesクラスの「$join_table」に、追加したいセレクト分を記載
→これで「rows」の中に、任意の項目が追加された。しかし、HTML主力先である
usc-e-shop/includes/order_list.phpのフック「usces_filter_order_list_header」から、追加した項目が呼び出されないで、フックの定義先を探すが見つからず。という感じです。
聞きたいことは、いくつかあるのでまとめておきます。1.「usces_filter_order_list_header」の処理はどこに記述されているのですか??
2.今探ってる状態は最終的にはフックで引っ掛けて、追記していくのは分かりますが、これを実装する方法がわかりません。以下実際に追加した内容を記載しておきます。
=============================================================
「管理者メモ」を任意の場所に追加する
1.order_list.phpの「$arr_column」に以下を追加
__(‘Order memo’, ‘usces’) => ‘order_memo’2.orderList.class.phpのSetSelectsクラス「$select」に以下を追加
“meta02.meta_value AS order_memo”3.orderList.class.phpのSetJoinTablesクラス「$join_table」に以下を追加
” LEFT JOIN {$meta_table} AS meta02 ON ID = meta02.order_id AND meta02.meta_key = ‘order_memo'”.” \n”これで、rowsの中のデータに、管理者メモ(order_memo)が呼びだしされてますが、管理画面の部分には、項目があるけど表示されていません。
=============================================================お手数ですが、ご返答お待ちしております。
以上
2015年3月19日 4:13 AM #73749nanbuキーマスター「usces_filter_order_list_header」と言うのはフックのハンドルですので、何か処理を行っているものではございません。
なお、WordPressのフックに関しましては、色んな情報がございますので他のサイトも検索してみて下さい。
-
投稿者投稿
- このトピックに返信するにはログインが必要です。