Я создаю плагин для тем WordPress, который загружает шаблоны в свой собственный каталог, а не помещаю шаблоны в тему, что делает меня независимым от включения шаблонов в темы, для этого я создал шорткоды для загрузки различных шаблонов при определенных условиях. ниже код:
add_shortcode (‘template’, ‘add_template’);
function add_template ($ atts) {
извлечь (shortcode_atts (массив (
‘template’ => »
), $ atts));switch ($ template) {
case 'template1': include 'templates/template1.php'; break; case 'template2': include 'templates/template2.php'; break; default: include 'templates/template1.php'; break; } }
Моя проблема в некоторых темах, мой плагин начинает отображать страницу в панели администратора, есть что-то, что я делаю не так? пожалуйста помоги….
Нашли решение, нам просто нужно добавить проверку того, что пользователь не является администратором, прежде чем включать шаблон.
add_shortcode('template', 'add_template');
function add_template( $atts) {
extract( shortcode_atts( array( 'template' => ''
), $atts ) );
switch ($template) {
case 'template1':
if ( !is_admin() ) {
include 'templates/template1.php';
}
break;
case 'template2':
if ( !is_admin() ) {
include 'templates/template2.php';
}
break;
default:
if ( !is_admin() ) {
include 'templates/template1.php';
}
break;
}
}
Других решений пока нет …