Как Создать Простой Плагин, Который Показывает/Скрывает Html-Код В Wordpress?

  • Автор темы OretBraguerit70
  • Обновлено
  • 21, Oct 2024
  • #1

Я пытаюсь создать свой первый плагин WordPress. Я попытаюсь объяснить, что я пытаюсь сделать... Надеюсь, кто-нибудь мне поможет :)

Я хотел бы разрешить пользователю бэк-офиса переключаться между двумя HTML-кодами где-нибудь на моем сайте с помощью простой кнопки. Пример: где-то на моем сайте есть код для встраивания видео с лайвами. Но когда трансляции нет, пользователь хочет вместо этого показать изображение.

Поэтому я попытался создать привязку, которая меняется при активации или деактивации плагина. я положил

 echo '<p>Image</p>'; 
where I want the code appear and I put this in a plugin :

<?php /** * Plugin Name: Europhonica Image/Vidéo switch (by Jules) */ function my_switch_function() { do_action('my_switch_function'); } add_action( 'my_switch_function', 'image_my_switch_function' ); function image_my_switch_function() { echo '<p>Image</p>'; } ?>

Но ничего не происходит... Моя функция отображается как комментарий, когда мы посещаем сайт... Знаете ли вы, как показать <?php my_switch_function(); ?> only when the plugin is activated ?

Спасибо всем!

#разработка плагинов

OretBraguerit70


Рег
25 Oct, 2024

Тем
75

Постов
184

Баллов
559
  • 25, Oct 2024
  • #2

Есть много способов сделать это: создать шорткод для размещения в любом месте или отфильтровать содержимое сообщения и добавить то, что вы хотите.

Если ваш плагин не активирован, это не будет отображаться,

 
  echo do_shortcode('[show_image]');
 

do_shortcode() filter will be embed in any post, page... depending on your conditions. With add_shortcode method the shortcode can be add manually (in the content or widget) or directly in the template with the_content .

Непосредственно в файле шаблона:

<?php /** * Plugin Name: Europhonica Image/Vidéo switch (by Jules) */ // the_content method add_filter( 'the_content', 'image_my_switch_function_content' ); function image_my_switch_function_content($content){ if(is_user_logged_in()){ // change with your conditions $content = '<p>Изображение</p>'. $content } return $content; } // shortcode method add_shortcode('show_image', 'image_my_switch_function_shortcode'); function image_my_switch_function_shortcode($atts, $content="нулевой") { if(is_user_logged_in()){ // change with your conditions return '<p>Image</p>'; } } // Enable the use of shortcodes in text widgets. add_filter( 'widget_text', 'do_shortcode' ); ?>

Подробнее об этих функциях вы можете прочитать add_shortcode(), do_shortcode(), the_content

Надеюсь, это поможет!

 

Brooricturfig60


Рег
25 Oct, 2024

Тем
59

Постов
207

Баллов
522
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно