Может ли плагин добавлять содержимое верхнего/нижнего колонтитула/тела?


Я просто завершаю свой первый плагин WordPress, и последнее, что я хотел бы сделать, это взять часть данных, о которых знает плагин (из таблицы wp_options), и отобразить их в верхнем или нижнем колонтитуле сайта. Это будет просто небольшой стилизованный div с 6-символьным кодом в нем.

Прежде всего, возможно ли это вообще? Есть ли у плагина возможность изменять тему пользователей?

Если это возможно, каковы некоторые рекомендации и/или "понял", что нужно иметь в виду, когда делаешь это? Очевидно, что все темы совершенно разные, поэтому я хочу подойти к этому как можно более обобщенно и ненавязчиво.

Если плагин не может этого сделать, я должен был бы представить, что он может где-то писать HTML при отображении контента, опять же, каковы наилучшие методы для обработки такого рода вещей?

Это мой первый пост об обмене стеками без какого-либо кода, но поскольку это общий вопрос и не относится к какому-либо конкретному методу (пока) Я чувствую, что это все еще уместно.

Спасибо!

Author: Nicholas Kreidberg, 2015-01-06

1 answers

Крючки будут здесь твоими лучшими друзьями.

Вы можете фильтровать содержимое публикации с помощью фильтра the_content, например:

add_filter('the_content', 'wse_174099_append_to_content');

function wse_174099_append_to_content( $content ) {
    //get your data
    $custom_items = get_option( 'option_name' );

    $content .= wpautop( $custom_items );

   //always return when using a filter
    return $content;
}

Вы можете подключиться к нижнему колонтитулу сайта, подключившись к действию wp_footer:

add_action('wp_footer', 'your_function');
function your_function() {
    $custom_items = get_option( 'option_name' );
    echo $custom_items;
}

Вы также можете посмотреть на действия get_header и get_footer. Единственная проблема заключается в том, что вы не можете контролировать, где тема вызывает файлы верхнего и нижнего колонтитулов - это может быть плохое место для вывода вашего код.

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

 5
Author: Welcher, 2015-01-06 21:34:30