WordPress: Uso de wp_set_object_terms (crear relación entre objetos y taxonomías)
wp_set_object_terms( En t $object_id, cadena|int|matriz términos $, cadena $taxonomía, booleano $append = falso)
1. Parámetros
$object_id
ID de objeto, como ID de publicación.
$érminos
El principal problema radica aquí.
Si el tipo de datos es una cadena, la cadena se utilizará como un slug. Si el término del slug existe, se creará una relación entre el objeto y el término. Si no existe, el término del slug será primero se creará, y luego se creará el objeto y el término Relación.
Si el tipo de datos es un número entero, este valor se utilizará como ID del término. Si el término con este ID existe, se asociará este término.
Si el tipo de datos es una matriz, no importa lo que intente, no puedo crear una relación entre el objeto y el término. Entonces, para las matrices, uso un bucle foreach para crear cada relación.
$taxonomía
Babosa de taxonomía, cuerda.
$apend
Si es falso, la relación entre el objeto original y el término se sobrescribirá y actualizará. Si es cierto, se crea una nueva relación, es decir, se agrega una nueva relación de término entre el objeto y la misma taxonomía.
2. Código
foreach ($custom_terms as $key => $value) { if (is_array($value)) { foreach ($value as $k => $v) { wp_set_object_terms($postid,(int)$v,$key,true); //Misma taxonomía ($key), use verdadero para crear relaciones entre todos los términos y objetos de la matriz. } }else{ wp_set_object_terms($postid,(int)$value,$key); // Los datos transmitidos desde la interfaz son todas cadenas. Para garantizar que $value sea un número entero, se utiliza (int). } }
3. Regreso
(matriz|WP_Error) ID de taxonomía de términos de los términos afectados o WP_Error sobre el fracaso.
4. Resumen
Los parámetros de muchas funciones de WordPress, como los parámetros de wp_set_object_terms, pueden usar cadenas, números o incluso matrices. Sin embargo, según mi propia experiencia, en principio, si puede usar identificaciones digitales, intente usar identificaciones digitales, y si puede prescindir de matrices, no use matrices. De esta manera, a menudo se reducirán algunos problemas.