Cum să apelezi o funcție dintr-un plugin din index.php
Am creat o funcție în plugin-ul meu myplugin
cu numele foo
, cum pot să o apelez din frontend?
// exemplu în index.php?

La fel cum ai face cu oricare altul:
foo();
Pluginurile active sunt încărcate înaintea fișierelor temei
Poate dorești să verifici dacă pluginul tău este activat și funcția este disponibilă pentru a evita probleme dacă uiți să-l activezi, de exemplu:
if(function_exists('foo')){
foo();
} else {
echo "oh nu, nu ai activat/instalat 'myplugin', fă asta înainte ca funcționalitatea 'foo' să fie disponibilă";
}
De asemenea, reține că foo
este un nume de funcție foarte generic, poate că pluginul "omgfoo" are și el o funcție foo
. Așadar, prefixează sau folosește un namespace unic pentru funcția ta
În cele din urmă, vei dori să utilizezi acțiuni și filtre, deoarece sunt mai sigure și o practică mai bună, poți continua să citești despre asta aici

Nu ar trebui. O temă nu ar trebui să depindă de un plugin decât într-un mediu foarte controlat. Folosește în schimb acțiuni și filtre.
Deci, în tema ta ai putea folosi:
do_action( 'before_header' );
... sau ...
$bg_options = array (
'wp-head-callback' => 't5_custom_background_frontend',
'default-color' => 'f0f0f0',
'default-image' => '',
);
$bg_options = apply_filters( 't5_theme_bg_options', $bg_options );
add_theme_support( 'custom-background', $bg_options );
add_action( 'login_head', $bg_options['wp-head-callback'] );
În plugin-ul tău folosești add_action()
și add_filter()
pentru a modifica sau adăuga conținut nou. În acest fel, tema va continua să funcționeze când plugin-ul este dezactivat și nu trebuie să folosești function_exists()
.

Pluginurile active sunt încărcate (din punct de vedere tehnic - fișierele lor sunt incluse și procesate de PHP în timpul încărcării WordPress) până când rulează șabloanele temei.
Deci funcția ta ar trebui să fie disponibilă și poate fi apelată ca orice altă funcție:
<?php foo(); ?>
de exemplu.
