{"id":8464,"date":"2012-04-13T06:01:29","date_gmt":"2012-04-13T06:01:29","guid":{"rendered":"https:\/\/toolset.com\/2012\/04\/types-et-views-0-9-5-relations-entre-publications-performances-accrues-et-interface-rationnelle\/"},"modified":"2019-05-13T15:09:33","modified_gmt":"2019-05-13T15:09:33","slug":"types-et-views-0-9-5-relations-entre-publications-performances-accrues-et-interface-rationnelle","status":"publish","type":"post","link":"https:\/\/toolset.com\/fr\/2012\/04\/types-et-views-0-9-5-relations-entre-publications-performances-accrues-et-interface-rationnelle\/","title":{"rendered":"Types et Views 0.9.5 &#8211; relations entre publications, performances accrues et interface rationnelle"},"content":{"rendered":"<p><strong>Nous sommes heureux d&#8217;annoncer le lancement du candidat Types et Views 0.9.5. Cette version est le r&eacute;sultat de deux mois de d&eacute;veloppement intense par l&#8217;&eacute;quipe tout enti&egrave;re et offre de nombreuses nouvelles fonctions, des am&eacute;liorations et quelques r&eacute;parations.<\/strong><\/p>\n<p>Comme toujours, notre but est de vous permettre de cr&eacute;er des sites de plus en plus riches avec Types et Views et que ce soit de plus en plus facile.<\/p>\n<p>Quand nous vous avons <a title=\"Champs de r&eacute;p&eacute;tition pour Types et Views\" href=\"https:\/\/toolset.com\/2011\/12\/repeater-fields-for-types-and-views\/\">soumis l&#8217;id&eacute;e des champs de r&eacute;p&eacute;tition<\/a>, nous avons &eacute;t&eacute; submerg&eacute;s de commentaires. Cela nous aid&eacute; &agrave; d&eacute;velopper les nouvelles fonctions de cette version. Apr&egrave;s une &eacute;tude d&eacute;taill&eacute;e, nous avons conclu que le champ de matrices pour la publication &quot;parente&quot; ne convenait pas au fonctionnement de Types et Views. Nous avons fait une recherche pouss&eacute;e et avons adopt&eacute; notre propre architecture pour la mise en &oelig;uvre des matrices d&#8217;informations associ&eacute;es.<\/p>\n<p>De nombreux &eacute;chantillons utilis&eacute;s comportaient des exemples <em>d&#8217;artistes ayant des spectacles<\/em>, de <em>produits offrant des avantages<\/em> et de bien d&#8217;autres choses qui ressemblaient fort &agrave; une relation parent\/enfant entre diff&eacute;rentes publications.<\/p>\n<figure id=\"attachment_6786\" aria-describedby=\"caption-attachment-6786\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/04\/carrental.jpg\"><img decoding=\"async\" class=\"size-medium wp-image-6786\" title=\"location de voiture\" src=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/04\/carrental-300x1911.jpg\" alt=\"sch&eacute;ma d'un site web de location de voiture\" width=\"300\" height=\"191\" \/><\/a><figcaption id=\"caption-attachment-6786\" class=\"wp-caption-text\">Accords, relier les voitures aux gens<\/figcaption><\/figure>\n<p>En cons&eacute;quence et pour cr&eacute;er une infrastructure encore plus solide, nous avons d&eacute;cid&eacute; d&#8217;ajouter un cadre complet de relation parent\/enfant &agrave; Types et Views. Comme par le pass&eacute;, Types d&eacute;finit la relation et Views se charge de l&#8217;affichage.<\/p>\n<p>Pour obtenir les m&ecirc;mes fonctionnalit&eacute;s que les champs de r&eacute;p&eacute;tition, qui rel&egrave;vent d&#8217;un type de publications, nous avons ajout&eacute; la possibilit&eacute; de faire d&#8217;un type de publications le parent d&#8217;un autre ET de modifier les publications enfants au sein d&#8217;un &eacute;diteur de publications. Cela permet de modifier facilement les informations r&eacute;p&eacute;t&eacute;es, sans pour autant compromettre l&#8217;int&eacute;grit&eacute; de la base de donn&eacute;es au cours du processus.<\/p>\n<h2>Relations entre publications<\/h2>\n<p>Avec Types 0.9.5, quand vous modifiez la d&eacute;finition d&#8217;un type de publications personnalis&eacute;es, vous verrez une nouvelle section &quot;relations entre publications&quot;.<\/p>\n<figure id=\"attachment_7010\" aria-describedby=\"caption-attachment-7010\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/04\/post-relationship-editing.png\"><img decoding=\"async\" class=\"size-medium wp-image-7010\" title=\"publications-relations-modifications\" src=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/04\/post-relationship-editing-300x1171.png\" alt=\"\" width=\"300\" height=\"117\" \/><\/a><figcaption id=\"caption-attachment-7010\" class=\"wp-caption-text\">Encadr\u00e9 des relations entre publications<\/figcaption><\/figure>\n<p>Une fois que vous faites d&#8217;une publication l&#8217;enfant d&#8217;une autre, vous ouvrez un large &eacute;ventail de possibilit&eacute;s.<\/p>\n<ul>\n<li>Vous pouvez modifier les publications enfants en modifiant la publication parente (voir les <strong>tableaux de champs<\/strong> ci-dessous).<\/li>\n<li>Quand vous modifiez une publication enfant, vous pouvez indiquer &agrave; qui elle appartient &agrave; l&#8217;aide du menu d&eacute;roulant parent.<\/li>\n<li>Quand vous affichez des publications parentes avec une view, vous pouvez afficher les champs des publications enfants.<\/li>\n<\/ul>\n<p>Il existe d&eacute;j&agrave; une <a href=\"\/?page_id=29922\">page de manuel au sujet des relations entre publications.<\/a> Elle pr&eacute;sente un exemple simple d&#8217;une maison avec des pi&egrave;ces (mais ces pi&egrave;ces peuvent aussi avoir des meubles), ainsi qu&#8217;un exemple plus complexe, mais tr&egrave;s r&eacute;aliste, d&#8217;un site de location de voiture.<\/p>\n<p>Quand vous d&eacute;finissez les relations entre publications, vous permettez &agrave; l&#8217;une d&#8217;elles de pointer vers une autre. Vous pouvez utiliser cette relation pour <a href=\"\/?page_id=30323\">afficher les champs qui appartiennent aux publications parentes.<\/a><\/p>\n<h2>Tableaux de champs<\/h2>\n<p>Maintenant que vous avez d&eacute;fini les relations entre publications, il est temps de les mettre &agrave; contribution.<\/p>\n<p>Vous souhaiterez probablement commencer par ajouter des champs personnalis&eacute;s aux publications enfants. Puis, vous serez en mesure de modifier les publications enfants et leurs champs personnalis&eacute;s, directement depuis la publication parente.<\/p>\n<figure id=\"attachment_6658\" aria-describedby=\"caption-attachment-6658\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/04\/completed-field-table.png\"><img decoding=\"async\" class=\"size-medium wp-image-6658\" title=\"tableau de champs complet\" src=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/04\/completed-field-table-300x2661.png\" alt=\"un tableau de champs avec 5 lignes de contenu - chaque entr&eacute;e du contenu repr&eacute;sente un type de publications pour une chambre unique\" width=\"300\" height=\"266\" \/><\/a><figcaption id=\"caption-attachment-6658\" class=\"wp-caption-text\">Modifier les \u00e9l\u00e9ments des publications enfants depuis la publication parente.<\/figcaption><\/figure>\n<p>Mais un instant, est-ce vraiment comme les champs de r&eacute;p&eacute;tition ?<\/p>\n<p>Pas exactement. La modification des publications enfants dans un tableau offre bien d&#8217;autres avantages.<\/p>\n<p>Une publication enfant peut appartenir &agrave; diff&eacute;rentes publications parentes. Dans notre <a href=\"\/?page_id=30173\">exemple de location de voiture<\/a>, les contrats appartiennent tous deux &agrave; la personne et &agrave; la voiture. Quand vous modifiez les informations sur une personne, vous souhaiteriez voir tous les contrats de location qu&#8217;elle a pass&eacute;s. Quand vous modifiez les informations sur une voiture, vous devriez pouvoir consulter toutes les personnes ayant lou&eacute; cette voiture ou qui le feront &agrave; l&#8217;avenir.<\/p>\n<p>Le type de &quot;contrat de location&quot; peut poss&eacute;der de nombreux champs. Ils ne sont pas tous importants pour diff&eacute;rentes publications parentes, alors Types vous laisse choisir les champs que vous souhaitez afficher quand vous modifiez diff&eacute;rentes publications parents.<\/p>\n<p>Vous devriez consulter la section des <a href=\"\/?page_id=30173\">modifications en masse des tableaux de champs<\/a> afin de voir comment cela fonctionne et ce &agrave; quoi vous pouvez parvenir.<\/p>\n<h2>Afficher les contenus enfants (tableaux de champs)<\/h2>\n<p>Nous avons donc ajout&eacute; un moyen de d&eacute;finir les relations entre publications et de modifier les publications enfants depuis les parents. Maintenant, nous avons juste besoin d&#8217;un moyen judicieux d&#8217;afficher toutes ces informations.<\/p>\n<p>Views 0.9.5 peut faire des requ&ecirc;tes et filtrer les publications en fonction des parents. Quand vous cr&eacute;ez une nouvelle view et le type de publications sur lesquels vous faites des requ&ecirc;tes poss&egrave;de des parents, vous pouvez choisir de filtrer par les publications parentes.<\/p>\n<p>Comme avec les pages ordinaires de WordPress, vous pouvez filtrer par la publication parente ou celle d&eacute;finie par la view. Nous esp&eacute;rons que cette derni&egrave;re phrase ne vous laisse pas trop confus(e). Cela veut dire que vous pouvez facilement avoir des views imbriqu&eacute;es, affichant les champs enfants. Par exemple, si vous montrez des maisons, chaque maison peut avoir une view enfant pour les pi&egrave;ces.<\/p>\n<p>Cette <a href=\"\/?page_id=30195\">page de manuel sur l&#8217;affichage des &eacute;l&eacute;ments enfants<\/a> explique comment les afficher facilement soit avec une view, ou avec la nouvelle API PHP de Types 0.9.5.<\/p>\n<h2>Performances<\/h2>\n<p>C&#8217;est toujours agr&eacute;able d&#8217;optimiser notre code et de le rendre plus rapide. C&#8217;est particuli&egrave;rement le cas quand nous en d&eacute;pendons nous-m&ecirc;mes pour notre serveur de production sur les deux sites <a href=\"https:\/\/toolset.com\/fr\/\">wp-types.com<\/a> et <a href=\"http:\/\/wpml.org\">wpml.org.<\/a><\/p>\n<p>Cette version voit ses performances s&#8217;am&eacute;liorer sur deux fronts :<\/p>\n<ul>\n<li>Dans la section admin de WordPress, nous effectuons infiniment moins de requ&ecirc;tes SQL dans la modification des publications et dans la d&eacute;finition des pages de Types.<\/li>\n<li>Les chargements de pages AJAX fonctionnent maintenant sans faire appel &agrave; wp-admin et peuvent &ecirc;tre mis en cache. Juste quelques chiffres, sur notre propre serveur d&eacute;di&eacute; comportant 8 acc&eacute;l&eacute;rateurs, cela r&eacute;duit le temps de 2,5 &agrave; 0,1 seconde. Si vous utilisez des mises &agrave; jour AJAX dans vos views, vous constaterez imm&eacute;diatement les bienfaits.<\/li>\n<\/ul>\n<h2>Interface rationnelle<\/h2>\n<p>Parmi toutes les nouvelles fonctions int&eacute;ressantes, l&#8217;am&eacute;lioration des performances et les r&eacute;parations de bogues, c&#8217;est en fait notre point fort pr&eacute;f&eacute;r&eacute; dans Types et Views 0.9.5.<\/p>\n<p>Ainsi parlerait notre administrateur web. Cela signifie que nous pouvons cr&eacute;er de nouvelles views et templates view. Nous avons de nombreuses t&acirc;ches quotidiennes et nous appr&eacute;cions vraiment le fait que notre administrateur web puisse aller vite dans son travail (et nous pouvons nous occuper des affaires).<\/p>\n<p>Jusqu&#8217;&agrave; cette version, la fen&ecirc;tre de dialogue contextuelle d&#8217;insertion de champ (qui appara&icirc;t quand vous cliquez sur &quot;Ins&eacute;rer un champ&quot; ou l&#8217;ic&ocirc;ne V) &eacute;tait un peu encombr&eacute;e. Cela pouvait devenir la pagaille si vous aviez de nombreux champs personnalis&eacute;s dans votre site (comme c&#8217;est le cas pour nous).<\/p>\n<p>Cela repr&eacute;sentait un gros probl&egrave;me pour nous. Nous savions ce que nous souhaitions ins&eacute;rer, mais cela nous prenait 3 minutes pour le trouver &agrave; l&#8217;&eacute;cran.<\/p>\n<figure id=\"attachment_7029\" aria-describedby=\"caption-attachment-7029\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/04\/only-relevant-fields.png\"><img decoding=\"async\" class=\"size-medium wp-image-7029\" title=\"seulement-champs-pertinents\" src=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/04\/only-relevant-fields-300x2271.png\" alt=\"\" width=\"300\" height=\"227\" \/><\/a><figcaption id=\"caption-attachment-7029\" class=\"wp-caption-text\">Seuls les champs pertinents apparaissent dans les fen\u00eatres contextuelles<\/figcaption><\/figure>\n<p>Views fait maintenant de son mieux pour &eacute;liminer les options et ne vous montrer que les champs pertinents. Quand vous cr&eacute;ez une view, elle sait exactement quels types de contenus vous utilisez. Pour les templates view, ils affichent tout, mais de fa&ccedil;on bien plus ordonn&eacute;e.<\/p>\n<p>Il existe ensuite une zone de recherche. Essayez-la en tapant n&#8217;importe quoi. Vous verrez imm&eacute;diatement la liste des champs s&#8217;ajuster en &eacute;liminant tout ceux qui sont impertinents. Apr&egrave;s avoir entr&eacute; quelques caract&egrave;res, vous verrez imm&eacute;diatement le champ que vous souhaitez ins&eacute;rer.<\/p>\n<h2>Stabilit&eacute;<\/h2>\n<p>Comme nous avons eu tout le temps de d&eacute;velopper et analyser cette version, nous pensons qu&#8217;elle est la plus stable &agrave; ce jour. C&#8217;est la premi&egrave;re fois que nous parvenons &agrave; faire passer Types et Views au travers de notre cycle complet de tests qualitatifs. Cela nous a permis de mettre &agrave; jour de nombreux bogues, allant de petits soucis d&#8217;orthographes aux bogues PHP.<\/p>\n<p>Types et Views 0.9.5 sont d&eacute;j&agrave; en place sur nos sites et nous sommes satisfaits de leur fonctionnement.<\/p>\n<h2>R&eacute;parations de bogues<\/h2>\n<p>La plupart des bogues &eacute;taient difficiles &agrave; identifier et sont encore plus difficiles &agrave; expliquer. Toutefois, voici quelques traits saillants :<\/p>\n<ul>\n<li><strong>Int&eacute;gration WPML<\/strong> &#8211; maintenant que wp-types.com est multilingue, nous avons remarqu&eacute; quelques endroits o&ugrave; Views tiraient les informations de la base de donn&eacute;es dans une langue erron&eacute;e.<\/li>\n<li><strong>Champs n&#8217;&eacute;tant pas affich&eacute;s<\/strong> &#8211; tout se passe quelque part entre Types et le coeur de WordPress. Comme nous n&#8217;avons pas le contr&ocirc;le de WordPress, nous y avons rem&eacute;di&eacute; de notre c&ocirc;t&eacute;. Types n&#8217;ins&eacute;rera maintenant que des champs qui seront 100 % compatibles avec la fa&ccedil;on dont WordPress analyse les codes courts, &eacute;liminant ainsi la possibilit&eacute; que des champs ne soient pas affich&eacute;s.<\/li>\n<\/ul>\n<h2>Obtenir Types et Views 0.9.5<\/h2>\n<p>Vous pouvez t&eacute;l&eacute;charger Types 0.9.5 depuis la page de votre compte Toolset. Views 0.9.5 n&#8217;est disponible que pour ses clients. Veuillez vous connecter &agrave; votre compte toolset.com et cliquer sur <strong>T&eacute;l&eacute;chargements<\/strong>.<\/p>\n<p>Nous avons effectu&eacute; des dizaines de tests sur ces versions et elles sont d&eacute;j&agrave; en place sur nos sites. Toutefois, il s&#8217;agit d&#8217;une mise &agrave; jour principale, <strong>veuillez donc sauvegarder votre base de donn&eacute;es avant de mettre &agrave; jour les sites d&eacute;j&agrave; en ligne.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nous sommes heureux d&#8217;annoncer le lancement du candidat Types et Views 0.9.5. Cette version est le r&eacute;sultat de deux mois de d&eacute;veloppement intense par l&#8217;&eacute;quipe tout enti&egrave;re et offre de nombreuses nouvelles fonctions, des am&eacute;liorations et quelques r&eacute;parations. Comme toujours, notre but est de vous permettre de cr&eacute;er des sites de plus en plus riches [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"ep_exclude_from_search":false,"footnotes":""},"categories":[566],"tags":[],"class_list":["post-8464","post","type-post","status-publish","format-standard","hentry","category-annonces"],"_links":{"self":[{"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/posts\/8464","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/comments?post=8464"}],"version-history":[{"count":8,"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/posts\/8464\/revisions"}],"predecessor-version":[{"id":1243096,"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/posts\/8464\/revisions\/1243096"}],"wp:attachment":[{"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/media?parent=8464"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/categories?post=8464"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/toolset.com\/fr\/wp-json\/wp\/v2\/tags?post=8464"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}