Подтвердить что ты не робот

Wordpress - плагин для включения фрагмента кода в отдельные части макета

Попытка найти некоторое подтверждение о том, как это возможно в пределах плагина без успеха:

Цель состоит в том, чтобы пользователь мог использовать плагин, который бы вставлял предварительно определенный фрагмент кода в выбранную часть макета. Типичное использование:

  • Пользователь выбирает "Ниже заголовка"
  • Включенный код появляется под заголовком

  • Пользователь выбирает "Над нижним колонтитулом"

  • Добавленный код появляется над нижним колонтитулом

Фрагмент "code" будет похож на набор ссылок или изображение. Чтобы они могли выбирать из раскрывающегося меню, где оно должно появляться на своем сайте без редактирования кода темы.

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

4b9b3361

Ответ 1

В Wordpress вы можете изменить выход системы в определенных местах, используя крючки действий и фильтры. Например:

function putSomeTextInTheFooter() {
    echo '<p>This text is inserted at the bottom</p>';
}
add_action( 'wp_footer', 'putSomeTextInTheFooter' );

Этот PHP-код изменит нижний колонтитул, добавив пользовательское действие [function], которое Wordpress будет запускать прямо в событии под названием "wp_footer", что самоочевидно. Есть крючки и фильтры для всех видов вещей. Wordpress имеет богатый набор функций для изменения практически всего. Этот вид кода может быть либо в теме, либо в плагине. Ознакомьтесь с кодом здесь: https://codex.wordpress.org/Plugin_API/Action_Reference

Ответ 2

Напишите функцию shortcode в функции function.php

<?php 
     function test()
    {
      echo "I am test ";
    }

    add_shortcode("test_shortcode","test"); ?>

Теперь вы можете добавить [test_shortcode] любое место в вашем редакторе, чтобы получить результат там

Или в шаблоне вы можете вызвать его с помощью

<?php    echo  do_shortcode([test_shortcode]); ?>

Надеюсь, это поможет вам решить вашу проблему.

Ответ 3

Вы ищете функцию register_sidebar.

Вы можете создать именованную область боковой панели с помощью этой функции и поместить в нее любые виджеты из Apperarence → Widgets (в wp-admin). В ваших файлах тем вы можете называть dynamic_sidebar на нужном месте, и все виджеты будут отображаться в этом месте.