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_processvà woocommerce_before_checkout_processbất cứ nơi nào trong các tập tin! Họ làm gì?
do_actionmã 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().