Возможность PHP включить в пост / страницы WP через шорткод - PullRequest
1 голос
/ 03 мая 2019

У меня есть несколько страниц .html и .php в моей папке / файлах плагинов Wordpress, которые я использую для вывода стилей в основном из данных JSON / jQuery.

Мне интересно, как я мог бы по существу обернуть эти модули в короткий код и вставить этот короткий код в мои записи или страницы Wordpress через редактор Wordpress wysiwyg. то есть [module 1]. Я не хочу делать это в файлах темы или / functions.php Я хочу добавить эту функциональность из моих файлов плагинов, какие-нибудь мысли?


Так, как php include в виде короткого кода WordPress, который работает на страницах Wordpress.


Вот что я пытаюсь; в моем php файле основного плагина:


function my_form_shortcode() {
    include dirname( __FILE__ ) . 'https://absolute.path.com/wp-content/plugins/my-plugin-v4/assets/files/2019/results/index.php';
} 
add_shortcode( 'my_form_shortcode', 'my_form_shortcode' );

На моей странице Wordpress я делаю: (хотя, не отображается / не работает)

[my_form_shortcode]

Ответы [ 2 ]

0 голосов
/ 03 мая 2019

Простейший пример тега шорткода с использованием API: [footag foo = "bar"]

function footag_func( $atts ) {
    return "foo = {$atts['foo']}";
}
add_shortcode( 'footag', 'footag_func' );

Пример с хорошими атрибутами по умолчанию: [bartag foo = "bar"]

function bartag_func( $atts ) {
    $atts = shortcode_atts( array(
        'foo' => 'no foo',
        'baz' => 'default baz'
    ), $atts, 'bartag' );

    return "foo = {$atts['foo']}";
}
add_shortcode( 'bartag', 'bartag_func' );

Пример с вложенным контентом: [baztag] content [/ baztag]

function baztag_func( $atts, $content = "" ) {
    return "content = $content";
}
add_shortcode( 'baztag', 'baztag_func' );

Если ваш плагин разработан как класс, напишите следующее:

class MyPlugin {
    public static function baztag_func( $atts, $content = "" ) {
        return "content = $content";
    }
 }
 add_shortcode( 'baztag', array( 'MyPlugin', 'baztag_func' ) );
0 голосов
/ 03 мая 2019

Вы можете добавить свою функцию шорткода так же, как в своей теме

добавить функцию шорткода в плагин

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...