web-dev-qa-db-fra.com

Ajouter un plugin avant le conteneur principal

Si j'ai un plugin qui affiche (simplement) "Hello World", et que je veux qu'il soit en dehors du conteneur principal, alors, comme ceci:

<h1>Hello world!</h1>
<div id="content">
    .
    .
    .
</div>

Au lieu de:

<div id="content">
    <h1>Hello world!</h1>
    .
    .
    .
</div>

Comment puis-je faire ce travail?

J'ai créé un thème enfant et je ne souhaite pas modifier les fichiers de thème parent (si nécessaire).

J'ai vu une solution que vous pouvez faire quelque chose comme ça:

add_action('__before_main_container', 'my_func', 0);

(Dans le fichier functions.php ) et my_func imprimerait du code HTML, mais cela ne fonctionne pas pour une raison quelconque (il n’affiche rien dans le fichier). page).

Une autre chose avec cela, le plugin que j'utilise doit être ajouté comme suit:

[plugin id="1"]

à la page que je veux qu'il soit sur. Le problème avec ceci est que je ne peux pas simplement faire:

echo '[plugin id="1"]';

car cela ne déclencherait pas le plugin!

Alors, que puis-je faire pour que cela fonctionne?

(Je veux faire cela parce que je veux quelque chose de spécifique en pleine largeur mais pas le conteneur lui-même)

EDIT: Ok J'ai vu que je pouvais écraser header.php , c'est génial, mais comment puis-je y insérer le plugin uniquement pour des pages spécifiques ? ou des pages qui incluent:

[plugin id="1"]

par exemple?

1
Naor Hadar

il semble que vous utilisiez un shortcode pour exécuter votre plugin. donc au lieu de juste

echo '[plugin id="1"]';

utilisez ceci:

echo do_shortcode('[plugin id="1"]');

mettez ceci dans le fichier php où vous voulez le charger. Par exemple, juste au-dessus du

<div id="content">

cela peut être dans le fichier que vous souhaitez exécuter le shortcode

3
rudtek