De ce nu este apelat/declanșat hook-ul "plugins_loaded"?

2 sept. 2013, 18:18:56
Vizualizări: 17.3K
Voturi: 8

Încerc să apelez load_plugin_textdomain după ce plugin-urile sunt încărcate, dar acest lucru nu se întâmplă. Am un plugin activat, deci nu ar trebui să se declanșeze?

add_action("plugins_loaded", "test_override");

function init_localization()
{
    echo "init_localization<br>";
    load_plugin_textdomain
    (
        TEXT_DOMAIN, 
        false, 
        LANGUAGE_DIR
    );
}

function test_override()
{
    echo "text_override<br>";
}

Într-un alt context, când apelez add_action("init", "init_custom_post_types"), funcționează corect.

Ar putea fi relevant să știți că lucrez la o temă personalizată.

Vă mulțumesc dacă puteți oferi orice îndrumare sau dacă aveți nevoie de informații suplimentare care v-ar putea ajuta să mă ajutați.

1
Comentarii

În plus față de ceea ce a menționat Geert, de ce nu utilizați load_theme_textdomain() dacă lucrați la o temă.

User User
2 sept. 2013 18:31:28
Toate răspunsurile la întrebare 1
3
22

Aruncați o privire în fișierul wp-settings.php. Veți observa că acțiunea plugins_loaded este declanșată înainte de încărcarea temei. Prima acțiune disponibilă pentru teme pentru a se conecta este after_setup_theme.

2 sept. 2013 18:26:26
Comentarii

Foarte tare, mulțumesc pentru îndrumare Geert și splashingpixels. Nu foloseam acele evenimente sau funcții pur și simplu pentru că nu le cunoșteam și mă bazam pe un alt proiect. Acum înțeleg că acțiunea este apelată, însă traducerile nu sunt aplicate. Elementele de traducere sunt pentru etichetele tipurilor personalizate de postări. Unde ar trebui să mă uit pentru a le încărca din fișierele PO/MO?

jansensan jansensan
2 sept. 2013 19:32:27

Multe pluginuri nu-și conectează traducerile la hook-ul corect (cum ar fi after_setup_theme sau init). În acest caz nu le poți suprascrie din tema ta. Iată cum ar trebui să încarce pluginurile traducerile corect. Dacă autorul pluginului nu actualizează codul, ai putea încerca o soluție alternativă cu must-use-plugin.

Geert Geert
2 sept. 2013 21:30:36

Cred că nu m-am exprimat clar. splashingpixels m-a îndreptat pe calea cea bună: de fapt construiesc o temă personalizată, deci nu am nevoie de informații despre pluginuri. Folosesc add_action("after_setup_theme", "init_localization"), dar partea de admin/CMS din WP nu aplică șirurile din fișierele PO/MO elementelor așa cum mă așteptam. Aveți sugestii?

jansensan jansensan
8 sept. 2013 04:30:22