21

私はWooCommerceを初めて利用しています。とにかく自分のテーマを作成したいので、ガイドラインに沿ってコアテンプレートファイル全体を/mywordpresstheme/woocommerce/にコピーしました。WooCommerce - フックによって生成されたHTMLはどこで編集できますか?

すべてがうまく動作し、テンプレートをうまく編集しています。

しかし、WooCommerceでのフックとアクションの仕組みは私を困惑させており、生成されたHTMLの特定の部分がどこから来ているのかは分かりません。

例えば、content-product.phpで、画像を取得するフックがあります:

<?php 
/* 
* woocommerce_before_shop_loop_item_title hook 
* 
* @hooked woocommerce_show_product_loop_sale_flash - 10 
* @hooked woocommerce_template_loop_product_thumbnail - 10 
*/ 
do_action('woocommerce_before_shop_loop_item_title'); 
?> 

しかし、これは何ですが?それはどこから来たのですか??アクション名に、編集目的でHTMLがどこにあるのかを知る手掛かりはありますか?

私はWooCommerceの「フックとフィルタ」の記事を読んだことがありますが、大文字と小文字を区別してどこで変更するかについては何も説明していません。

ご協力いただければ幸いです。

私はこのシステムを初めて使いました。

ありがとう、 Mikey。

答えて

50

これはなんですか?それはどこから来たのですか?? のアクション名に、 の編集目的のHTMLがどこにあるのかを見つける手がかりがありますか?

これはaction hookです。それは何も言わずに何もしていませんが、コメントに記載されている機能はhookであり、この関数がトリガされたときに実行されます。コメントでは、機能woocommerce_template_loop_product_thumbnailがサムネイルを取得する責任を負う関数であると言います。この機能は、Woocommerceプラグインで見つけることができます。私はサブライム・テキスト・エディタを使用していますが(他の人も同様にそうするでしょう)、そのフレーズのフォルダ全体を検索して、それがどのファイルに入っているかを正確に教えてくれます。この場合、それはプラグ可能な関数と呼ばれ、 woocommerce-template.php。プラグイン可能な機能は、あなたのテーマののfunctions.phpに同じ名前の関数の新しいバージョンを定義することを意味し

(現在では2.1 +バージョンではWC-テンプレートhooks.phpと呼ばれています)

function woocommerce_template_loop_product_thumbnail(){ 
    echo "apple"; 
} 

あなたのfunctions.phpに上記を入れたら、Wooのwoocommerce_template_loop_product_thumbnail()の代わりにappleという言葉が表示されます。

私はWooCommerceの「フックとフィルター」に関する記事を読みましたが、それは はどこか、どのように ケースベース用ケースでこれらを変更することについては何も説明しません。

あなたのテーマのfunctions.phpのすべての変更を行い、ケースバイケースで行う必要はありません。すべてのフックとフィルタは同じように動作します。つまり、彼らは学ぶのが最も簡単なことではないので、自分自身に忍耐を持っています。私は、私の頭を包み込むのが特に難しいフィルターを見つけました。

無料昇進のスポットで、私はbasics of WordPress hooks and filtersの記事を書いています(1つの記事はThematicフックのためだと言いますが、フックはフックです)。私のワードプレスのキャリアの始めに。

+1

これはありがたいことですが、正しい方向へ私をうなずける助けとなりました。私はちょうどWooCommerceがもっと良い文書を持っていればいいと思う...彼らは...希少で、最高だ!再度、感謝します。 –

+0

ようこそ。あなたがそれらから何かを購入した場合、彼らは通常、サポートでかなり良いです。 – helgatheviking

+0

偉大な答え、多くの感謝 – alemur

関連する問題