шорткод php с идентификатором

#php #regex #include #shortcode

Вопрос:

Мне нужен фрагмент кода, который преобразует

 [plugin-testplugin] 
 

в PHP включают. Это работает нормально.

Тем не менее, я хочу иметь что-то более похожее на это:

 [plugin-testplugin 12]
 

где testplugin показывает только содержимое с идентификатором 12 в базе данных.

Как я могу этого добиться?

Это мой код:

 $regex = '~[plugin-([^]] )]~';
$plugin = htmlspecialchars_decode($page['plugin']);
$parts = preg_split($regex, $plugin, -1, PREG_SPLIT_DELIM_CAPTURE);

foreach($parts as $k => $v){
    if($k amp; 1)
        include('plugins/'.$v.'/'.$v.'.php');
    else
        echo htmlspecialchars_decode($v);
}
 

Комментарии:

1. Является ли «плагины» допустимым путем включения ? Попробуйте запустить его с foreach($parts as $k => $v){ if($k amp; 1) var_dump('plugins/'.$v.'/'.$v.'.php'); else echo htmlspecialchars_decode($v); } помощью этого, и вы узнаете, какой физический файл пытается загрузить php, является ли этот путь допустимым?, являются ли переменные такими, какими вы их ожидаете, соответствует ли он вообще оператору if и т. Д. И т. Д. ??

2. Вы зарегистрировали обработчики шорт-кодов в functions.php? покажите свой functions.php а также

3. @GreensterRox код, который я показываю, работает, но только для первого варианта. Я хочу реализовать что-то, где я могу показать определенный идентификатор.

4. @MasivuyeCokile у меня нет functions.php. Это весь код, который я должен показать плагину. В каком правильном направлении сделать то, что я хочу?

5. @Saypontigohe вы сами создали плагин из strectch?