Title: proteusbr's Replies | WordPress.org

---

# proteusbr

  [  ](https://wordpress.org/support/users/proteusbr/)

 *   [Profile](https://wordpress.org/support/users/proteusbr/)
 *   [Topics Started](https://wordpress.org/support/users/proteusbr/topics/)
 *   [Replies Created](https://wordpress.org/support/users/proteusbr/replies/)
 *   [Reviews Written](https://wordpress.org/support/users/proteusbr/reviews/)
 *   [Topics Replied To](https://wordpress.org/support/users/proteusbr/replied-to/)
 *   [Engagements](https://wordpress.org/support/users/proteusbr/engagements/)
 *   [Favorites](https://wordpress.org/support/users/proteusbr/favorites/)

 Search replies:

## Forum Replies Created

Viewing 7 replies - 1 through 7 (of 7 total)

 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[WooCommerce Parcelas] Erro no Log](https://wordpress.org/support/topic/erro-no-log-2/)
 *  Thread Starter [proteusbr](https://wordpress.org/support/users/proteusbr/)
 * (@proteusbr)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/erro-no-log-2/#post-18575967)
 * Por que o aviso aparece
    1. **Quando o plugin é carregado**, `woocommerce-parcelas.php` **instancia o objeto`
       Main` imediatamente**: `wcParcelas(); // executa já no “plugin load”`
    2. Em cadeia, o container resolve a classe `WcParcelas\App\Common\Settings`; no**
       construtor de `Settings` ainda durante o carregamento do plugin** ocorre: `__('
       Cor: ', 'wc-parcelas' ); // vários __() parecidos`
    3. Como o _text-domain_ **ainda não foi carregado** e o _hook_ `init` tampouco 
       ocorreu, o WordPress tenta carregá-lo “just-in-time”, gerando o _doing\_it\_wrong_:
       Translation loading for the **wc-parcelas** domain was triggered too early…
 * Passo-a-passo para corrigir
 * Há dois ajustes complementares (ambos simples e retro-compatíveis): Onde O que
   fazer Por quê `woocommerce-parcelas.php`**Carregar o arquivo de tradução só no`
   init` (ou mais tarde)**. Garante que o domínio esteja disponível _antes_ de você
   chamar `__()`, mas _depois_ do ponto permitido pelo core. `app/Common/Settings.
   php`**Adiar as chamadas a `__()` para o próprio `init`** (ou para qualquer callback
   que rode depois). Impede que o JIT seja acionado durante o carregamento do plugin.
   1. Carregar o texto do plugin na hora certa
 *     ```wp-block-code
       // woocommerce-parcelas/woocommerce-parcelas.php
       add_action( 'init', function () {
           load_plugin_textdomain(
               'wc-parcelas',
               false,
               dirname( WC_PARCELAS_BASENAME ) . '/languages'
           );
       }, 0 );   // prioridade 0 para ser o primeiro no init
       ```
   
 * 2. Mover as traduções do construtor para um callback em `init`
 *     ```wp-block-code
       // woocommerce-parcelas/app/Common/Settings.php
       class Settings {
   
           public function __construct() {
               add_action( 'admin_menu', [ $this, 'fswp_admin_menu' ], 100 );
               add_action( 'admin_init', [ $this, 'fswp_page_settings' ] );
   
               // ← Antes as traduções estavam aqui: gerava o aviso
               add_action( 'init', [ $this, 'init_style_labels' ] );
           }
   
           /**
            * Só é chamado depois do init, quando o domínio de tradução já está carregado.
            */
           public function init_style_labels() : void {
               $this->style = [
                   'color' => [
                       'title'    => __( 'Cor: ', 'wc-parcelas' ),
                       'function' => 'fswp_text_callback',
                       'class'    => 'color-field',
                   ],
                   'font-weight' => [
                       'title'    => __( 'Peso: ', 'wc-parcelas' ),
                       'function' => 'fswp_select_callback',
                       'options'  => [
                           'inherit' => '-',
                           100 => 100,
                           200 => 200,
                           300 => 300,
                           400 => 400,
                           500 => 500,
                           600 => 600,
                           700 => 700,
                           800 => 800,
                           900 => 900,
                       ],
                   ],
                   'font-size' => [
                       'title'       => __( 'Tamanho: ', 'wc-parcelas' ),
                       'function'    => 'fswp_text_callback',
                       'placeholder' => __( 'Ex.: 18px ou 1.2em', 'wc-parcelas' ),
                   ],
               ];
           }
       ```
   
 * > **Observação:** caso outra classe faça chamadas a `__()` no construtor, repita
   > a mesma estratégia:
   > – ou mova as strings para um método chamado em `init`,–
   > ou adie a própria criação do objeto (ex.: instantiate-o também via `init`).
 * Resultado esperado
    - O _hook_ `init` carrega o arquivo de tradução.
    - Os métodos que usam `__()` agora são executados **após** `init`.
    - O aviso “_load\_textdomain\_just\_in\_time foi chamado incorretamente_” desaparece
      do log.
 * Isso resolve o problema sem impactar outras funcionalidades do plugin.
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[Pagar.me para WooCommerce] Warning: Attempt to read property “total” on null](https://wordpress.org/support/?post_type=topic&p=18271129)
 *  Thread Starter [proteusbr](https://wordpress.org/support/users/proteusbr/)
 * (@proteusbr)
 * [1 year, 3 months ago](https://wordpress.org/support/?post_type=topic&p=18271129#post-18271150)
 * (duplicate)
    -  This reply was modified 1 year, 3 months ago by [proteusbr](https://wordpress.org/support/users/proteusbr/).
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[WooCommerce Stripe Payment Gateway] Apple Pay And CSS](https://wordpress.org/support/topic/apple-pay-and-css/)
 *  Thread Starter [proteusbr](https://wordpress.org/support/users/proteusbr/)
 * (@proteusbr)
 * [4 years, 7 months ago](https://wordpress.org/support/topic/apple-pay-and-css/#post-14989815)
 * [https://snipboard.io/JYld2G.jpg](https://snipboard.io/JYld2G.jpg)
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[WooCommerce Stripe Payment Gateway] Apple Pay And CSS](https://wordpress.org/support/topic/apple-pay-and-css/)
 *  Thread Starter [proteusbr](https://wordpress.org/support/users/proteusbr/)
 * (@proteusbr)
 * [4 years, 7 months ago](https://wordpress.org/support/topic/apple-pay-and-css/#post-14989811)
 * [https://snipboard.io/eRNTwd.jpg](https://snipboard.io/eRNTwd.jpg)
    [https://snipboard.io/kGB9iV.jpg](https://snipboard.io/kGB9iV.jpg)
   [https://snipboard.io/eIsv6C.jpg](https://snipboard.io/eIsv6C.jpg)
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[WooCommerce Stripe Payment Gateway] Apple Pay And CSS](https://wordpress.org/support/topic/apple-pay-and-css/)
 *  Thread Starter [proteusbr](https://wordpress.org/support/users/proteusbr/)
 * (@proteusbr)
 * [4 years, 7 months ago](https://wordpress.org/support/topic/apple-pay-and-css/#post-14986719)
 * in the strip I added the following domains: store.pericialmed.com and pericialmed.
   com
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[WooCommerce Stripe Payment Gateway] Custom Title is not working](https://wordpress.org/support/topic/custom-title-is-not-working/)
 *  [proteusbr](https://wordpress.org/support/users/proteusbr/)
 * (@proteusbr)
 * [4 years, 7 months ago](https://wordpress.org/support/topic/custom-title-is-not-working/#post-14976466)
 * Same here
    [https://loja.pericialmed.com/](https://loja.pericialmed.com/)
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[WooCommerce Stripe Payment Gateway] Apple Pay And CSS](https://wordpress.org/support/topic/apple-pay-and-css/)
 *  Thread Starter [proteusbr](https://wordpress.org/support/users/proteusbr/)
 * (@proteusbr)
 * [4 years, 7 months ago](https://wordpress.org/support/topic/apple-pay-and-css/#post-14976213)
 * Just fix the CSS changing the Theme to storefront, but Apple Pay is not working.

Viewing 7 replies - 1 through 7 (of 7 total)