Woocommerce从产品页面中删除类别
I've recently been working with Rohil_PHPBeginner who has been excellent and solved a big problem i had.
I need to now remove a particular category from the category list on the woo commerce product page.
Example: https://www.artgiftedbygod.co.uk/online-art-shop/jane-brighton/dawn-2/
You will see the Title, Artist name (which Rohil_PHPBeginner) solved, Price, Description, Availability, Buy Button, and then categories.
I would like to show all categories except the Artist name as this is now displayed under its own section.
This is the code that is found on the PHP page:
<?php
/**
* Single Product Meta
*
* @author WooThemes
* @package WooCommerce/Templates
* @version 1.6.4
*/
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
global $post, $product;
$cat_count = sizeof( get_the_terms( $post->ID, 'product_cat' ) );
$tag_count = sizeof( get_the_terms( $post->ID, 'product_tag' ) );
?>
<div class="product_meta">
<?php do_action( 'woocommerce_product_meta_start' ); ?>
<?php if ( wc_product_sku_enabled() && ( $product->get_sku() || $product->is_type( 'variable' ) ) ) : ?>
<span class="sku_wrapper"><?php _e( 'SKU:', 'woocommerce' ); ?> <span class="sku" itemprop="sku"><?php echo ( $sku = $product->get_sku() ) ? $sku : __( 'N/A', 'woocommerce' ); ?></span>. </span>
<?php endif; ?>
<?php echo $product->get_categories( ', ', '<span class="posted_in">' . _n( 'Category:', 'Categories:', $cat_count, 'woocommerce' ) . ' ', '.</span>' ); ?>
<?php echo $product->get_tags( ', ', '<span class="tagged_as">' . _n( 'Tag:', 'Tags:', $tag_count, 'woocommerce' ) . ' ', '.</span>' ); ?>
<?php do_action( 'woocommerce_product_meta_end' ); ?>
`
我最近一直在与Rohil_PHPBeginner合作,他一直很出色并解决了我遇到的一个大问题。 p>
我现在需要从woo commerce产品页面的类别列表中删除特定类别。 p>
示例: https://www.artgiftedbygod.co.uk/online-art-shop/jane -brighton / dawn-2 / p>
您将看到标题,艺术家姓名(Rohil_PHPBeginner)解决,价格,描述,可用性,购买按钮,然后是类别。
我想显示除艺术家名称以外的所有类别,因为它现在显示在它自己的部分下。 p>
这是在上面找到的代码 PHP页面: p>
&lt;?php
/ **
* Single Product Meta
*
* @author WooThemes
* @package WooCommerce / Templates
* @version 1.6.4
* /
if(!defined('ABSPATH'))退出; //如果直接访问则退出
global $ post,$ product;
$ cat_count = sizeof(get_the_terms($ post-&gt; ID,'product_cat'));
$ tag_count = sizeof(get_the_terms($ post-&gt; ID,'product_tag'));
?&gt;
&lt; div class =“product_meta”&gt;
&lt;?php do_action('woocommerce_product_meta_start'); ?&gt;
&lt;?php if(wc_product_sku_enabled()&amp;&amp;($ product-&gt; get_sku()|| $ product-&gt; is_type('variable'))):?&gt;
\ n&lt; span class =“sku_wrapper”&gt;&lt;?php _e('SKU:','woocommerce'); ?&GT; &lt; span class =“sku”itemprop =“sku”&gt;&lt;?php echo($ sku = $ product-&gt; get_sku())? $ sku:__('N / A','woocommerce'); ?&GT;&LT; /跨度取代。 &lt; / span&gt;
&lt;?php endif; ?&gt;
&lt;?php echo $ product-&gt; get_categories(',','&lt; span class =“posted_in”&gt;'。_ n('Category:','Categories:',$ cat_count, 'woocommerce')。'','。&lt; / span&gt;'); ?&gt;
&lt;?php echo $ product-&gt; get_tags(',','&lt; span class =“tagged_as”&gt;'。_ n('Tag:','Tags:',$ tag_count, 'woocommerce')。'','。&lt; / span&gt;'); ?&gt;
&lt;?php do_action('woocommerce_product_meta_end'); ?&gt;
code> pre>
` p>
div>
Try this :
<?php
/**
* Single Product Meta
*
* @author WooThemes
* @package WooCommerce/Templates
* @version 1.6.4
*/
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
global $post, $product;
$cat_count = sizeof( get_the_terms( $post->ID, 'product_cat' ) );
$tag_count = sizeof( get_the_terms( $post->ID, 'product_tag' ) );
?>
<div class="product_meta">
<?php do_action( 'woocommerce_product_meta_start' ); ?>
<?php if ( wc_product_sku_enabled() && ( $product->get_sku() || $product->is_type( 'variable' ) ) ) : ?>
<span class="sku_wrapper"><?php _e( 'SKU:', 'woocommerce' ); ?> <span class="sku" itemprop="sku"><?php echo ( $sku = $product->get_sku() ) ? $sku : __( 'N/A', 'woocommerce' ); ?></span>.</span>
<?php endif; ?>
<?php
$cat_array = array();
$term_list = wp_get_post_terms($post->ID, 'product_cat', array("fields" => "all")); //get array containing category details
foreach($term_list as $cat_list)
{
array_push($cat_array, $cat_list->term_id);
}
$cat_id = ($term_list[0]->parent); //get parent category ID from the above generated array
$termchildren = get_term_children( '90' , 'product_cat' ); //New Line in Updattion -1
$final_result = array_diff($cat_array,$termchildren);
$new_ary = array_values($final_result);
$final_result_size = sizeof($new_ary);
$i=0;$j=0;
for($i=0;$i<$final_result_size;$i++){
$new_cat_id = $new_ary[$i];
$cat_url = get_term_link ($new_cat_id, 'product_cat'); //get link of parent ID
$term = get_term( $new_cat_id, 'product_cat' ); //Get Name of the parent from the parent ID
$name = $term->name; //Store it into an varialbe
if($j == 0):
echo "Categories: ";
endif;
echo "<a href='".esc_url($cat_url)."'>".$name."</a>";
if($i == ($final_result_size-1)):
echo "";
else:
echo ", ";
endif;
$j++;
}
?>
<?php echo $product->get_tags( ', ', '<span class="tagged_as">' . _n( 'Tag:', 'Tags:', $tag_count, 'woocommerce' ) . ' ', '.</span>' ); ?>
<?php do_action( 'woocommerce_product_meta_end' ); ?>
</div>