2017-09-06 12 views
0

WC_CUSTOMER database as per these instructionsの代わりに使用しています。私はその時点で実装に苦労しています。新しいWooCommerceデータストアを自動ロードする方法

私はそうのように、新しいクラスをスワップアウトするカスタムプラグインを作成する必要があることを想定しています:

function myplugin_set_wc_customer_data_store($stores) { 
    $stores['customer'] = 'WC_Custom_Customer_Data_Store'; 
    return $stores; 
} 

add_filter('woocommerce_data_stores', 'myplugin_set_wc_customer_data_store'); 

新しいクラスは、プラグインのディレクトリの下にsrcフォルダに存在していますか?または、Woocommerceプラグインの/ includes/data-storesフォルダの下に他のデータストアと一緒に移動する必要がありますか?

いずれかまたは両方の場合、どのようにクラスが読み込まれますか?

これまでのところ、私はこのエラーを取得しておいてください。

からスローされ

Fatal error: Uncaught Exception: Invalid data store. in /app/public/plugins/woocommerce/includes/class-wc-data-store.php:92

:後でnew WC_Custom_Customer_Data_Store()のようなものが呼び出される時点で

if (! class_exists($store)) { 
    throw new Exception(__('Invalid data store.', 'woocommerce')); 
} 

答えて

0

。したがって、このクラスを呼び出す前にこのクラスを存在させる必要があります。たとえば、myplugin_set_wc_customer_data_store関数内にこのクラスを持つphpファイルを含めることができます。または、initにフックアクションを追加することができます。

+0

はい、私のプラグインでクラスが必要になると、読み込まれて作業されました...私はいくつかの魔法のWordpressオートローディングを期待していました...ありがとう!! – iKode

関連する問題