
Доброго времени суток! Помогите, пожалуйста, разобраться.
Создал вкладку дополнительно на странице товара. Теперь хочу вывести в данной вкладке ссылки и другую информацию, но почему то ничего не выходит. Сама вкладка на странице товара появилась. Поля в админке тоже появились, я их заполнил, но на сайте инфа с полей не появилась. Может что то упустил. Код прилагаю и скрины прилагаю.
Создал вкладку дополнительно на странице товара. Теперь хочу вывести в данной вкладке ссылки и другую информацию, но почему то ничего не выходит. Сама вкладка на странице товара появилась. Поля в админке тоже появились, я их заполнил, но на сайте инфа с полей не появилась. Может что то упустил. Код прилагаю и скрины прилагаю.
PHP:
//Своя вкладка
add_filter('woocommerce_product_tabs','add_tabs');
function add_tabs($tabs){
$tabs['new_tab'] = array(
'title' => 'Дополнительно',
'priority' => 40,
'callback' => 'my_product_description_tab'
);
return $tabs;
};
//Ссылка
add_action( 'woocommerce_product_options_general_product_data', 'demolink_woo_add_custom_fields' );
function demolink_woo_add_custom_fields() {
echo '<div class="options_group">';// Группировка полей
// текстовое поле
woocommerce_wp_text_input( array(
'id' => '_demo_name',
'label' => __( 'Надпись ссылки', 'woocommerce' ),
'placeholder' => 'Надпись',
'desc_tip' => 'true',
'description' => __( 'Укажите надпись', 'woocommerce' ),
) );
// текстовое поле для ссылки
woocommerce_wp_text_input( array(
'id' => '_demo_link',
'label' => __( 'Ссылка', 'woocommerce' ),
'placeholder' => 'Ссылка',
'desc_tip' => 'true',
'data_type' => 'url',
'description' => __( 'Введите ссылку', 'woocommerce' ),
) );
echo '</div>';
}
/*
* Сохраняем значение полей
*/
add_action( 'woocommerce_process_product_meta', 'demolink_woo_custom_fields_save', 10 );
function demolink_woo_custom_fields_save( $post_id ) {
update_post_meta( $post_id, '_demo_link', esc_url( $_POST['_demo_link'] ) );
update_post_meta( $post_id, '_demo_name', esc_attr( $_POST['_demo_name'] ) );
}
add_action( 'my_product_description_tab', 'demolink_get_link' );
function demolink_get_link() {
global $post, $product;
$demo_link = get_post_meta( $post->ID, '_demo_link', true );
$demo_name = get_post_meta( $post->ID, '_demo_name', true );
if ( $demo_link ) {
$demo_ln = '<div class="demo-link">';
$demo_ln .= '<a href="' . $demo_link . '" class="block_link alt" target="_blank">' . $demo_name . '</a>';
$demo_ln .= '</div>';
echo $demo_ln;
}
}
Вложения
Последнее редактирование: