Pourquoi les commentaires sont-ils désactivés par défaut sur mes custom_post_types?
4 réponses
- votes
-
- 2012-01-10
Ok - alorsj'ai résolu ça.Voici ce qui semble être leproblème.
Les commentaires sont désactivéspar défautpour lestypes depublicationpersonnalisés.Cela seproduit même si vous les avez activés dans lesparamètresgénéraux
Pour résoudre ceproblème,tout ce quej'avais àfaire était ce qui suit:
- Dans PARAMÈTRES> DISCUSSION,décochez leparamètre "Autoriser les utilisateurs àpublier des commentaires sur denouveaux articles".
- Cliquez sur "Enregistrer lesmodifications"
- Revenezmaintenantet vérifiez ànouveau "Autoriser lesgens àpublier des commentaires sur denouveaux articles"
- Cliquez sur "Enregistrer lesmodifications"
Il semble quepour lestypes d'articlespersonnalisés,vous devezen quelque sorte lancer ceparamètre.Tous lesnouveauxmessagespour lestypes depublicationpersonnalisés créés auront la case activéepar défaut.Lespublicationsexistantes conserveront leurparamètreprécédent.Je suppose que c'est lamême chosepour autoriser les rétroliens.J'espère que cela aide quelqu'un ...
Ok - so I solved this. Here is what appears to be the problem.
Comments are disabled by default for custom-post-types. This happens even if you have them enabled in the overall settings
To fix it, all I had to do was the following:
- In SETTINGS > DISCUSSION uncheck the "Allow people to post comments on new articles" setting.
- Click "Save Changes"
- Now go back and re-check "Allow people to post comments on new articles"
- Click "Save Changes"
It seems that for custom post types you need to kind of kick-start this setting. All new posts for created custom-post-types will have the box enabled by default. Existing posts will retain their previous setting. I'm assuming it's the same for allowing trackbacks. Hopefully this helps someone...
-
- 2012-01-10
Signification de cette ligne:
//ou quelque chose de similaire qui commence de lamêmemanière
'supports' => array('title','editor','author','excerpt','revisions'),
Vers cette ligne:
'supports' => array('title','editor','author','excerpt','comments','revisions'),
J'espère que cela vous aidera.
Bravo,Sagive.FONCTION AJOUTÉE (FICHIER DE FONCTIONS À L'INTÉRIEUR):
function default_comments_on( $data ) { if( $data['post_type'] == 'your_custom_post_name' ) { $data['comment_status'] = 1; } return $data; } add_filter( 'wp_insert_post_data', 'default_comments_on' );
This is the default state.. you need to change the "Supports line" where you build your custom post type..
Meaning this line:
// or something similer that starts the same
'supports' => array('title','editor','author','excerpt','revisions'),
To this line:
'supports' => array('title','editor','author','excerpt','comments','revisions'),
Hope this helps.
Cheers, Sagive.ADDED FUNCTION (INSIDE FUNCTIONS FILE):
function default_comments_on( $data ) { if( $data['post_type'] == 'your_custom_post_name' ) { $data['comment_status'] = 1; } return $data; } add_filter( 'wp_insert_post_data', 'default_comments_on' );
-
Salut - J'ai déjà ce codeentré correctement dansfunctions.php.Je crois comprendre que la zone de commentairesn'apparaîtraitmêmepas siellen'étaitpas activée de lamanière que vous décrivez.Monproblèmeest qu'il apparaît,maisiln'estpas cochépar défaut,même sij'ai défini l'activationpar défaut dans Paramètres> Discussion.Hi - I already have that code entered correctly in functions.php. My understanding is that the comments box wouldn't even appear if it wasn't enabled in the way you describe. My problem is that it appears, but it's unchecked by default even though I have set the default to be enabled in Settings > Discussion.
- 0
- 2012-01-10
- timshutes
-
ohh .. doncje pense que cen'est que vous qui voyez cette option de cettefaçon ... c'est vospréférences .. assurez-vous de cocher les deux options (ou celle que vous voulez) dans lemodule de discussion (voirimage: http://en.support.files.wordpress.com/2009/12/wpcom-discussion-module-off.png)et vous devriez êtreprêt. Voustrouverezplus d'informations sur cesparamètresici: http://en.support.wordpress.com/activer-désactiver-commentaires/ohh.. so i think its only you that see that option that way... its your prefrences.. make sure your check both option (or the one you want) in the Discussion module (see image: http://en.support.files.wordpress.com/2009/12/wpcom-discussion-module-off.png) and you should be all set.. More information about those setting can be found here: http://en.support.wordpress.com/enable-disable-comments/
- 0
- 2012-01-10
- Sagive SEO
-
Je suppose queje n'aipas été clair ... ceux-ci sont déjà vérifiéset le résultatest que les commentaires sont activéspourtousmesmessages SAUF lestypes demessagespersonnalisés qui doiventencore êtremodifiésmanuellement.Cela ressemble à unbug,ou quelque chose queje dois ajouter dansfunctions.phpmaisje netrouve rien dans le codex.I guess I haven't been clear... those are already checked and the result is that comments are enabled for all of my posts EXCEPT the custom post types which still have to be manually edited. It feels like a bug, or something I need to add in functions.php but I can't find anything in the codex.
- 0
- 2012-01-10
- timshutes
-
attendez -non cettefois,j'aimal compris - vousparlez dumodule dans lafenêtre d'édition de l'article.Jepeux certainement activer les commentaires ou les rétroliensen cochant ces cases.CEPENDANT,j'aimerais que ces cases soient cochéespar défaut afin quemon clientn'aitpas à se souvenir de lefaire CHAQUEfois qu'ilpublie unnouvel épisode depodcast.Jepensais que l'activation des commentaires dans la zone Discussion >> Paramètres de l'administrateur s'en chargerait,maisellen'esttoujourspas cochéepar défaut.wait - no that time I misunderstood - you're talking about the module in the edit post window. I can definitely enable comments or trackbacks by checking those boxes. HOWEVER, I would like those boxes to be checked by default so my client doesn't have to remember to do it EVERY time they post a new podcast episode. I thought that enabling comments in the Discussion >> Settings area of Admin would take care of it, but it's still unchecked by default.
- 0
- 2012-01-10
- timshutes
-
Jepensetoujours que s'il apparaît (laboîte de commentaires/trackback)et que vousenregistrez lemessage aveceux,il deviendrait l'étatpar défaut ... MAISj'ai ajouté du code àma réponse originale -essayé sur 3.01 queje suissur ..j'espère que ça aideI Still thinks that if it appears (the comments / trackback box) and you would to save the post with them it would become the default state... BUT i have added some code to my original answer -tried it on 3.01 which i am on.. hope it helps
- 0
- 2012-01-10
- Sagive SEO
-
J'ai dû le changeren $ data ['comment_status']='open';pour lefairefonctionner.I had to change it to $data['comment_status'] = 'open'; to make it work.
- 1
- 2019-12-17
- dipak_pusti
-
- 2015-06-22
Aucune des suggestions suivantesn'afonctionnépourmoi.Lafonction de Sagive SEO apresquefonctionnépourmoi.J'ai vérifiémabase de donnéespour constater que les seules valeurs de comment_status sont ouverteset fermées.Cettefonction ainséré 1 comme valeur.J'ai révisé lafonctionet elle semblefonctionnerparfaitementmaintenant.J'espère que cela aide quelqu'un.
function default_comments_on( $data ) { if( $data['post_type'] == 'your_custom_post_type_name' ) { $data['comment_status'] = 'open'; } return $data; } add_filter( 'wp_insert_post_data', 'default_comments_on' );
None of the following suggestions worked for me. Sagive SEO's function almost worked for me. I checked my database to find that the only values for comment_status are open and closed. That function inserted 1 as a value. I revised the function and it seems to work perfect now. I hope this helps someone.
function default_comments_on( $data ) { if( $data['post_type'] == 'your_custom_post_type_name' ) { $data['comment_status'] = 'open'; } return $data; } add_filter( 'wp_insert_post_data', 'default_comments_on' );
-
- 2012-01-10
Jeprendsjuste un coup aléatoiremais devez-vous ajouter des "commentaires" auparamètre detableau de supports,dans l'appel
register_post_type()
?Just taking a random stab but do you have to add "comments" to the supports array parameter, in the
register_post_type()
call?-
déjà là -je peux voir lepanneau de discussion ET l'utiliserpour activer les commentaires sur unebaseparmessage,maisilest décochépar défautmalgré lesparamètres demon site activés.already there - I can see the discussion panel AND use it to enable comments on a per-post basis, but it is unchecked by default in spite of my site-wide settings having comments enabled.
- 0
- 2012-01-10
- timshutes
J'utilise untype depublicationpersonnalisé + destaxonomies dans une solution depodcastpour un client. Leparamètre (paramètres >> discussion)pour les commentairesest défini sur "autoriser les commentaires". Lorsquej'ajoute/modifie des articles sous l'onglet «articles»,les commentaires sont activéspar défaut.
Cependant,lorsquej'ajoute/modifie des articles sous letype demessagepersonnalisé (podcast),les commentaires sont désactivéspar défaut.
L'utilisateurpeuttoujours activermanuellement les commentairespour chaquemessage,mais cen'est évidemmentpasidéal. Despensées?
MISE À JOUR: Codepertinent dansfunctions.php