Gracias a Brian Fegter . Si esta respuesta es útil, califique la respuesta de Brian aquí arriba.
Este es un ejemplo completamente funcional de cómo agregar cosas al "encabezado" mediante su propio complemento. En este caso, estoy agregando las propiedades de Facebook Open Graph para los botones Compartir y Me gusta.
Simplemente cree un archivo PHP con el nombre especificado en "Plugin Script" al comienzo del código de muestra, colóquelo en una carpeta con el mismo nombre sin la extensión, obviamente, y copie esta carpeta en el destino "/ wp-content / complementos ".
Luego, dentro de "Wordpress", actualice "Complementos" y verá su nuevo complemento instalado. Simplemente actívelo y sus páginas comenzarán a contener los metadatos de Open Graph Facebook y Twitter.
MUY IMPORTANTE: El archivo PHP debe estar codificado en UTF-8 sin BOM, y no debe tener absolutamente ningún carácter al final. Debo asegurar esto.
<?php
/*
Plugin Name: My Facebook Open Graph Protocol
Plugin Script: my-facebook-open-graph-protocol.php
Plugin URI:
Description: Add Facebook Open Graph Protocol to header
Author: Diego Soto (Thanks to Brian Fegter)
Donate Link:
License: GPL
Version: 0.1-alpha
Author URI: /wordpress/43672/how-to-add-code-to-header-php-in-a-child-theme
Text Domain: myfogp
Domain Path: languages/
*/
/* Copyright 2014 Diego Soto (http://disientoconusted.blogspot.com.ar/)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License, version 2, as
published by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
add_action('wp_head', 'wpse_43672_wp_head');
function wpse_43672_wp_head(){
$title = get_the_title() ." ‹ ". get_bloginfo( "name", "display" );
$src = wp_get_attachment_image_src( get_post_thumbnail_id(get_the_ID()), array( 90,55 ), false, "" );
$face_metad = get_post_meta(get_the_ID(), "metadescription", true);
$twitter_metad = get_post_meta(get_the_ID(), "metadescription140", true);
if (empty($twitter_metad))
$twitter_metad = $face_metad;
//Close PHP tags
?>
<meta property="og:title" content="<?php echo esc_attr($title); ?>" />
<meta property="og:image" content="<?php echo esc_attr($src[0]); ?>" />
<meta property="og:url" content="<?php the_permalink(); ?>" />
<meta property="og:description" content="<?php if (!empty($face_metad)) echo esc_attr($face_metad); else the_excerpt(); ?>" />
<meta name="twitter:title" content="<?php echo esc_attr($title); ?>" />
<meta name="twitter:image" content="<?php echo esc_attr($src[0]); ?>" />
<meta name="twitter:url" content="<?php the_permalink(); ?>" />
<meta name="twitter:description" content="<?php if (!empty($twitter_metad)) echo esc_attr($twitter_metad); else the_excerpt(); ?>" />
<?php //Open PHP tags
}
?>
Cualquier persona interesada en la funcionalidad del complemento.
El título será la concatenación del nombre de la página actual y el nombre del sitio.
Si existe un campo personalizado llamado "metadescripción", el complemento intenta tomar la descripción de este campo. De lo contrario, tome la descripción del extracto.
Como imagen, el complemento intenta usar la miniatura de la imagen presentada en la página.