{"id":6120,"date":"2013-09-19T14:01:17","date_gmt":"2013-09-19T14:01:17","guid":{"rendered":"https:\/\/www.jose-aguilar.com\/blog\/?p=6120"},"modified":"2013-09-19T14:02:20","modified_gmt":"2013-09-19T14:02:20","slug":"como-anadir-un-video-los-productos-de-prestashop","status":"publish","type":"post","link":"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/","title":{"rendered":"Como a\u00f1adir un video a los productos de Prestashop"},"content":{"rendered":"<p>En este art\u00edculo vamos a ver como <strong>a\u00f1adir un video de Youtube a cada ficha del producto de Prestashop 1.5.x<\/strong>.<\/p>\n<p>Es requerido tener conocimientos de programaci\u00f3n orientada a objetos para llevar a cabo la tarea de a\u00f1adir un nuevo campo personalizado, en este caso, a los productos del prestashp 1.5.x.<\/p>\n<p>Lo primero que deber\u00edas hacer es sobreescribir la clase product a\u00f1adi\u00e9ndole el nuevo campo. Existen infinidad de campos extra para a\u00f1adir al producto pero en el caso del ejemplo que vamos a ilustrar vamos a tratar de a\u00f1adir un nuevo campo que va a representar el c\u00f3digo que viene siempre en la URL de los videos de Youtube.<\/p>\n<p>Necesitaremos incorporar la nueva variable de la clase:<\/p>\n<pre>public $video;<\/pre>\n<p>Y seguidamente la definici\u00f3n:<\/p>\n<pre>'video' =&gt; array('type' =&gt; self::TYPE_STRING, 'validate' =&gt; 'isReference', 'size' =&gt; 64),<\/pre>\n<p>En la definici\u00f3n le estamos indicando que queremos una variable de tipo cadena de longitud 64 caracteres y que adem\u00e1s se valida igual que el campo referencia, mirando su longitud.<\/p>\n<p>Todo esto que comento lo deberemos a\u00f1adir a la clase que sobreescribe la clase Product del core de Prestashop. Lo puedes localizar en \/override\/classes\/Product.php y donde tan solo deber\u00e1s a\u00f1adir el siguiente contenido:<\/p>\n<pre>&lt;?php\r\n\r\nclass Product extends ProductCore\r\n{\r\n    <span style=\"color: #ff0000;\">public $video;<\/span>\r\n\r\n    public static $definition = array(\r\n        'table' =&gt; 'product',\r\n        'primary' =&gt; 'id_product',\r\n        'multilang' =&gt; true,\r\n        'multilang_shop' =&gt; true,\r\n        'fields' =&gt; array(\r\n            \/\/ Classic fields\r\n            'id_shop_default' =&gt;             array('type' =&gt; self::TYPE_INT, 'validate' =&gt; 'isUnsignedId'),\r\n            'id_manufacturer' =&gt;             array('type' =&gt; self::TYPE_INT, 'validate' =&gt; 'isUnsignedId'),\r\n            'id_supplier' =&gt;                 array('type' =&gt; self::TYPE_INT, 'validate' =&gt; 'isUnsignedId'),\r\n            'reference' =&gt;                     array('type' =&gt; self::TYPE_STRING, 'validate' =&gt; 'isReference', 'size' =&gt; 32),\r\n            'supplier_reference' =&gt;         array('type' =&gt; self::TYPE_STRING, 'validate' =&gt; 'isReference', 'size' =&gt; 32),\r\n            'location' =&gt;                     array('type' =&gt; self::TYPE_STRING, 'validate' =&gt; 'isReference', 'size' =&gt; 64),\r\n            <span style=\"color: #ff0000;\">'video' =&gt;                     array('type' =&gt; self::TYPE_STRING, 'validate' =&gt; 'isReference', 'size' =&gt; 64),<\/span>\r\n            'width' =&gt;                         array('type' =&gt; self::TYPE_FLOAT, 'validate' =&gt; 'isUnsignedFloat'),\r\n            'height' =&gt;                     array('type' =&gt; self::TYPE_FLOAT, 'validate' =&gt; 'isUnsignedFloat'),\r\n            'depth' =&gt;                         array('type' =&gt; self::TYPE_FLOAT, 'validate' =&gt; 'isUnsignedFloat'),\r\n            'weight' =&gt;                     array('type' =&gt; self::TYPE_FLOAT, 'validate' =&gt; 'isUnsignedFloat'),\r\n            'quantity_discount' =&gt;             array('type' =&gt; self::TYPE_BOOL, 'validate' =&gt; 'isBool'),\r\n            'ean13' =&gt;                         array('type' =&gt; self::TYPE_STRING, 'validate' =&gt; 'isEan13', 'size' =&gt; 13),\r\n            'upc' =&gt;                         array('type' =&gt; self::TYPE_STRING, 'validate' =&gt; 'isUpc', 'size' =&gt; 12),\r\n            'cache_is_pack' =&gt;                 array('type' =&gt; self::TYPE_BOOL, 'validate' =&gt; 'isBool'),\r\n            'cache_has_attachments' =&gt;         array('type' =&gt; self::TYPE_BOOL, 'validate' =&gt; 'isBool'),\r\n            'is_virtual' =&gt;                 array('type' =&gt; self::TYPE_BOOL, 'validate' =&gt; 'isBool'),\r\n\r\n            \/* Shop fields *\/\r\n            'id_category_default' =&gt;         array('type' =&gt; self::TYPE_INT, 'shop' =&gt; true, 'validate' =&gt; 'isUnsignedId'),\r\n            'id_tax_rules_group' =&gt;         array('type' =&gt; self::TYPE_INT, 'shop' =&gt; true, 'validate' =&gt; 'isUnsignedId'),\r\n            'on_sale' =&gt;                     array('type' =&gt; self::TYPE_BOOL, 'shop' =&gt; true, 'validate' =&gt; 'isBool'),\r\n            'online_only' =&gt;                 array('type' =&gt; self::TYPE_BOOL, 'shop' =&gt; true, 'validate' =&gt; 'isBool'),\r\n            'ecotax' =&gt;                     array('type' =&gt; self::TYPE_FLOAT, 'shop' =&gt; true, 'validate' =&gt; 'isPrice'),\r\n            'minimal_quantity' =&gt;             array('type' =&gt; self::TYPE_INT, 'shop' =&gt; true, 'validate' =&gt; 'isUnsignedInt'),\r\n            'price' =&gt;                         array('type' =&gt; self::TYPE_FLOAT, 'shop' =&gt; true, 'validate' =&gt; 'isPrice', 'required' =&gt; true),\r\n            'wholesale_price' =&gt;             array('type' =&gt; self::TYPE_FLOAT, 'shop' =&gt; true, 'validate' =&gt; 'isPrice'),\r\n            'unity' =&gt;                         array('type' =&gt; self::TYPE_STRING, 'shop' =&gt; true, 'validate' =&gt; 'isString'),\r\n            'unit_price_ratio' =&gt;             array('type' =&gt; self::TYPE_FLOAT, 'shop' =&gt; true),\r\n            'additional_shipping_cost' =&gt;     array('type' =&gt; self::TYPE_FLOAT, 'shop' =&gt; true, 'validate' =&gt; 'isPrice'),\r\n            'customizable' =&gt;                 array('type' =&gt; self::TYPE_INT, 'shop' =&gt; true, 'validate' =&gt; 'isUnsignedInt'),\r\n            'text_fields' =&gt;                 array('type' =&gt; self::TYPE_INT, 'shop' =&gt; true, 'validate' =&gt; 'isUnsignedInt'),\r\n            'uploadable_files' =&gt;             array('type' =&gt; self::TYPE_INT, 'shop' =&gt; true, 'validate' =&gt; 'isUnsignedInt'),\r\n            'active' =&gt;                     array('type' =&gt; self::TYPE_BOOL, 'shop' =&gt; true, 'validate' =&gt; 'isBool'),\r\n            'available_for_order' =&gt;         array('type' =&gt; self::TYPE_BOOL, 'shop' =&gt; true, 'validate' =&gt; 'isBool'),\r\n            'available_date' =&gt;             array('type' =&gt; self::TYPE_DATE, 'shop' =&gt; true, 'validate' =&gt; 'isDateFormat'),\r\n            'condition' =&gt;                     array('type' =&gt; self::TYPE_STRING, 'shop' =&gt; true, 'validate' =&gt; 'isGenericName', 'values' =&gt; array('new', 'used', 'refurbished'), 'default' =&gt; 'new'),\r\n            'show_price' =&gt;                 array('type' =&gt; self::TYPE_BOOL, 'shop' =&gt; true, 'validate' =&gt; 'isBool'),\r\n            'indexed' =&gt;                     array('type' =&gt; self::TYPE_BOOL, 'shop' =&gt; true, 'validate' =&gt; 'isBool'),\r\n            'visibility' =&gt;                 array('type' =&gt; self::TYPE_STRING, 'shop' =&gt; true, 'validate' =&gt; 'isProductVisibility', 'values' =&gt; array('both', 'catalog', 'search', 'none'), 'default' =&gt; 'both'),\r\n            'cache_default_attribute' =&gt;     array('type' =&gt; self::TYPE_INT, 'shop' =&gt; true),\r\n            'advanced_stock_management' =&gt;     array('type' =&gt; self::TYPE_BOOL, 'shop' =&gt; true, 'validate' =&gt; 'isBool'),\r\n            'date_add' =&gt;                     array('type' =&gt; self::TYPE_DATE, 'shop' =&gt; true, 'validate' =&gt; 'isDateFormat'),\r\n            'date_upd' =&gt;                     array('type' =&gt; self::TYPE_DATE, 'shop' =&gt; true, 'validate' =&gt; 'isDateFormat'),\r\n\r\n            \/* Lang fields *\/\r\n            'meta_description' =&gt;             array('type' =&gt; self::TYPE_STRING, 'lang' =&gt; true, 'validate' =&gt; 'isGenericName', 'size' =&gt; 255),\r\n            'meta_keywords' =&gt;                 array('type' =&gt; self::TYPE_STRING, 'lang' =&gt; true, 'validate' =&gt; 'isGenericName', 'size' =&gt; 255),\r\n            'meta_title' =&gt;                 array('type' =&gt; self::TYPE_STRING, 'lang' =&gt; true, 'validate' =&gt; 'isGenericName', 'size' =&gt; 128),\r\n            'link_rewrite' =&gt;                 array('type' =&gt; self::TYPE_STRING, 'lang' =&gt; true, 'validate' =&gt; 'isLinkRewrite', 'required' =&gt; true, 'size' =&gt; 128),\r\n            'name' =&gt;                         array('type' =&gt; self::TYPE_STRING, 'lang' =&gt; true, 'validate' =&gt; 'isCatalogName', 'required' =&gt; true, 'size' =&gt; 128),\r\n            'description' =&gt;                 array('type' =&gt; self::TYPE_HTML, 'lang' =&gt; true, 'validate' =&gt; 'isString'),\r\n            'description_short' =&gt;             array('type' =&gt; self::TYPE_HTML, 'lang' =&gt; true, 'validate' =&gt; 'isString'),\r\n            'available_now' =&gt;                 array('type' =&gt; self::TYPE_STRING, 'lang' =&gt; true, 'validate' =&gt; 'isGenericName', 'size' =&gt; 255),\r\n            'available_later' =&gt;             array('type' =&gt; self::TYPE_STRING, 'lang' =&gt; true, 'validate' =&gt; 'IsGenericName', 'size' =&gt; 255),\r\n        ),\r\n        'associations' =&gt; array(\r\n            'manufacturer' =&gt;                 array('type' =&gt; self::HAS_ONE),\r\n            'supplier' =&gt;                     array('type' =&gt; self::HAS_ONE),\r\n            'default_category' =&gt;             array('type' =&gt; self::HAS_ONE, 'field' =&gt; 'id_category_default', 'object' =&gt; 'Category'),\r\n            'tax_rules_group' =&gt;             array('type' =&gt; self::HAS_ONE),\r\n            'categories' =&gt;                    array('type' =&gt; self::HAS_MANY, 'field' =&gt; 'id_category', 'object' =&gt; 'Category', 'association' =&gt; 'category_product'),\r\n            'stock_availables' =&gt;            array('type' =&gt; self::HAS_MANY, 'field' =&gt; 'id_stock_available', 'object' =&gt; 'StockAvailable', 'association' =&gt; 'stock_availables'),\r\n        ),\r\n    );\r\n}<\/pre>\n<p>Donde tan solo estamos a\u00f1adiendo la nueva variable de la clase y dando su definici\u00f3n. Guardamos y subimos al servidor.<\/p>\n<p>Utilizando un programa de administraci\u00f3n de base de datos, deberemos acceder a la base de datos para crear una nueva tupla dentro de la tabla \u00abps_product\u00bb. En el caso del ejemplo, la vamos a llamar \u00abvideo\u00bb y ser\u00e1 de tipo varchar(64).<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6121\" alt=\"video_bd\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/09\/video_bd.png\" width=\"89\" height=\"167\" \/><\/p>\n<p>Ahora tocar\u00eda a\u00f1adir el campo de texto que para a\u00f1adir el c\u00f3digo de cada video de los productos en el backend de la tienda. Deberemos localizar el fichero que se encuentra dentro de la siguiente ruta dentro de la administraci\u00f3n:<\/p>\n<pre>adminxxx\/themes\/default\/template\/controllers\/products\/informations.tpl<\/pre>\n<p>Nos daremos cuenta que no es m\u00e1s que la plantilla de formulario de la ficha del producto. Entonces, all\u00ed donde deseemos a\u00f1adiremos el nuevo campo. Deber\u00e1s estar familarizado con las tablas HTML para a\u00f1adirlo de forma correcta. En el caso del ejemplo lo vamos a situar por encima del campo Etiquetas con el siguiente c\u00f3digo:<\/p>\n<pre>&lt;table&gt;\r\n\u00a0\u00a0 &lt;tr&gt;\r\n\u00a0\u00a0    &lt;td class=\"col-left\"&gt;&lt;label&gt;{l s='Video:'}&lt;\/label&gt;&lt;\/td&gt;\r\n\u00a0\u00a0 \u00a0\u00a0 &lt;td style=\"padding-bottom:5px;\" class=\"\"&gt;\r\n\u00a0\u00a0 \u00a0\u00a0    &lt;input size=\"55\" type=\"text\" id=\"video\" name=\"video\" value=\"{$product-&gt;video}\" \/&gt;\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0 &lt;p class=\"preference_description clear\"&gt;{l s='Code URL Video for iframe'}&lt;\/p&gt;\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 &lt;\/td&gt;\r\n\u00a0\u00a0 \u00a0&lt;\/tr&gt;\r\n&lt;\/table&gt;<\/pre>\n<p>Obteniendo como resultado:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-6122\" alt=\"video_admin\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/09\/video_admin.png\" width=\"999\" height=\"443\" srcset=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/09\/video_admin.png 999w, https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/09\/video_admin-300x133.png 300w\" sizes=\"auto, (max-width: 999px) 100vw, 999px\" \/><\/p>\n<p>La parte m\u00e1s complicada ya est\u00e1 hecha. Ahora solo falta ir a la plantilla que est\u00e9s utilizando en tu tienda y a\u00f1adir en el product.tpl all\u00ed donde lo desees el iframe que contendr\u00e1 el video utilizando la variable que hemos creado.<\/p>\n<pre>{if $product-&gt;video}\r\n\u00a0\u00a0\u00a0 &lt;iframe width=\"321\" height=\"190\" src=\"\/\/www.youtube.com\/embed\/{$product-&gt;video}\" frameborder=\"0\" allowfullscreen&gt;&lt;\/iframe&gt;\r\n{\/if}<\/pre>\n<p>En el caso del ejemplo que ilustramos, tan solo vamos a mostrar el valor de la variable en el caso de que tenga informaci\u00f3n.<\/p>\n<p>Si te ha servido este tutorial hazte fan de la p\u00e1gina de facebook del <a href=\"https:\/\/www.facebook.com\/joseaguilarblog\" target=\"_blank\">blog Jose Aguilar<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En este art\u00edculo vamos a ver como a\u00f1adir un video de Youtube a cada ficha del producto de Prestashop 1.5.x. Es requerido tener conocimientos de programaci\u00f3n orientada a objetos para llevar a cabo la tarea de a\u00f1adir un nuevo campo personalizado, en este caso, a los productos del prestashp 1.5.x. Lo primero que deber\u00edas hacer [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":5817,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21],"tags":[],"class_list":["post-6120","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-prestashop"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Como a\u00f1adir un video a los productos de Prestashop - Jose Aguilar Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Como a\u00f1adir un video a los productos de Prestashop - Jose Aguilar Blog\" \/>\n<meta property=\"og:description\" content=\"En este art\u00edculo vamos a ver como a\u00f1adir un video de Youtube a cada ficha del producto de Prestashop 1.5.x. Es requerido tener conocimientos de programaci\u00f3n orientada a objetos para llevar a cabo la tarea de a\u00f1adir un nuevo campo personalizado, en este caso, a los productos del prestashp 1.5.x. Lo primero que deber\u00edas hacer [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/\" \/>\n<meta property=\"og:site_name\" content=\"Jose Aguilar Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/joseaguilarblog\" \/>\n<meta property=\"article:published_time\" content=\"2013-09-19T14:01:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2013-09-19T14:02:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/02\/prestashop3-200x200.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"200\" \/>\n\t<meta property=\"og:image:height\" content=\"200\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jose Aguilar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:site\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jose Aguilar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/\",\"name\":\"Como a\u00f1adir un video a los productos de Prestashop - Jose Aguilar Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/02\/prestashop3-200x200.jpg\",\"datePublished\":\"2013-09-19T14:01:17+00:00\",\"dateModified\":\"2013-09-19T14:02:20+00:00\",\"author\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#primaryimage\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/02\/prestashop3-200x200.jpg\",\"contentUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/02\/prestashop3-200x200.jpg\",\"width\":200,\"height\":200},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/www.jose-aguilar.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Como a\u00f1adir un video a los productos de Prestashop\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/\",\"name\":\"Jose Aguilar Blog\",\"description\":\"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\",\"name\":\"Jose Aguilar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"caption\":\"Jose Aguilar\"},\"description\":\"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.\",\"sameAs\":[\"https:\/\/plus.google.com\/114357189801512615537\"],\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Como a\u00f1adir un video a los productos de Prestashop - Jose Aguilar Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"es_ES","og_type":"article","og_title":"Como a\u00f1adir un video a los productos de Prestashop - Jose Aguilar Blog","og_description":"En este art\u00edculo vamos a ver como a\u00f1adir un video de Youtube a cada ficha del producto de Prestashop 1.5.x. Es requerido tener conocimientos de programaci\u00f3n orientada a objetos para llevar a cabo la tarea de a\u00f1adir un nuevo campo personalizado, en este caso, a los productos del prestashp 1.5.x. Lo primero que deber\u00edas hacer [&hellip;]","og_url":"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/","og_site_name":"Jose Aguilar Blog","article_publisher":"https:\/\/www.facebook.com\/joseaguilarblog","article_published_time":"2013-09-19T14:01:17+00:00","article_modified_time":"2013-09-19T14:02:20+00:00","og_image":[{"width":200,"height":200,"url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/02\/prestashop3-200x200.jpg","type":"image\/jpeg"}],"author":"Jose Aguilar","twitter_card":"summary_large_image","twitter_creator":"@JoseAguilarBlog","twitter_site":"@JoseAguilarBlog","twitter_misc":{"Escrito por":"Jose Aguilar","Tiempo de lectura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/","url":"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/","name":"Como a\u00f1adir un video a los productos de Prestashop - Jose Aguilar Blog","isPartOf":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#primaryimage"},"image":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#primaryimage"},"thumbnailUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/02\/prestashop3-200x200.jpg","datePublished":"2013-09-19T14:01:17+00:00","dateModified":"2013-09-19T14:02:20+00:00","author":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11"},"breadcrumb":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#primaryimage","url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/02\/prestashop3-200x200.jpg","contentUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2013\/02\/prestashop3-200x200.jpg","width":200,"height":200},{"@type":"BreadcrumbList","@id":"https:\/\/www.jose-aguilar.com\/blog\/como-anadir-un-video-los-productos-de-prestashop\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/www.jose-aguilar.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Como a\u00f1adir un video a los productos de Prestashop"}]},{"@type":"WebSite","@id":"https:\/\/www.jose-aguilar.com\/blog\/#website","url":"https:\/\/www.jose-aguilar.com\/blog\/","name":"Jose Aguilar Blog","description":"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11","name":"Jose Aguilar","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","caption":"Jose Aguilar"},"description":"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.","sameAs":["https:\/\/plus.google.com\/114357189801512615537"],"url":"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/"}]}},"_links":{"self":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/6120","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/comments?post=6120"}],"version-history":[{"count":0,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/6120\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media\/5817"}],"wp:attachment":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media?parent=6120"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/categories?post=6120"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/tags?post=6120"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}