cari

Rumah  >  Soal Jawab  >  teks badan

Tidak pasti mengapa pemberitahuan pembolehubah tidak ditentukan cuba mendapatkan 'id' produk apabila menambahkan medan ACF pada lajur tersuai?

Saya telah menambahkan lajur tersuai dalam halaman produk WooCommerce saya dalam papan pemuka pentadbir, tetapi apabila cuba mengisi lajur dengan menambahkan 2 tetapan medan ACF tersuai untuk jenis siaran -> Produk, saya mendapat mesej ralat ini tentang setiap satu daripadanya ralat Nyahpepijat lajur tersuai pemberitahuan yang disenaraikan pada setiap produk.

Nota: Pembolehubah tidak ditentukan: produk terletak di /./././wp-content/themes/bpa/functions.php baris 923

Nota: Mencuba mendapatkan "id" produk bukan objek /./././wp-content/themes/bpa/functions.php baris 923

Bolehkah seseorang membantu menjelaskan kesalahan yang saya lakukan untuk mendapatkan pembolehubah yang tidak ditentukan?

Baris 923 ialah:

$product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;

Adakah kerana saya menggunakan kaedah tandas lama atau sebagainya?

Ciri penuh:

// Populate column
function woo_product_rmreference_column_data( $column ) {
    global $post;

    if ( $column == 'rm_reference' ) {
            
        // 
            $product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;
        
            // Get ACF Fields
            $reference = get_field( 'property_reference', $product_id );
            $address = get_field( 'location', $product_id );

            // Output
            echo ($reference . $address) ? '<div>'.$reference.' - '.$address.'</div>' : '<div>Not found!</div>';
    }
}
add_action( 'manage_product_posts_custom_column' , 'woo_product_rmreference_column_data', 10, 2 );

P粉450744515P粉450744515279 hari yang lalu432

membalas semua(1)saya akan balas

  • P粉668113768

    P粉6681137682024-02-22 10:56:00

    Untuk tontonan sesiapa sahaja. Jika menggunakan $product dan $post, maka anda perlu menggunakan $product global dan $post global untuk mengaksesnya.

    global $product;
    
    $product_id = $product->get_id();

    balas
    0
  • Batalbalas