2017-08-01 10 views
1

投稿の投稿者のために、WooCommerceの商品ページから「入札」ボタンを削除/無効/非表示にしたいと考えています。投稿者のWooCommerce製品ページから「入札」ボタンを無効にする

私は、+ WoCommerce + Wp Geine Auctions + WC Vendors AuctionのWCベンダーを使用しています。

画面のリンクを見つけてくださいは、下記のショット:

enter image description here

Link to the product

私はそれがどのようにしてください行うことができますライブ

+0

@LoicTheAztec案内してくださいあなたはこれを取得します。 – Jay

+0

スクリーンショットが追加されました。 http://i.imgur.com/RtMaWRX.png – Jay

+0

あなたはこれを試しましたか?あなたはコメントでそれについて私に尋ねました。それでフィードバックがうまくいくでしょう。ありがとうございます。 – LoicTheAztec

答えて

1

このボタンは、あなたやいくつかのプラグインによって既にカスタマイズされているため、私のテストサーバー上で動作していても100%で動作するとは限りません。

最初の関数は、現在のユーザーがこの製品の作成者(ベンダー)である場合に製品を検出する条件付き関数です。

ショップやアーカイブのページでは、カートに追加ボタンが商品のカスタムボタンに置​​き換えられます。ここではボタンが(ここでは「不可」)カスタムテキストと偽のボタンに置​​き換えている単一の製品ページに終えることが

...

はコードです:

// Custom conditional function (detecting the vendor of a product) 
if(! function_exists('is_the_vendor')){ 
    function is_the_vendor($product){ 

     $current_user_id = get_current_user_id(); 

     $product_id = method_exists($product, 'get_id') ? $product->get_id() : $product->id; 

     // Get the product post object to get the post author 
     $post_obj = get_post($product_id); 
     $post_author = $post_obj->post_author; 

     if($post_author == $current_user_id) return true; 
     else return false; 
    } 
} 

// Shop and archives pages: we replace the button add to cart by a link to the product 
add_filter('woocommerce_loop_add_to_cart_link', 'custom_text_replace_button', 10, 2); 
function custom_text_replace_button($button, $product ) { 

    if(is_the_vendor($product)){ 
     $button_text = __("View product", "woocommerce"); 
     return '<a class="button" href="' . $product->get_permalink() . '">' . $button_text . '</a>'; 
    } else { 
     return $button; 
    } 
} 
// replacing add to cart button and quantities by a custom inactive button 
add_action('woocommerce_single_product_summary', 'replacing_template_single_add_to_cart', 1, 0); 
function replacing_template_single_add_to_cart() { 
    global $product; 

    if(is_the_vendor($product)): 

     // Removing add to cart button and quantities 
     remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30); 

     // The text replacement 
     add_action('woocommerce_single_product_summary', function(){ 

      // set below your custom text 
      $text = __('Not allowed', 'woocommerce'); 

      // Temporary style CSS 
      $style_css = 'style="border: solid 1px red; padding: 0 6px; text-align: center;"'; 

      // Output your custom text 
      echo '<a class="button custom-button" style="background-color: grey !important;">'.$text.'</a>'; 
     }, 30); 

    endif; 
} 

コードあなたのアクティブな子供のテーマ(またはテーマ)のfunction.phpファイル、またはすべてのプラグインファイルに入ります。

このコードはテスト済みであり、動作します。

enter image description here

そして、この:

enter image description here

関連する問題