чем дальше в лес, тем страшнее лесорубы 🙂
теперь тупо не могу понять логику построения меню
- прописываю путь в functions.php
require_once('options.php');
- добавляю меню в options.php
<?php
/** Step 2 (from text above). */
add_action( 'admin_menu', 'my_plugin_menu' );
/** Step 1. */
function my_plugin_menu() {
add_theme_page( 'My Plugin Options', 'My Plugin', 'manage_options', 'my-unique-identifier', 'my_plugin_options' );
}
далее самое непонятное, если выводить содержание меню внутри функции всё ок
/** Step 3. */
function my_plugin_options() {
if ( !current_user_can( 'manage_options' ) ) {
wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
}
echo '<div class="wrap">';
echo '<p>Here is where the form would go if I actually had options.</p>';
echo '</div>';
}
?>
если же на уже созданной странице меню просто вывести
<div class="wrap">
<p>Here is where the form would go if I actually had options.</p>
</div>
то это расползается по всему сайту
Где логика и что я пропустил?
http://codex.wordpress.org/Administration_Menus
если же на уже созданной странице меню просто вывести
Это где? В options.php
, но вне функции? options.php
у вас подключается всегда, в том числе и на внешней части сайта.
Выводить форму нужно именно внутри функции, указанной последним параметром в add_theme_page()
. Можно вынести форму в отдельный файл и подключать внутри функции с помощью include()
.
спасибо за ответ
да вы всё правильно поняли
Выводить форму нужно именно внутри функции, указанной последним параметром в add_theme_page()
о ужас…. непостижимый для моей логики, но с чем мне придётся смириться 🙂
уже с горем пополам сделал три менюшки для вставки кода рекдамы..
Лёд тронулся господа 🙂