En este ejemplo, tomaremos el caso concreto de una interfaz simple que incluye múltiples elementos. Hemos elegido usar una tabla de "Proyectos" en la que asignaremos documentos. Por lo tanto, para un proyecto, podemos asignar varios documentos. Y para facilitar la administración, nos aseguraremos de que podamos gestionar nuestra interfaz anidada directamente dentro de la vista de edición de nuestro proyecto.Necesitamos crear el esquema. En primer lugar, importamos nuestro esquema actual en My...
Útil cuando recibes la entrega de un proyecto, y el idiota que lo entrega olvida decirte que la contraseña es admin1234. En lugar de quedarte atascado sin poder ejecutar tus pruebas, simplemente necesitas aplicar la siguiente consulta SQL:UPDATE wp_users SET user_pass = MD5( 'nueva_contraseña' ) WHERE user_login = 'tu_nombre_de_usuario';
Las revisiones son buenas, pero consumen espacio en la base de datos. De vez en cuando es necesario hacer un poco de limpieza.DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision'
Es cierto que cuando hablamos de un extracto, nadie entiende a qué se refiere.Para cambiar el título de esta área de edición, simplemente utiliza el siguiente fragmento de código:
add_filter( 'gettext', 'wpse22764_gettext', 10, 2 );
function wpse22764_gettext( $translation, $original )
{
if ( 'Excerpt' == $original ) {
return 'Sous-titre';
}else{
$pos = strpos($original, 'Excerpts are optional hand-crafted summaries of your');
if ($pos !== false) {
return 'Sous-titre affiché dans les ...
Para asegurarse de que no se suba cualquier cosa desde el administrador, puede configurar los tipos MIME autorizados de la siguiente manera:
add_filter('upload_mimes','custom_upload_mimes');
function custom_upload_mimes($mime_types=array()){
$mime_types = array(
'jpg|jpeg|jpe' => 'image/jpeg',
'png' => 'image/png',
'mp4' => 'video/mp4',
'flv' => 'video/x-flv'
);
return $mime_types;
}
Para agregar un filtro de autor en la página de lista de artículos disponible en WordPress, simplemente añade el siguiente código al archivo functions.php: Nota: He dejado el comentario en la instrucción condicional referente a los tipos de publicaciones, podría ser útil 😊
function restrict_manage_authors() {
/*if (isset($_GET['post_type']) && post_type_exists($_GET['post_type']) && in_array(strtolower($_GET['post_type']), array('your_custom_post_types', 'here'...
Para eliminar los metaboxes de comentarios de las páginas de edición de contenido de WordPress, agrega el siguiente código a tu archivo functions.php:
add_action('admin_menu','remove_comments_metabox');
function remove_comments_metabox() {
remove_meta_box( 'postcomments','post','normal' );
}
// Disable support for comments and trackbacks in post types
function df_disable_comments_post_types_support() {
$post_types = get_post_types();
foreach ($post_types as $post_type) {
if(post_type_support...
Para cambiar los colores predeterminados disponibles en el editor WYSIWYG de WordPress, simplemente añade el siguiente código al archivo functions.php:
// change buttons in WYSWIG post editor, edit color palette
function change_mce_options( $init ) {
$init['theme_advanced_text_colors'] = 'd21268,146c52,82b600,00949b,010080,001c4b';
$init['theme_advanced_more_colors'] = true;
return $init;
}
add_filter('tiny_mce_before_init', 'change_mce_options');
No tengo un interés real en añadir un favicon al área de administración de WordPress, pero un cliente puede solicitarlo, lo cual ya ha ocurrido:
function favicon(){
echo '<link rel="shortcut icon" href="',get_template_directory_uri(),'/images/favicon.ico" />',"\n";
}
add_action('admin_head','favicon');
Cuando instalas WPML para gestionar traducciones, automáticamente añade promociones para traducciones pagadas en la página de edición de entradas. Para eliminarlas, una forma sencilla es borrar el cuadro del DOM.Inserta el siguiente código en tu archivo functions.php:
add_action( 'admin_footer', 'wpmlRemoveBox_hook' );
function wpmlRemoveBox_hook( $hook_suffix )
{
?>
<script type="text/javascript">
jQuery( document ).ready(function() {
jQuery('.icl_cyan_box').remove();
...
Para configurar los colores predeterminados para el selector de color de los campos de tipo personalizado, simplemente agrega un fragmento de código JavaScript para sobrescribir la configuración predeterminada.En tu archivo functions.php, añade el siguiente código y configura la paleta como desees:
add_action( 'admin_footer', 'backgroundColor_hook' );
function backgroundColor_hook( $hook_suffix )
{
?>
<script type="text/javascript">
jQuery( document ).ready(function() {
...
Para asociar una captura de pantalla y agregar créditos para un tema en la página de selección de temas de WordPress, simplemente añade un archivo llamado « screenshot.jpg » y colócalo en la raíz del tema.Para los créditos, solo añade el siguiente código al archivo style.css en la raíz del tema e incluye el siguiente encabezado:
@charset "utf-8";
/*
Theme Name: Le nom de mon theme
Theme URI: http://ledomainedutheme.com/cequetuveux/
Author: partITech
Author URI: http://ww...
Este ejemplo permite la adición de una página de opciones para un tema de WordPress. El archivo debe llamarse theme-options.php y debe colocarse en el directorio de funciones de tu tema. Este ejemplo se ha tomado del proyecto Pubicis-Verbe.
<?php
add_action('admin_menu','verbe_menu_page');
function verbe_menu_page(){
add_theme_page('Verbe Theme Options', 'Theme Option', 'manage_options', 'verbe-theme-option', 'verbe_setting_page');
}
add_action('admin_init', 'verbe_register_settin...
Sobrescribiendo la configuración por defecto de TinyMCE:
Para insertar en el functions.php
function myformatTinyMCE($in)
{
$in['remove_linebreaks']=false;
$in['gecko_spellcheck']=false;
$in['keep_styles']=true;
$in['accessibility_focus']=true;
$in['tabfocus_elements']='major-publishing-actions';
$in['media_strict']=false;
$in['paste_remove_styles']=false;
$in['paste_remove_spans']=false;
$in['paste_strip_class_attributes']='none';
$in['paste_text_use_dialog']=true;
$in['wpeditimage_disable_ca...
Ejemplo de adición manual de una taxonomía (sin pasar por la configuración).Para colocar en el archivo functions.php:
/**
* Manual add new Field to taxonomy or you can use plugin "taxonomy manager"
*
* BEGIN
*/
// A callback function to add a custom field to our "expertise" taxonomy
function expertise_taxonomy_custom_fields($tag) {
// Check for existing taxonomy meta for the term you're editing
$t_id = $tag->term_id; // Get the ID of the term you're editing
$term_meta = get_option("t...
Para colocar en el archivo functions.php:
function modify_footer_admin () {
echo 'Created by <a href="http://www.partitech.com">Partitech</a>.';
}
if (is_admin()) {
add_filter('admin_footer_text', 'modify_footer_admin');
}
En algunos casos, necesitamos eliminar todas las metaetiquetas predeterminadas de las plantillas de WordPress. Para hacer esto, simplemente añade el siguiente código a tu archivo functions.php
remove_action('wp_head', 'wp_print_styles', 8);
remove_action('wp_head', 'wp_print_head_scripts', 9);
remove_action('wp_head', 'feed_links_extra', 3);
remove_action('wp_head', 'feed_links', 2);
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', ...