当前位置: 首页 > 知识库问答 >
问题:

如何在wordpress WooCommerce[duplicate]中的产品标题下方添加自定义字段文本

松阳泽
2023-03-14

在WooCommerce中,我想将自定义文本添加到我的产品显示中,这将从产品编辑页面的自定义字段中抓取。

这就是它现在的样子:

您可以在下面看到标题的产品:

网站链接

add_action( 'woocommerce_after_shop_loop_item_title', 'custom_field_display_below_title', 2 );
function custom_field_display_below_title(){
  global $product;

  // Get the custom field value
  $custom_field = get_post_meta( $product->get_id(), '_custom_product_text_field', true );

  // Display
  if( ! empty($custom_field) ){
    echo '<p class="my-custom-field">'.$custom_field.'</p>';
  }
}

共有1个答案

况唯
2023-03-14

您需要将完整的代码添加到主题的functions.php

// Display Fields
add_action('woocommerce_product_options_general_product_data', 'woocommerce_product_custom_fields');

// Save Fields
add_action('woocommerce_process_product_meta', 'woocommerce_product_custom_fields_save');

function woocommerce_product_custom_fields()
{
    global $woocommerce, $post;
    echo '<div class="product_custom_field">';
    // Custom Product Text Field
    woocommerce_wp_text_input(
        array(
            'id' => '_custom_product_text_field',
            'placeholder' => 'Custom Product Text Field',
            'label' => __('Custom Product Text Field', 'woocommerce'),
            'desc_tip' => 'true'
        )
    );
    echo '</div>';
}

function woocommerce_product_custom_fields_save($post_id)
{
    // Custom Product Text Field
    $woocommerce_custom_product_text_field = $_POST['_custom_product_text_field'];
    if (!empty($woocommerce_custom_product_text_field))
        update_post_meta($post_id, '_custom_product_text_field', esc_attr($woocommerce_custom_product_text_field));
    // Custom Product Number Field
    $woocommerce_custom_product_number_field = $_POST['_custom_product_number_field'];
    if (!empty($woocommerce_custom_product_number_field))
        update_post_meta($post_id, '_custom_product_number_field', esc_attr($woocommerce_custom_product_number_field));
    // Custom Product Textarea Field
    $woocommerce_custom_procut_textarea = $_POST['_custom_product_textarea'];
    if (!empty($woocommerce_custom_procut_textarea))
        update_post_meta($post_id, '_custom_product_textarea', esc_html($woocommerce_custom_procut_textarea));
}

您的自定义字段ID是这里的\u custom\u product\u text\u field,您可以像

如果WordPress在更新函数时返回错误。尝试通过FTP上传或使用一些文件管理器插件。

 类似资料:
  • 在WooCommerce中,我想添加自定义文本到我的产品显示,这将从产品的编辑页面中的自定义字段抓取。 这就是现在的样子: 我找到了一些自定义php代码来在产品的页面中添加自定义字段,如下所示: 如何显示产品标题下的自定义域

  • 我想在向url发送请求时添加假用户代理。但它并没有添加假useragent,而是使用默认的useragent。

  • 我试图添加一个文件上传随着无线电输入在一个自定义的wooCommerce页面;其中所有的产品都显示在列表视图中。 自定义页面代码: 用于在列表视图中显示为funtions.php中的不同项/产品的变体 我能够将无线电值添加到购物车 请看一看: 这里是AJAX PHP 这是编辑过的js 此页面仅可供某些用户访问,因此它具有不同的输入字段,价格与单个产品页面对应。客户端不喜欢刷新此页面,所以我不得不添

  • 是否有一种方法可以在WooCommerce订单页面的每个产品下显示我的自定义SKU? 当我编辑产品时,自定义sku显示良好,但它不会显示在产品的订单页面中。我需要在订单上显示此信息,以便Zapier可以将其与产品的Visma帐户软件ArticleID匹配。 此尝试基于如何向WooCommerce产品添加(第二个)自定义sku字段的解决方案?

  • 我在我的WooCommerce产品中添加了一个自定义字段,就像在这个问题/答案中: 在WooCommerce的简短描述之前显示自定义产品字段。 是否可以将此自定义字段添加到产品批量编辑特别页面(可从管理产品列表页面访问)?

  • 有什么方法我可以添加内容从一个自定义产品字段到‘订单完成'WooCommerce电子邮件? 我已经将此代码添加到functions.php中,以便将自定义字段保存到产品元信息中。 上面的代码工作得很好,它显示了所有“订单完成”电子邮件的自定义文本。 但是,我想用自定义产品字段数据替换文本的URL部分。每个产品的数据都不同。 谢了。