2014-12-22 5 views
1

WooCommerce 기본 템플릿을 간단하게 변경하고 싶습니다. 현재 갤러리는 기본 이미지 바로 아래의 왼쪽에 표시됩니다. 내가 짧은 선전 설명 아래에 오른쪽에 표시하고 싶습니다. 나는 functions.php 파일에 다음 코드를 추가하여이 작업을 수행 할 관리 :WooCommerce 기본 상품 이미지

/*Relocate Product Gallery*/ 

remove_action('woocommerce_before_single_product_summary', 'woocommerce_show_product_images', 20); 

add_action('woocommerce_before_single_product_summary', 'woocommerce-main-image', 20); 

add_action('woocommerce_single_product_summary', 'woocommerce_show_product_thumbnails', 100); 

첫 번째 줄 왼쪽에서 이미지 (메인 갤러리)의 그룹을 제거합니다. 마지막 줄은 갤러리를 내가 원하는 곳에 정확히 놓습니다. 중간 선이 문제입니다. 주요 제품 이미지 만 표시하면되지만 대신 오류가 발생합니다. 내가 주요 제품 이미지라고 부르기 위해 잘못된 이름을 사용하고 있습니까?

+0

어떤 오류가 발생하고 있습니까?나는 또한 함수 콜백이 사용자 하이픈임을 알아 차렸다. 나는 그것이'woocommerce_main_image'이어야한다고 상상한다. – Dre

+0

답장을 보내 주셔서 감사합니다. 하이픈을 밑줄로 변경했지만 같은 결과가 나타납니다. 다음은 전체 오류 메시지에 대한 화면 캡처입니다. [오류의 화면 캡] [1] [1] : http://webauthorings.com/stack/php_error.jpg –

답변

2

고맙습니다! 뛰어난.

/

--- 제품 갤러리에게 ('woocommerce_product_thumbnails', 'woocommerce_show_product_thumbnails', 20)/

remove_action 이동; add_action ('woocommerce_single_product_summary', 'woocommerce_show_product_thumbnails', 100);

1

woocommerce_main_image이라는 기능이 없다는 짧은 대답이 있습니다. 대신 woocommerce_show_product_images을 사용해야합니다. 당신이 선택하면 wc-template-hooks.php 당신은 기본적으로 걸려 있다고 볼 수 있습니다 : 이미 표시되지 왜

add_action('woocommerce_before_single_product_summary', 'woocommerce_show_product_images', 20); 

은 무엇 분명하지 않다 것은 - 아마도 템플릿이 woocommerce_before_single_product_summary 조치를 호출하지 않습니다.


축소판과 별도로 주 이미지를 표시하려고한다고 가정합니다. wc-template-functions.php에서 엿보기가 있습니다. woocommerce_show_product_images()product-image.php 파일이 포함되어있는 것을 확인할 수 있습니다 :

// wc-template-functions.php:716 
wc_get_template('single-product/product-image.php'); // Includes product-image.php 

이 썸네일 표시 이 후크가있는 메인 이미지를 표시합니다

// product-image.php:43 
do_action('woocommerce_product_thumbnails'); // woocommerce_show_product_thumbnails() is hooked to this 

을 다음 중 하나를 수행 할 수 있습니다 create your own copy of product-image.php to override and remove the do_action() 또는 당신은 실제로를 사용하여 미리보기를 표시하는 기능을 풉니 수 있습니다. 당신이 wc-template-hooks.php를 보면 다시는 볼 수 있습니다 :

// wc-template-hooks.php:108 
// This hooks the function to the action 
add_action('woocommerce_product_thumbnails', 'woocommerce_show_product_thumbnails', 20); 

작업 할 수있는 기능에 후킹 무엇이 있다고. 당신은

// This unhooks the function from the action 
remove_action('woocommerce_product_thumbnails', 'woocommerce_show_product_thumbnails'); 

...

테마 functions.php 파일에 ... 넣어이를 제거 할 수 있습니다. 축소판을 다른 위치에 표시하려면 woocommerce_show_product_thumbnails() 함수 또는 wc_get_template('single-product/product-thumbnails.php') 템플릿을 사용하면됩니다. 전자는 단순히 후자를위한 래퍼 함수이다.

휴식을 취할 수있는 분명한 설명이 있어야합니다. 행운을 빕니다.

+0

하이 드레, 답장을 보내 주셔서 감사합니다. 'woocommerce_show_product_images'문제는 갤러리 미리보기 행을 가져 오는 것입니다. 목표는 미리보기 이미지가 오른쪽에 표시되고 주요 단일 제품 이미지가 왼쪽에 표시되도록 이미지를 분할하는 것입니다. 큰 단일 이미지에 대한 단일 변수 이름이없는 것 같습니다. –

+0

나는 위의 내 대답에 확장; 문제는 주 이미지를 표시하는 기능이 있지만 축소판을 표시하는 다른 기능을 실행한다는 것입니다. 위의 대답은 두 함수를 서로 독립적으로 실행하여 두 함수를 모두 독립적으로 실행할 수있는 방법을 설명합니다. – Dre

관련 문제