search icon

WooCommerce: Variationer i listevisning

Ønsker man at vise, hvilke produktvariationer, der er tilgængelige i en webshop, i listevisningen under f.eks. kategorier eller på forsiden kan det gøres som vist i koden længere nede på siden.

//TILFØJ PRODUKTVARIATIONER I LISTEVISNING

//FUNKTIONEN, DER LAVES SENERE TILFØJES HOOKET
add_action( 'woocommerce_after_shop_loop_item', 'ew_echo_stock_variations_loop' );
   
function ew_echo_stock_variations_loop(){

  //$product SÆTTES GLOBAL, SÅ DEN ER TILGÆNGELIG INDE I FUNKTIONEN
  global $product;

  //HVIS PRODUKTET ER VARIABELT	
  if ( $product->get_type() == 'variable' ) {

    //VARIATIONER GEMMES I $variations
    $variations = $product->get_available_variations();

    //ARRAY TIL AT GEMME VARIATION, DER ER TILGÆNGELIGE
    $ew_product_variations = array();
		
    //LOOPER GENNEM HVER VARIATION
    foreach ( $variations as $variation ) {

      //HVIS DENNE VARIATION ER TILGÆNGELIG
      if( $variation[ 'is_in_stock' ] ){
				
        //LOOPER GENNEM VARIATIONENES ATTRIBUTES FOR AT FÅ VARIATIONENS NAVN
        foreach ( $variation['attributes'] as $attr_name => $attr_value ){

          //VARIATIONENS NAVN TILFØJES TIL $ew_product_variations
          $ew_product_variations[] = $attr_value;

        }
      }
    }

    //HVIS DER ER TILGÆNGELIGE VARIATIONER
    if( $ew_product_variations ) {

      //SORTER VARIATIONER
      //VIRKER KUN, HVID NUMERISK ELLER ALFABETISK
      asort( $ew_product_variations );

      //UDSKRIV VARIATIONER MED LINK TIL PRODUKTET
      echo '<div class="ew-shop-variation-outer">';

      foreach ( $ew_product_variations as $prod_var ) {

        echo '<span class="ew-shop-variation">';

        echo '<a href="' . get_the_permalink() . '">';
          echo $prod_var;
        echo '</a>';
					
        echo '</span><!--/.ew-shop-variation-->';
      }
				
      echo '</div><!--/.ew-shop-variation-outer-->';
    }
}

Læs mere om WooCommerce Hooks på https://businessbloomer.com/woocommerce-visual-hook-guide-archiveshopcat-page/

Skriv et svar

Verified by MonsterInsights