21

Tôi mới sử dụng WooCommerce. Nhưng dù sao, tôi muốn tạo chủ đề của riêng mình, vì vậy tôi đã làm theo các nguyên tắc và sao chép qua các tệp mẫu lõi tới /mywordpresstheme/woocommerce/.WooCommerce - nơi tôi có thể chỉnh sửa HTML được tạo bằng móc?

Đó là tất cả các công trình tuyệt vời và tôi đang chỉnh sửa các mẫu tốt.

Tuy nhiên, cách móc và hành động hoạt động trong WooCommerce đang gây khó khăn cho tôi và tôi không thể tìm ra nơi các phần nhất định của HTML được tạo ra đến từ đó.

Ví dụ, trong content-product.php, có một cái móc mà được hình ảnh:

<?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'); 
?> 

Nhưng điều này là gì? Nó đến từ đâu?? Có bất kỳ đầu mối nào trong tên hành động như nơi tôi có thể định vị HTML được tạo cho mục đích chỉnh sửa nó không?

Tôi đã đọc bài viết về 'móc và bộ lọc' trên WooCommerce, nhưng nó giải thích không có gì liên quan đến nơi hoặc làm thế nào để thay đổi chúng trên cơ sở từng trường hợp.

Mọi trợ giúp sẽ được đánh giá cao.

Tôi mới tham gia hệ thống này và tôi chắc chắn rằng tôi chỉ đơn giản là tìm kiếm một cái gì đó rất rõ ràng.

Cảm ơn, Mikey.

Trả lời

50

Nhưng đây là gì? Nó đến từ đâu?? Có bất kỳ đầu mối nào trong tên hành động như nơi tôi có thể định vị HTML đang được tạo cho mục đích chỉnh sửa nó không?

Đây là action hook. Nó không phải là làm bất cứ điều gì của chính nó cho mỗi nói, nhưng các chức năng được liệt kê trong các ý kiến ​​hook vào nó và do đó chạy khi chức năng này được kích hoạt. Nó nói trong các ý kiến ​​rằng chức năng woocommerce_template_loop_product_thumbnail là chức năng chịu trách nhiệm cho việc thu nhỏ. Bạn có thể tìm thấy hàm này bên trong plugin Woocommerce. Tôi sử dụng trình soạn thảo văn bản siêu văn bản (mặc dù tôi nghĩ rằng người khác cũng sẽ làm điều này) để tìm kiếm toàn bộ thư mục cho cụm từ đó và nó cho tôi biết chính xác tệp đó là gì. Trong trường hợp này, nó được gọi là hàm cắm và được đặt trong woocommerce-template.php. (Nay Nó được gọi là wc-template-hooks.php trong phiên bản 2.1 trở lên)

Một chức năng cắm có nghĩa là bạn định nghĩa một phiên bản mới của hàm có cùng tên trong functions.php của theme bạn

function woocommerce_template_loop_product_thumbnail(){ 
    echo "apple"; 
} 

Nếu bạn đặt ở trên trong functions.php của bạn sau đó thay vì của Woo woocommerce_template_loop_product_thumbnail() bạn sẽ chỉ nhìn thấy từ táo.

Tôi đã đọc các bài viết về 'móc và các bộ lọc' trên WooCommerce, nhưng nó giải thích gì về nơi hoặc làm thế nào để thay đổi này trên một trường hợp cho hợp cụ thể.

Bạn sẽ thực hiện tất cả thay đổi trong functions.php của chủ đề và không cần thiết phải có trường hợp từng trường hợp. Tất cả các móc và bộ lọc đều hoạt động giống nhau. Điều đó nói rằng, họ không phải là điều dễ nhất để học hỏi để có sự kiên nhẫn với chính mình.Tôi thấy các bộ lọc đặc biệt khó khăn để quấn quanh đầu tôi.

Ở vị trí quảng cáo tự quảng cáo vô cớ, tôi đã viết một loạt bài viết trên basics of WordPress hooks and filters (một bài viết nói về móc Chuyên đề, nhưng móc là móc!) Là tất cả những gì tôi muốn mọi người đã nói với tôi vào đầu sự nghiệp WordPress của tôi.

+1

Cảm ơn vì điều này, đó là sự trợ giúp trong việc gật đầu tôi đúng hướng. Tôi chỉ muốn WooCommerce có tài liệu tốt hơn ... họ ... khan hiếm, tốt nhất! Cảm ơn một lần nữa. –

+0

Bạn được chào đón. Nếu bạn đã mua bất cứ thứ gì từ họ, chúng thường khá tốt với sự hỗ trợ. – helgatheviking

+0

Câu trả lời hay, cảm ơn rất nhiều – alemur

Các vấn đề liên quan