Existe um gancho para colocar stylesheet e / ou JS dentro de iframes (thickbox ou tinyMCE) na área administrativa

4

Estou trabalhando no tema da minha área administrativa e queria fazer algumas modificações na aparência do thickbox e do tinyMCE. Eu poderia fazer a maioria das alterações adicionando folhas de estilo personalizadas e JS à minha área de administração usando wp_enqueue_script() e wp_enqueue_style() , mas tive dificuldades em fazer outras alterações. Isso ocorre porque os iframes que contêm os elementos não são alcançáveis pelos meus próprios estilos ou têm em sua cabeça alguma outra folha de estilo e JS que sobrepõem a minha.

Eu mais ou menos consegui contornar isso usando alguns JavaScript e a declaração CSS !important , mas eu queria saber se havia ganchos que me permitissem chamar wp_enqueue_script() e wp_enqueue_style() para colocar meus scripts dentro desses iframes cabeçalhos? Alguns hooks são semelhantes a admin_head ou admin_init , mas para o thickbox ou iframes?

    
por nineam 08.02.2012 / 20:20

2 respostas

3

Você pode ignorar o CSS usando o admin_print_scripts admin_head-media-upload-popup e adicionar o css para atender às suas necessidades. Isto pode ser feito através do arquivo functions.php ou criando um plugin. Aqui está o código em um formato de plug-in para começar a adicionar o estilo:

<?php
/*
Plugin Name: Some Name
Description: Custom Thickbox Styles
*/
add_action('admin_head-media-upload-popup', 'custom_tb_styles');
function custom_tb_styles() {
  ?>
  <style>
    #TB_window {
    background:silver;
    }
    /*
    YOUR CUSTOM STYLES HERE
    */
  </style>
  <?php
  }

Se você está adicionando o código ao seu arquivo functions.php, basta adicionar isso ao arquivo:

<?php
add_action('admin_head-media-upload-popup', 'custom_tb_styles');
function custom_tb_styles() {
  ?>
  <style>
    #TB_window {
    background:silver;
    }
    /*
    YOUR CUSTOM STYLES HERE
    */
  </style>
  <?php
  }

Outra opção é cancelar o registro dos estilos do Thickbox e adicionar os seus próprios.

_Editado de acordo com o comentário de ungestaltbar , que aponta para o gancho correto para imprimir o estilo / script somente no iframe thickbox. Os ganchos de ação usados anteriormente ( admin_print_scripts & admin_print_styles ) serão chamados em todas páginas administrativas.

    
por Jeremy Jared 08.02.2012 / 20:32
2

Para o TinyMCE, existe uma função específica add_editor_style () para enfileirar uma folha de estilo no editor visual. Se você chamar isso em functions.php , basta colocar editor-style.css na pasta do seu tema e pronto. Caso contrário, a função aceita um argumento de um nome de folha de estilo personalizado.

    
por mrwweb 05.06.2012 / 17:06