Добавить термин бренда woocommerce к данным заказа администратора выше названия продуктаPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Добавить термин бренда woocommerce к данным заказа администратора выше названия продукта

Сообщение Anonymous »

(называемый «Banish») Мы используем на сайте бренды WooCommerce, но должны показать бренд рядом с сайтом именем, как для клиентов, так и для администраторов, ответственных за выбор акций. Мне удалось вставить название бренда, используя крючки на страницах отдельных продуктов, CART, оформлении и по электронной почте. Мне нужно добавить бренд для каждого продукта на экраны заказа администратора в бэкэнд.add_action('woocommerce_before_order_itemmeta','woocommerce_before_order_itemmeta',10,3);

function woocommerce_before_order_itemmeta($item_id, $item, $product){
echo '
'.get_the_term_list($product->id, 'product_brand').'
';
}
< /code>
Тем не менее, это ставит бренд ниже мета - как я могу изменить это, чтобы он появился выше (или даже лучше, прежде чем название продукта на каждом элементе). См. Связанный скриншот ниже, где бренд (в данном случае, называемый «Banish»), появляется под элементом Meta.

update 'woocommerce_order_item_name' крючок, а также «woocommerce_cart_item_name 'и' woocommerce_cart_item_name 'крючки, но ни один из них не повлияет на страницы порядка редактирования. Вот набор крючков, которые в настоящее время развернуты: < /p>
// Utility: Get the product brand term names (from the product ID)
function wc_get_product_brand( $product_id ) {
return implode(', ', wp_get_post_terms($product_id, 'product_brand', ['fields' => 'names']));
}
// Display product brand in Cart and checkout pages
add_filter( 'woocommerce_cart_item_name','customizing_cart_item_name', 10, 3 );
function customizing_cart_item_name( $product_name, $cart_item, $cart_item_key ) {
$product = $cart_item['data']; // The WC_Product Object
$permalink = $product->get_permalink(); // The product permalink

if( $brand = wc_get_product_brand( $cart_item['product_id'] ) ) {
if ( is_cart() )
return sprintf('%s %s', esc_url($permalink), $brand, $product->get_name());
else
return $brand . ' ' . $product_name;
}
return $product_name;
}

// Display product brand in order pages and email notification
add_filter( 'woocommerce_order_item_name', 'customizing_order_item_name', 10, 2 );
function customizing_order_item_name( $product_name, $item ) {
$product = $item->get_product(); // The WC_Product Object
$permalink = $product->get_permalink(); // The product permalink

if( $brand = wc_get_product_brand( $item->get_product_id() ) ) {
if ( is_wc_endpoint_url() )
return sprintf('%s %s', esc_url($permalink), $brand, $product->get_name());
else
return $brand . ' ' . $product_name;
}
return $product_name;
}

// Display brand name on single product pages
/*
* Increase `1` on line 7 to move position of brand name
* */
add_action( 'woocommerce_single_product_summary','wc_brands_add_brand_name', 4 );
function wc_brands_add_brand_name() {
global $product;
$brands = implode(', ', wp_get_post_terms($product->get_id(), 'product_brand', ['fields' => 'names']));
echo "" . $brands . "";
}

//Display product brand in admin edit orders screens
add_action('woocommerce_before_order_itemmeta','woocommerce_before_order_itemmeta',10,3);
function woocommerce_before_order_itemmeta($item_id, $item, $product){
echo '
'.get_the_term_list($product->id, 'product_brand').'
';
}


Подробнее здесь: https://stackoverflow.com/questions/796 ... oduct-name
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»