2016-03-29 13 views
1

Sekmelerimi yeniden düzenlemek için add_fliter'i denediğimde aşağıdaki hata iletisini görüyorum. call_user_func() parametresi 1 geçerli bir geri arama, wp-content verilen hiçbir dizi veya dize \ temalar belirgin \ olmasını bekler: Burada iadd_filter hataya neden olan tek ürün sekmelerini yeniden sıralamak için

PHP Uyarı Çocuğum-temaların functions.php yapıyorum budur \ WooCommerce hattında tek ürün \ sekmeleri \ tabs.php \ 47

buna tabs.php noktalarında

hat 47 -

-

<?php foreach ($tabs as $key => $tab) : ?> 

<div class="panel entry-content" id="tab-<?php echo esc_attr($key); ?>"> 
    <?php call_user_func($tab['callback'], $key, $tab); ?> 
</div> 
<?php endforeach; ?> 

kullanmaya çalışıyorum filtre eklemek şudur

add_filter('woocommerce_product_tabs', 'woo_reorder_tabs', 98); 
function woo_reorder_tabs($tabs) { 

    $tabs['reviews']['priority'] = 5;   // Reviews first 
    $tabs['description']['priority'] = 10;   // Description second 
    $tabs['additional_information']['priority'] = 15; // Additional information third 

    return $tabs; 
} 

Neyin yanlış olduğunu anlayamıyorum. Lütfen sorunu belirlemeye ve düzeltmeye yardımcı olun.

+0

:

gibi mi? "$ Tabs" parametresi beklediğiniz gibi yapılandırılmamışsa, iyi olmalıdır (woocommerce kullanmıyorum, o nedenle bu filtreyi bilmiyorum). Eğer işlev içeriğini sadece '$ tabs' 'döndürürseniz, çalışır mı? Aksi halde, sorununuz başka bir yerde olabilir. Eğer yaparsa, print_r ($ tabs) '' hangi yapıyı gösterir? – Hobo

+0

Teşekkürler, struc'taki $ tabs ['additional_information'] 'girişini kaldırmıştım ve bu işleve başvurdum. '$ Tabs' içeriğinin yazdırılması, gerekli hata ayıklama adımını sağladı. – Ranju

+0

Serin; Sorunu çözdüğüne sevindim – Hobo

cevap

0

Struc uygulamasında $tabs['additional_information'] girişini kaldırmıştım ve bu işleve başvurdum. Uyarı iletisini gidermek için $tabs içeriğin yazdırılması gerekli hata ayıklama adımını sağladı. Yeniden sıralama işlevinde herhangi bir değişiklik yapılmadı, dizideki var olmayan girdilerden yalnızca bir tanesi hatalı bir durumdu.

0

Evet, bu hiç kullanılmayacak bir sekmeyi kaldırdığınızda çalışır. Ancak Yorumlar sekmesi için bir çözüm değil. Hiçbir şey olmadığında bazı ve gizli olduğunda yorumlar gösterilir. Sorun, yeniden sıralama sekmesiyle çalışmaya başladığınız sırada başlar (yalnızca bu sekmeyi bildirin). Daha sonra woocommerce her zaman beklemeye başlar ve ürün sayfasında herhangi bir inceleme bulunmadığında hata verir. Aynı sorunu daha önce karşı karşıya getirdim

0

.

Eğer isimlerinin değiştirilmesi için farklı işlevler oluşturmak zorunda

, kaldırma, yeniden sipariş veya bunların filtrelerle sekmeleri ekleyerek: Bunu senin soruna neden kodu emin olana

add_filter('woocommerce_product_tabs', 'woo_remove_product_tabs', 98); 

function woo_remove_product_tabs($tabs) { 
    unset($tabs['reviews']); // Remove the reviews tab 
    $tabs['description']['title'] = __('Additional Information'); // Rename the description tab   
    return $tabs; 
} 

add_filter('woocommerce_product_tabs', 'woo_rename_tabs', 98); 

function woo_rename_tabs($tabs) { 
    $tabs['description']['title'] = __('Additional Information'); // Rename the description tab 
    return $tabs; 
} 

add_filter('woocommerce_product_tabs', 'woo_new_product_tab'); 

function woo_new_product_tab($tabs) { 
    $tabs['shipping_returns'] = array(
     'title' => __('Shipping And Returns', 'woocommerce'), 
     'priority' => 50, 
     'callback' => 'woo_new_product_tab_content' 
    ); 
    return $tabs; 
} 

function woo_new_product_tab_content() { 
    echo get_the_title(); 
    echo '<p>Here\'s your new product tab.</p>'; 
} 
İlgili konular