Tôi đã đọc về hook và hành động và tôi biết rằng khi chúng ta thấy do_action('some_hook')
nó có nghĩa là một nơi nào đó add_action('some_hook', function() {...});
hoặc chức năng some_hook()
tồn tại trong một chủ đề functions.php
.
Nhưng nó là gì?! :
Từ thương mại điện tử / bao gồm / class-wc-checkout.php dòng # 943:
public function process_checkout() {
try {
/////////////
do_action( 'woocommerce_before_checkout_process' ); <----!!!
if ( WC()->cart->is_empty() ) {
throw new Exception( sprintf( __( 'Sorry, your session has expired. <a href="%s" class="wc-backward">Return to shop</a>', 'woocommerce' ), esc_url( wc_get_page_permalink( 'shop' ) ) ) );
}
do_action( 'woocommerce_checkout_process' ); <-----!!!
Tôi không thể tìm thấy woocommerce_checkout_process
và woocommerce_before_checkout_process
bất cứ nơi nào trong các tập tin! Họ làm gì?
do_action
mã của mình (trừ khi bạn đang xác định hook của chính mình không phải là trường hợp ở đây). Bạn sẽ sử dụngadd_action()
.