Кнопка «Extra» в разделе «Добавить в корзину» на странице магазина Woocommerce 3 - PullRequest
0 голосов
/ 30 ноября 2018

Я нуб-кодировщик и пытаюсь добавить дополнительную кнопку под кнопкой «Добавить в корзину» на ленте продуктов на моей главной странице.Я использую шорткод для отображения только одной категории продуктов на главной странице моего сайта Woocommerce (в данном случае это целевая страница и микросайт Wordpress).

Проблема в том, что я не могу ее получитьдисплей под кнопкой.У меня есть плагин, который может добавить дополнительную кнопку, которая ссылается на предварительный просмотр документа, но только на отдельных страницах продукта.Итак, я использую этот класс DIV в своем коде и пытаюсь вставить его в ленту продуктов.Я пытаюсь добиться предварительного просмотра печатных книг в формате PDF.Вы можете найти мой код ниже, и я уверен, что это много неправильных оттенков.

Я также не знаю, как кодировать так, чтобы он использовал ссылки, которые я вставляю в бэкэнд для каждого предварительного документа продукта,Сейчас у меня есть общая настройка ссылок для тестирования.

add_action( 'woocommerce_after_shop_loop_item', 'content_after_addtocart_button'); function content_after_addtocart_button() { 
echo '<div class="product_meta wcdp-preview-btn-div"><a class="wcdp-preview-btn thickbox" href="https://www.google.com/">Citește fragment</a></div>'; }

1 Ответ

0 голосов
/ 30 ноября 2018

Следующий код добавит пользовательскую кнопку под кнопкой выхода по умолчанию в архивах Woocommerce как магазин (я увеличил приоритет перехвата, поскольку другие плагины, кажется, создают проблемы) :

add_action( 'woocommerce_after_shop_loop_item', 'add_loop_custom_button', 1000 );
function add_loop_custom_button() {
    global $product;

    $product_link = $product->get_permalink(); // Link to the product (if needed)

    // Define your button link
    $custom_link = home_url( "/something/" ) ;

    // Output
    echo '<div class="product_meta wcdp-preview-btn-div">
    <a class="button thickbox" href="' . esc_url( $custom_link ) .'">' . __( "Citește fragment" )  . '</a>
    </div>';
}

Код помещается в файл function.php вашей активной дочерней темы (или активной темы).Протестировано и работает.


Добавление - Использование с Предварительный просмотр Woo Document плагин:

Чтобы получить ссылку для предварительного просмотра документа для кнопки,вы будете использовать следующее…

Но этот плагин, по-видимому, включает специальный Javascript только для отдельных страниц товара, который не активен на страницах магазинов и архивов, поэтому ссылка открывает окно предварительного просмотра, новместо этого открывает предварительный просмотр в Google docs.

add_action( 'woocommerce_after_shop_loop_item', 'add_loop_custom_button', 1000 );
function add_loop_custom_button() {
    global $product;

    // The PDF doc preview button link
    if( $pdf_doc = $product->get_meta('wcdp_preview_attachment') ){
        $preview_link  = "https://docs.google.com/viewer?url=" . urlencode($pdf_doc['url']);
        $preview_link .= "&embedded=true&TB_iframe=true&width=600&height=550";

        // Output
        echo '<div class="product_meta wcdp-preview-btn-div">
        <a class="button alt thickbox wcdp-preview-btn" href="' . esc_url( $preview_link ) .'">' . $pdf_doc['name']  . '</a>
        </div>';
    }
}

Код находится в файле function.php вашей активной дочерней темы (или активной темы).Ссылка работает.

...