簡體   English   中英

將產品 SKU 從 Url 重定向到 WooCommerce 中的相關產品

[英]Redirect product SKU from Url to the related product in WooCommerce

我有一個 WooCommerce 商店,我想基本上將產品 SKU 從 Url 重定向到相關產品。

因此,例如對於 Url domain.com/product/SKUID ,用戶應該被重定向到以下 URL domain.com/product/product-name或者應該打開產品頁面。

為 WooCommerce嘗試了這個插件SKU Shortlink,但它最終破壞了我的整個網站,從而產生了“重定向過多”的問題。 任何幫助表示贊賞。

你不需要任何插件......你可以使用以下自定義的簡單函數鈎在template_redirect動作鈎子中,它將從domain.com/product/SKUID重定向到相關的 WooCommerce 產品單頁。

該代碼使用內置函數wc_get_product_id_by_sku()從產品 sku 中檢索產品 ID。

然后,如果產品 sku 與現有產品匹配,則用戶將被重定向到產品單頁。

編碼:

add_action('template_redirect', 'sku_product_redirect');
function sku_product_redirect() {
    // Get the sku string from Url
    $sku = get_query_var('product');
    
    if ( ! empty( $sku ) ) {
        // Get the product Id from a product sku string
        $product_id = (int) wc_get_product_id_by_sku( $sku );
        
        if( $product_id > 0 ) {
            wp_safe_redirect( get_permalink($product_id) );
            exit;
        }
    }
}

代碼位於活動子主題(或活動主題)的 functions.php 文件中。 測試和工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM