{"id":5396,"date":"2012-03-28T05:28:30","date_gmt":"2012-03-28T05:28:30","guid":{"rendered":"https:\/\/toolset.com\/documentacion\/guias-de-usuario\/salidas-condicionales-html-en-views\/"},"modified":"2014-10-28T16:05:20","modified_gmt":"2014-10-28T16:05:20","slug":"salidas-condicionales-html-en-views","status":"publish","type":"page","link":"https:\/\/toolset.com\/es\/documentacion\/salidas-condicionales-html-en-views\/","title":{"rendered":"Salidas condicionales HTML en Views"},"content":{"rendered":"<p><strong>Views le permite controlar la salida HTML basada en el contenido de las entradas. Usted puede implementar funciones complejas que eval&uacute;an valores de distintos campos personalizados.<\/strong><\/p>\n<p>Comencemos con un ejemplo:<\/p>\n<p>Quiero listar &iacute;tems &quot;para hacer&quot; y dejar de lado &iacute;tems que ya fueron completados.<\/p>\n<img decoding=\"async\" class=\"size-full wp-image-3441\" title=\"para hacer (to do)\" src=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/03\/todos.png\" alt=\"\" width=\"605\" height=\"175\" \/>\n<p>Usted puede ver lo que realmente trato de hacer, esto es, encerrar el t&iacute;tulo entre etiquetas <strong>&lt;del&gt;<\/strong> &#8230; <strong>&lt;\/del&gt;<\/strong>.<\/p>\n<p>Para hacerlo, necesitamos corroborar cu&aacute;les &iacute;tems &quot;to do&quot; est&aacute;n completos y a&ntilde;adir estas etiquetas en torno a sus t&iacute;tulos, cuando generamos la View (obviamente, no nos referimos a editar el t&iacute;tulo de la lista y a&ntilde;adir esas etiquetas a la base de datos).<\/p>\n<p>Edite la View, vaya a la secci&oacute;n de Layout y haga clic para editar el Meta HTML.<\/p>\n<figure id=\"attachment_3444\" aria-describedby=\"caption-attachment-3444\" style=\"width: 531px\" class=\"wp-caption aligncenter\"><img decoding=\"async\" class=\"size-full wp-image-3444\" title=\"meta-html-with-wpv-if\" src=\"https:\/\/toolset.com\/wp-content\/uploads\/2012\/03\/meta-html-with-wpv-if.png\" alt=\"\" width=\"531\" height=\"254\" \/><figcaption id=\"caption-attachment-3444\" class=\"wp-caption-text\">Editor de Meta HTML con salida condicional<\/figcaption><\/figure>\n<p>Este es el segmento meta HTML que hemos usado para producir las etiquetas &lt;del&gt; en torno al t&iacute;tulo:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n{sc{wpv-if completed=&quot;wpcf-completed&quot; evaluate=&quot;$completed = 1&quot;}sc}&lt;del&gt;{sc{\/wpv-if}sc}\n{sc{wpv-post-title}sc}\n{sc{wpv-if completed=&quot;wpcf-completed&quot; evaluate=&quot;$completed = 1&quot;}sc}&lt;\/del&gt;{sc{\/wpv-if}sc}\n<\/pre>\n<p>Los shortcodes wpv-if son la forma que tienen las Views para ejecutar l&oacute;gica condicional dentro de Views y de Content Templates. He aqu&iacute; c&oacute;mo trabajan:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n{sc{wpv-if\n\n  arg1=&quot;FIELD1_NAME&quot;\n  arg2=&quot;FIELD2_NAME&quot;\n  arg3...\n\n  evaluate=&quot;EXPRESSION USING ARG1, ARG2, ...&quot;\n\n  condition=&quot;true|false&quot; debug=&quot;false|true&quot;}sc}\n&lt;conditional-HTML&gt;\n{sc{\/wpv-if}sc}\n<\/pre>\n<p>Loas argumentos pueden tener el nombre que usted elija. Si puede denominar al primer argumento &#8216;arg1&#8217;, lo usar&aacute; como $arg1 en la expresi&oacute;n de <strong>evaluaci&oacute;n.<\/strong><\/p>\n<p>La <strong>condici&oacute;n<\/strong> (default=true) indica el valor esperado de la evaluaci&oacute;n. Puede usar valores &#8216;false&#8217; para visualizar la salida al fallar la funci&oacute;n de evaluaci&oacute;n. De esta forma puede implementar l&oacute;gica if\/else.<\/p>\n<p>La opci&oacute;n <strong>debug<\/strong> (depuraci&oacute;n) le ayuda a entender qu&eacute; ocurre. Generar&aacute; el c&oacute;digo de error en caso de haber problemas con el parseo de la expresi&oacute;n en la funci&oacute;n de evaluaci&oacute;n.<\/p>\n<p>Dentro de la <strong>expresi&oacute;n evaluadora<\/strong> usted puede usar cualquiera de los siguientes operadores:<\/p>\n<ul>\n<li>Variables definidas como par&aacute;metros de shortcode que comienzan con un signo d&oacute;lar<\/li>\n<li>N&uacute;meros enteros y de coma flotante<\/li>\n<li>Operadores matem&aacute;ticos: +, -, *, \/<\/li>\n<li>Operadores de comparaci&oacute;n: +, -, *, \/<\/li>\n<li>Operadores booleanos: AND, OR, NOT<\/li>\n<li>Expresiones anidadas: varios niveles de par&eacute;ntesis<\/li>\n<li>funci&oacute;n empty() (vac&iacute;o) que comprueba campos vac&iacute;os o inexistentes<\/li>\n<\/ul>\n<h3>Ejemplos<\/h3>\n<h4>Evaluar el valor de un campo de cadena de texto<\/h4>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">{sc{wpv-if strfield=&quot;wpcf-somestrcustomfield&quot; evaluate=&quot;$strfield = 'content'&quot;}sc}<\/pre>\n<h4>Consultar edades mayores que 13 a&ntilde;os y color verde<\/h4>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">{sc{wpv-if age=&quot;wpcf-age&quot; color=&quot;wpcf-color&quot; evaluate=&quot;($age &gt; 13) AND ($color = 'green')&quot;}sc}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Views le permite controlar la salida HTML basada en el contenido de las entradas. Usted puede implementar funciones complejas que eval&uacute;an valores de distintos campos personalizados. Comencemos con un ejemplo: Quiero listar &iacute;tems &quot;para hacer&quot; y dejar de lado &iacute;tems que ya fueron completados. Usted puede ver lo que realmente trato de hacer, esto es, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":5205,"menu_order":10,"comment_status":"closed","ping_status":"closed","template":"","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":""},"documentation-category":[],"class_list":["post-5396","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/pages\/5396","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/comments?post=5396"}],"version-history":[{"count":19,"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/pages\/5396\/revisions"}],"predecessor-version":[{"id":255787,"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/pages\/5396\/revisions\/255787"}],"up":[{"embeddable":true,"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/pages\/5205"}],"wp:attachment":[{"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/media?parent=5396"}],"wp:term":[{"taxonomy":"documentation-category","embeddable":true,"href":"https:\/\/toolset.com\/es\/wp-json\/wp\/v2\/documentation-category?post=5396"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}