{"id":508,"date":"2018-03-14T21:42:08","date_gmt":"2018-03-14T20:42:08","guid":{"rendered":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/?p=508"},"modified":"2018-03-14T22:05:40","modified_gmt":"2018-03-14T21:05:40","slug":"tecnicas-avanzadas-y-plugins-especiales","status":"publish","type":"post","link":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/","title":{"rendered":"T\u00e9cnicas avanzadas y plugins especiales"},"content":{"rendered":"<p>Adem\u00e1s de las que ya hemos visto a lo largo de los art\u00edculos de esta sesi\u00f3n, existen otras t\u00e9cnicas avanzadas que permiten personalizar las instalaciones de WordPress. Todas ellas exigen cierta experiencia con la programaci\u00f3n en PHP, as\u00ed que las abordaremos de forma muy general, ilustr\u00e1ndolas, cuando sea pertinente, con alg\u00fan ejemplo.<\/p>\n<h2>1. Modificaci\u00f3n del fichero functions.php del tema<\/h2>\n<p>Muchas de las funciones y scripts que hemos visto a lo largo de esta sesi\u00f3n pueden a\u00f1adirse al fichero <strong>functions.php<\/strong> del tema que estemos utilizando en nuestro sitio web. El efecto es muy semejante al que ya hemos comprobado en los art\u00edculos dedicados a la modificaci\u00f3n de las <a href=\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/personalizacion-del-tema-mediante-php\/\">\u00e1reas de hooks del framework Genesis<\/a> o a la <a href=\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/personalizacion-del-sitio-web-mediante-php\/\">activaci\u00f3n de scripts mediante el plugin Code Snippets<\/a>.<br \/>\n<!--more--><br \/>\nAhora bien, a diferencia de las dos t\u00e9cnicas a las que nos acabamos de referir, modificar el fichero functions.php es un procedimiento que el PNTE desaconseja abiertamente. En efecto, tal como ya hemos dicho y repetido varias veces a lo largo de este curso, editar los ficheros del tema convierte a este en un elemento muy dif\u00edcil de mantener y actualizar por parte de los servicios del Departamento de Educaci\u00f3n.<\/p>\n<p>As\u00ed pues, nos ahorraremos explicaciones detalladas. No obstante, quienes tengan experiencia en programaci\u00f3n, y quieran asumir los riesgos inherentes a este procedimiento (entre otros, el de hacer que su sitio web quede totalmente inoperativo), pueden consultar los siguientes tutoriales:<\/p>\n<ul>\n<li><a href=\"https:\/\/ayudawp.com\/que-es-y-como-se-usa-el-fichero-functions-php\/\" target=\"_blank\" rel=\"noopener\">Qu\u00e9 es y c\u00f3mo se usa el fichero functions.php<\/a>.<\/li>\n<li><a href=\"https:\/\/wpbody.com\/editar-archivo-functions-php-wordpress\/\" target=\"_blank\" rel=\"noopener\">C\u00f3mo editar el archivo functions.php en WordPress<\/a>.<\/li>\n<\/ul>\n<h2>2. Programaci\u00f3n de un plugin de funciones<\/h2>\n<p>Esta t\u00e9cnica supone un paso m\u00e1s en el proceso de personalizaci\u00f3n avanzada que venimos detallando. Ya no se trata de tomar un fichero existente y a\u00f1adirle peque\u00f1os fragmentos de c\u00f3digo, sino de crear un plugin completamente nuevo y personal, del que formar\u00e1n parte una o varias de las funciones personalizadas que sean necesarias. En realidad, crear un plugin propio no es demasiado diferente a lo que ya hemos explicado en cap\u00edtulos precedentes (es decir, a\u00f1adir scripts a las \u00e1reas de hooks del framework Genesis o activarlos mediante el plugin Code Snippets), ya que los principios de programaci\u00f3n y las cautelas que se deben adoptar son id\u00e9nticos. Ahora bien, la definici\u00f3n de un plugin exige respetar minuciosamente las <a href=\"https:\/\/codex.wordpress.org\/Writing_a_Plugin\" target=\"_blank\" rel=\"noopener\">normas y est\u00e1ndares que WordPress ha establecido para esta clase de artefactos<\/a>.<\/p>\n<p>Es cierto que la elaboraci\u00f3n de un plugin de funciones puede ser un proceso erizado de dificultades para alguien que no tenga experiencia previa en programaci\u00f3n, pero presenta algunas ventajas considerables con respecto a la edici\u00f3n del fichero functions.php:<\/p>\n<ul>\n<li>Los plugins de funciones no modifican ning\u00fan fichero ya existente en el n\u00facleo de WordPress, los temas o los plugins. En su caso, alteran su comportamiento, o a\u00f1aden nuevas funcionalidades.<\/li>\n<li>Los plugins de funciones presentan riesgos relativamente peque\u00f1os; en efecto, y a diferencia de la modificaci\u00f3n del fichero functions.php del tema, que puede echar abajo nuestro sitio web (sin posibilidad de recuperaci\u00f3n de su estado inicial a no ser que hayamos guardado una copia de seguridad del tema), un error grave provocado por un plugin de funciones se resuelve en la mayor\u00eda de los casos borr\u00e1ndolo desde el interfaz de administraci\u00f3n de WordPress; si esto no es posible, habr\u00e1 que conectarse por FTP y borrarlo, o bien renombrar su extensi\u00f3n.<\/li>\n<li>Los plugins de funciones se pueden modularizar para aislar sus distintos elementos; se pueden definir distintas funciones en el mismo plugin, crear diversos plugins para funciones diferentes, etc.<\/li>\n<\/ul>\n<p>Durante la sesi\u00f3n dedicada a la personalizaci\u00f3n avanzada de WordPress, mostraremos a los asistentes al curso un par de ejemplos de plugins de funciones. Ahora bien, no vamos a explicar su proceso de creaci\u00f3n, ni mucho menos las t\u00e9cnicas de programaci\u00f3n necesarias. En cualquier caso, los interesados en profundizar en este \u00e1mbito pueden consultar los siguientes art\u00edculos:<\/p>\n<ul>\n<li><a href=\"https:\/\/ayudawp.com\/crea-un-plugin-para-liberar-el-fichero-functions-php\/\" target=\"_blank\" rel=\"noopener\">Crea un plugin para liberar el fichero functions.php<\/a>.<\/li>\n<li><a href=\"https:\/\/wpnovatos.com\/crear-plugin-anadir-funciones\/\" target=\"_blank\" rel=\"noopener\">Crear un plugin para a\u00f1adir funciones<\/a>.<\/li>\n<li><a href=\"https:\/\/www.hostinger.es\/tutoriales\/tutorial-wordpress-plugins-crear-plugin-wordpress\/\" target=\"_blank\" rel=\"noopener\">Tutorial de WordPress Plugins: C\u00f3mo crear un plugin de WordPress<\/a>.<\/li>\n<\/ul>\n<h2>3. Plugins especiales: los plugins MU<\/h2>\n<p>Cuando se crea un plugin (sea de funciones, sea de cualquier otro tipo), este se debe colocar en el directorio <strong>\/wp-content\/plugins<\/strong>. Ahora bien, eso no basta, ya que el administrador del sitio debe activarlo para que entre en funcionamiento. Pues bien, existe un tipo de complementos, denominado \u00abplugins MU\u00bb (de <a href=\"https:\/\/codex.wordpress.org\/Must_Use_Plugins\" target=\"_blank\" rel=\"noopener\">must use<\/a>, es decir, de &#8216;uso obligatorio&#8217;), que no requieren activaci\u00f3n. Una vez creados, se suben por FTP al directorio <strong>\/wp-content\/mu-plugins<\/strong>, y <em>voil\u00e0<\/em>, su carga funcional se activa de forma autom\u00e1tica, sin ninguna intervenci\u00f3n posterior del usuario.<\/p>\n<p>Los plugins MU son muy \u00fatiles para a\u00f1adir a una instalaci\u00f3n de WordPress una funcionalidad imprescindible que esta debe tener sin que medie ninguna intervenci\u00f3n de sus usuarios. Normalmente responden a necesidades de personalizaci\u00f3n muy concretas y espec\u00edficas, propias de cada caso individual. Durante la sesi\u00f3n que vamos a dedicar a las t\u00e9cnicas de personalizaci\u00f3n avanzada de WordPress presentaremos algunos ejemplos de este tipo de plugins, y explicaremos las razones y exigencias que han motivado su programaci\u00f3n y puesta en funcionamiento.<\/p>\n<p>A t\u00edtulo de ejemplo, incluimos a continuaci\u00f3n el plugin MU \u00abEnlaces a cursos de WordPress en el PNTE\u00bb, que ha sido programado recientemente por Eduardo Larequi (mediante <a href=\"https:\/\/generatewp.com\/toolbar\/\" target=\"_blank\" rel=\"noopener\">GenerateWP<\/a>, una magn\u00edfica herramienta online de enormes posibilidades), y a\u00f1adido tanto a esta instalaci\u00f3n de WordPress como a la que contiene los <a href=\"http:\/\/blogsfad.educacion.navarra.es\/\" target=\"_blank\" rel=\"noopener\">blogs de pr\u00e1cticas de los alumnos del curso<\/a>. El prop\u00f3sito del plugin es muy simple: a\u00f1adir a la barra de herramientas de WordPress una lista de los cursos que el PNTE ha dedicado a esta aplicaci\u00f3n, para que sirvan a los docentes como material de consulta y referencia.<\/p>\n<p>Los interesados en este tipo de plugins pueden analizar el c\u00f3digo que aparece al final de este art\u00edculo, y tambi\u00e9n consultar los siguientes art\u00edculos:<\/p>\n<ul>\n<li><a href=\"https:\/\/ayudawp.com\/que-son-los-mu-plugins-de-wordpress\/\" target=\"_blank\" rel=\"noopener\">\u00bfQu\u00e9 son los mu-plugins de WordPress?<\/a><\/li>\n<li><a href=\"https:\/\/decodecms.com\/aprende-a-usar-mu-plugins-en-wordpress\/\" target=\"_blank\" rel=\"noopener\">Aprende a usar mu-plugins en WordPress<\/a>.<\/li>\n<li><a href=\"https:\/\/www.sitepoint.com\/wordpress-mu-plugins\/\" target=\"_blank\" rel=\"noopener\">What are WordPress MU-Plugins?<\/a><\/li>\n<\/ul>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">&lt;?php\r\n\/*\r\nPlugin Name: Enlaces a cursos de WordPress en el PNTE\r\nPlugin URI: https:\/\/www.educacion.navarra.es\/web\/pnte\r\nDescription: Este plugin activa en la barra de herramientas de WordPress un men\u00fa de enlaces a los diversos cursos sobre WordPress elaborados por Eduardo Larequi, del PNTE, durante los a\u00f1os 2012, 2016, 2017 y 2018. Como es un plugin MU, se activa autom\u00e1ticamente.\r\nVersion: 0.1\r\nAuthor: Eduardo Larequi\r\nAuthor URI: https:\/\/www.educacion.navarra.es\/web\/pnte\r\n*\/\r\n\r\n\/\/ El c\u00f3digo ha sido elaborado a partir del generador de barras de herramientas del servicio online GenerateWP: https:\/\/generatewp.com\/toolbar\/\r\n\r\nfunction elarequi_menu_cursos_wordpress_pnte() {\r\n  global $wp_admin_bar;\r\n\r\n  $args = array(\r\n    'id'     =&gt; 'menu-principal-cursos-wp',\r\n    'title'  =&gt; 'Cursos de WordPress en el PNTE',\r\n  );\r\n  $wp_admin_bar-&gt;add_menu( $args );\r\n\r\n  $args = array(\r\n    'id'     =&gt; 'curso-2012',\r\n    'parent' =&gt; 'menu-principal-cursos-wp',\r\n    'title'  =&gt; 'Curso de WordPress 2012',\r\n    \t'href'\t =&gt; 'https:\/\/cursoswp.educacion.navarra.es\/cursowp2012\/',\r\n    \t'meta'\t =&gt; array(\r\n      \t'target'\t=&gt;\t '_blank',\r\n      \t'title'\t\t=&gt;\t 'Curso de WordPress 2012',\r\n      )\r\n  );\r\n  $wp_admin_bar-&gt;add_menu( $args );  \r\n  \r\n  $args = array(\r\n    'id'     =&gt; 'curso-2016',\r\n    'parent' =&gt; 'menu-principal-cursos-wp',\r\n    'title'  =&gt; 'Curso de WordPress 2016',\r\n    \t'href'\t =&gt; 'https:\/\/cursoswp.educacion.navarra.es\/cursowp2016\/',\r\n    \t'meta'\t =&gt; array(\r\n      \t'target'\t=&gt;\t '_blank',\r\n      \t'title'\t\t=&gt;\t 'Curso de WordPress 2016',\r\n      )\r\n  );\r\n  $wp_admin_bar-&gt;add_menu( $args ); \r\n\r\n  $args = array(\r\n    'id'     =&gt; 'curso-2017',\r\n    'parent' =&gt; 'menu-principal-cursos-wp',\r\n    'title'  =&gt; 'Curso de WordPress 2017',\r\n    \t'href'\t =&gt; 'https:\/\/cursoswp.educacion.navarra.es\/cursowp2017\/',\r\n    \t'meta'\t =&gt; array(\r\n      \t'target'\t=&gt;\t '_blank',\r\n      \t'title'\t\t=&gt;\t 'Curso de WordPress 2017',\r\n      )\r\n  );\r\n  $wp_admin_bar-&gt;add_menu( $args );\r\n  \r\n  \t$args = array(\r\n    'id'     =&gt; 'curso-2018',\r\n    'parent' =&gt; 'menu-principal-cursos-wp',\r\n    'title'  =&gt; 'Curso de WordPress 2018',\r\n    \t'href'\t =&gt; 'https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/',\r\n    \t'meta'\t =&gt; array(\r\n      \t'target'\t=&gt;\t '_blank',\r\n      \t'title'\t\t=&gt;\t 'Curso de WordPress 2018',\r\n      )\r\n  );  \r\n  $wp_admin_bar-&gt;add_menu( $args );\r\n\r\n}\r\nadd_action( 'wp_before_admin_bar_render', 'elarequi_menu_cursos_wordpress_pnte', 999 );<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Personalizaci\u00f3n del sitio web mediante la edici\u00f3n del fichero functions.php del tema, la programaci\u00f3n de un plugin de funciones y la instalaci\u00f3n de un plugin MU.<\/p>\n","protected":false},"author":1,"featured_media":519,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":""},"categories":[7],"tags":[137,136,138],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.13 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>T\u00e9cnicas avanzadas y plugins especiales - Curso de WordPress 2018<\/title>\n<meta name=\"description\" content=\"T\u00e9cnicas avanzadas y plugins especiales. Personalizaci\u00f3n del sitio web mediante la edici\u00f3n del fichero functions.php del tema, la programaci\u00f3n de un plugin de funciones y la instalaci\u00f3n de un plugin MU.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"T\u00e9cnicas avanzadas y plugins especiales - Curso de WordPress 2018\" \/>\n<meta property=\"og:description\" content=\"T\u00e9cnicas avanzadas y plugins especiales. Personalizaci\u00f3n del sitio web mediante la edici\u00f3n del fichero functions.php del tema, la programaci\u00f3n de un plugin de funciones y la instalaci\u00f3n de un plugin MU.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/\" \/>\n<meta property=\"og:site_name\" content=\"Curso de WordPress 2018\" \/>\n<meta property=\"article:published_time\" content=\"2018-03-14T20:42:08+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-03-14T21:05:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-content\/uploads\/2018\/03\/programando.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1600\" \/>\n\t<meta property=\"og:image:height\" content=\"1067\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Administrador\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Administrador\" \/>\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:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/\",\"url\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/\",\"name\":\"T\u00e9cnicas avanzadas y plugins especiales - Curso de WordPress 2018\",\"isPartOf\":{\"@id\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#website\"},\"datePublished\":\"2018-03-14T20:42:08+00:00\",\"dateModified\":\"2018-03-14T21:05:40+00:00\",\"author\":{\"@id\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#\/schema\/person\/66915292b50e141a7c1d01acb5eb0f84\"},\"description\":\"T\u00e9cnicas avanzadas y plugins especiales. Personalizaci\u00f3n del sitio web mediante la edici\u00f3n del fichero functions.php del tema, la programaci\u00f3n de un plugin de funciones y la instalaci\u00f3n de un plugin MU.\",\"breadcrumb\":{\"@id\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"T\u00e9cnicas avanzadas y plugins especiales\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#website\",\"url\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/\",\"name\":\"Curso de WordPress 2018\",\"description\":\"Curso avanzado sobre WordPress en el CAP de Pamplona\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#\/schema\/person\/66915292b50e141a7c1d01acb5eb0f84\",\"name\":\"Administrador\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/636dfeeef5d663d0784baecccc697b02?s=96&d=identicon&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/636dfeeef5d663d0784baecccc697b02?s=96&d=identicon&r=g\",\"caption\":\"Administrador\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"T\u00e9cnicas avanzadas y plugins especiales - Curso de WordPress 2018","description":"T\u00e9cnicas avanzadas y plugins especiales. Personalizaci\u00f3n del sitio web mediante la edici\u00f3n del fichero functions.php del tema, la programaci\u00f3n de un plugin de funciones y la instalaci\u00f3n de un plugin MU.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/","og_locale":"es_ES","og_type":"article","og_title":"T\u00e9cnicas avanzadas y plugins especiales - Curso de WordPress 2018","og_description":"T\u00e9cnicas avanzadas y plugins especiales. Personalizaci\u00f3n del sitio web mediante la edici\u00f3n del fichero functions.php del tema, la programaci\u00f3n de un plugin de funciones y la instalaci\u00f3n de un plugin MU.","og_url":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/","og_site_name":"Curso de WordPress 2018","article_published_time":"2018-03-14T20:42:08+00:00","article_modified_time":"2018-03-14T21:05:40+00:00","og_image":[{"width":1600,"height":1067,"url":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-content\/uploads\/2018\/03\/programando.jpg","type":"image\/jpeg"}],"author":"Administrador","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Administrador","Tiempo de lectura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/","url":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/","name":"T\u00e9cnicas avanzadas y plugins especiales - Curso de WordPress 2018","isPartOf":{"@id":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#website"},"datePublished":"2018-03-14T20:42:08+00:00","dateModified":"2018-03-14T21:05:40+00:00","author":{"@id":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#\/schema\/person\/66915292b50e141a7c1d01acb5eb0f84"},"description":"T\u00e9cnicas avanzadas y plugins especiales. Personalizaci\u00f3n del sitio web mediante la edici\u00f3n del fichero functions.php del tema, la programaci\u00f3n de un plugin de funciones y la instalaci\u00f3n de un plugin MU.","breadcrumb":{"@id":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/tecnicas-avanzadas-y-plugins-especiales\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/"},{"@type":"ListItem","position":2,"name":"T\u00e9cnicas avanzadas y plugins especiales"}]},{"@type":"WebSite","@id":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#website","url":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/","name":"Curso de WordPress 2018","description":"Curso avanzado sobre WordPress en el CAP de Pamplona","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#\/schema\/person\/66915292b50e141a7c1d01acb5eb0f84","name":"Administrador","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/636dfeeef5d663d0784baecccc697b02?s=96&d=identicon&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/636dfeeef5d663d0784baecccc697b02?s=96&d=identicon&r=g","caption":"Administrador"}}]}},"_links":{"self":[{"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/posts\/508"}],"collection":[{"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/comments?post=508"}],"version-history":[{"count":0,"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/posts\/508\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/media\/519"}],"wp:attachment":[{"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/media?parent=508"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/categories?post=508"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cursoswp.educacion.navarra.es\/cursowp2018\/wp-json\/wp\/v2\/tags?post=508"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}