2013-10-10 5 views
0

Я создаю плагин для Wordpress. Эта страница плагина содержит iframe. Но предлагаемый метод php (вместо метода iframe html) вашего тоже будет приятным.Создайте простую страницу плагина Wordpress с iframe?

Проблема в том, что эта страница плагина не отвечает. Поскольку эта страница плагина не создала собственное меню администратора. Что не так с этой плагиновой страницей?

Вот код:

<?php 
/* 
Plugin Name: Leo 
Plugin URI: http://www.example.com 
Description: Blabla 
Author: Leo 
Version: 1.1 
Author URI: http://www.example.com 

function schedule() { 
    ?> 
    <h1>schedule</h1> 
    <a href="/wp-admin/admin.php?page=schedulesite">Show schedule</a><br /> 
    <?PHP 
} 

function schedulesite() { 
    echo "<iframe style="width:100%;height:800px;border=0;" 
src="http://www.example.com/schedule.php"></iframe>"; 
} 


function scheduleAddMenu() { 
    add_menu_page('schedule', 'schedule', 10, __FILE__, 'schedule'); 
    add_submenu_page(__FILE__, 'Show schedule', 'Show schedule', 10, 'schedulesite', 'schedulesite'); 
} 
?> 
+0

Таким образом, querstion - это меню администратора, а не о iframe? – Meier

ответ

1

Ваша функция scheduleAddMenu() никогда не вызывается. Вы можете просто добавить оператор, чтобы вызвать его в конце файла.

2

Не уверен, что если вы это исправили или нет, но вы должны исправить эту функцию:

function schedulesite() { 
    echo "<iframe style="width:100%;height:800px;border=0;" 
src="http://www.example.com/schedule.php"></iframe>"; 
} 

изменить его на:

function schedulesite() { 
    echo '<iframe style="width:100%;height:800px;border=0;" 
src="http://www.example.com/schedule.php"></iframe>'; 
} 

У вас есть двойные кавычки (") вокруг строки, когда вы должны иметь одинарные кавычки (')

0

Если кто-то другой с такими же сомнениями в OP, следует за шагами.

У вас есть опечатки в вашем файле.
Во-первых, посмотрите на заголовок. Вы не закрыли блок комментариев. Добавьте простой конец */ в конец заголовка. Это что-то вроде:

/* 
Plugin Name: Leo 
Plugin URI: http://www.example.com 
Description: Blabla 
Author: Leo 
Version: 1.1 
Author URI: http://www.example.com 
*/ 

Во-вторых, в функции schedule(), удалить /wp-admin/ из ULR в HREF собственности. Как это:

function schedule() { 
    ?> 
    <h1>schedule</h1> 
    <a href="admin.php?page=schedulesite">Show schedule</a><br/> 
    <?php 
} 

В-третий, в функции schedulesite(), добавить управляющие символы перед двойными кавычками. Пример:

function schedulesite() { 
    echo "<iframe style=\"width:100%;height:800px;border=0;\" 
src=\"http://www.example.com/schedule.php\"></iframe>"; 
} 

В-четвертых, самое главное, вам нужно приложить крючок к menu_admin. Крючки являются частью всего WordPress Core.

О крючках: Plugin API/Hooks
О admin_menu крючке: Plugin API/Action Reference/admin menu

Итак, добавьте в конце вашего плагина, простой крючок, как это:

add_action('admin_menu', 'scheduleAddMenu'); 

И ваш плагин будет иметь возможность работать !
Примечание: Возможно, вам нужно перейти на страницу плагинов и активировать свой плагин!

Смежные вопросы