WooCommerce использует вторичный PHP-файл (шаблон отзыва)
Как мне вызвать вторичный PHP-файл? Вот мой код.
add_filter( 'woocommerce_product_tabs', 'woo_simfree_product_tab' );
function woo_simfree_product_tab( $tabs ) {
global $post;
if( function_exists('get_product') ){
$product = get_product( $post->ID );
if( $product->is_type( 'grouped' ) ){
$tabs['simfree-plans'] = array( 'title' => __( 'SIM Free', 'woocommerce' ), 'priority' => 20, 'callback' => 'woo_simfree_product_tab_content' );
return $tabs;
} else {
return $tabs;
}
}
}
function woo_simfree_product_tab_content() {
require get_template_directory() . "/custom-groups/grouped-simfree.php";
}
Проблема в получении файла прямо здесь ... (3-я строка снизу)
require get_template_directory() . "/custom-groups/grouped-simfree.php";
Это не работает и вызывает странное поведение. У меня есть пользовательский файл PHP, который я хочу загрузить в созданную мной вкладку (grouped-simfree.php), но я не знаю, как заставить его работать.
Как правильно загрузить пользовательский файл PHP в WordPress из функции на крючке?
РЕДАКТИРОВАТЬ: (Что не так с этой картиной?) Я на самом деле решил эту проблему несколько лет назад, но теперь я вернулся к той же проблеме, но то же решение по какой-то причине не работает. Источник (мой вопрос с 2014 года):https://stackoverflow.com/questions/30233440/woocommerce-woocommerce-grouped-add-to-cart-function
function woocommerce_grouped_add_to_cart2() {
global $product;
wc_get_template( get_template_directory() . '/custom-groups/grouped-simfree.php', array(
'grouped_product' => $product,
'grouped_products' => $product->get_children(),
'quantites_required' => false
) );
}
function woo_simfree_product_tab_content() {
woocommerce_grouped_add_to_cart2();
}
РЕДАКТИРОВАТЬ 2 Если я переместить пользовательский шаблон в папку шаблонов плагинов woocommerce.
@ Reigel это работает, но теперь я потеряю шаблон при каждом обновлении woocommerce. Я просто понял, что это то, что я сделал пару лет назад, и теперь я понимаю, почему мой сайт потерпел крах, потому что шаблоны были перезаписаны во время обновления woocommerce.
function woocommerce_grouped_add_to_cart2() {
global $product;
wc_get_template( 'single-product/add-to-cart/grouped-simfree.php', array(
'grouped_product' => $product,
'grouped_products' => $product->get_children(),
'quantites_required' => false
) );
}
function woo_simfree_product_tab_content() {
woocommerce_grouped_add_to_cart2();
}