Copiez un terme de taxonomie dans le titre de poste pour un certain type de message personnalisé
-
30-10-2019 - |
Question
J'utilise des formulaires Gravity pour permettre aux utilisateurs de créer des publications à partir de l'avant.
Cependant, la façon dont ce site que je construis fonctionnera, un post_type spécifique est essentiellement juste un message "de données". Il existe une taxonomie spécifique dont les conditions sont en fait le "titre" de l'ensemble de données.
J'ai déjà trouvé un moyen de masquer le champ "Title" sous les formulaires de gravité, mais je l'ai toujours présent sur le formulaire (pour une raison quelconque, ils verrouillent les "Post_type" et le "Post Status" dans le champ `` Title '' dans l'interface graphique, J'ai donc surchargé sa logique conditionnelle pour le forcer à toujours se cacher).
Je veux créer un filtre qui copierait toujours la valeur [terme] pour une [taxonomie] spécifique dans le champ [titre] d'un [post_type] spécifique.
Tout conseil que je pourrais obtenir sur la façon d'accomplir cela serait génial! Merci d'avance!
==============================================================
OK, en utilisant le code de @manny flatmond ci-dessous, et à partir de ce post: Title_save_pre - Problème simple que vous savez avec certitude
Je suis venu avec
function taxonomy_title_rename($title) {
global $post;
$type = get_post_type($post->ID);
if ($type== 'CUSTOM_POST_TYPE') {
if($post->post_type === 'CUSTOM_POST_TYPE') {
$terms = wp_get_object_terms($post->ID, 'MY_TAXONOMY');
if(!is_wp_error($terms) && !empty($terms)) {
$title = $terms[0]->name;
}
}
return $title;
}
else if ($type != 'CUSTOM_POST_TYPE') {
return $title;
}
}
add_filter ('title_save_pre','taxonomy_title_rename');
Il s'agit en fait d'économiser le titre de la publication du Post de la taxonomie. Cependant, il ne le tire pas également dans le permalien, mon permalien n'est que le numéro d'identification du post. Je verrai si je peux résoudre ce problème par moi-même, mais toute aide serait appréciée!
Pas de solution correcte