Привет всем. Я пытаюсь создать расширенную панель управления для своего первого шаблона WordPress, но не могу добавить нужную мне функцию. Функция, которую я пытаюсь добавить, — это возможность выбирать положение DIV (слева и снизу) через панель администратора. (Извините меня за мой очень плохой английский)
Вот код, который у меня есть в моем functions.php
$shortname = appacqua
array( "name" => "Point on the map",
"type" => "section"),
array( "type" => "open"),
array( "name" => "Have I to activate zona 1?",
"desc" => "Select if you want to show the first zone",
"id" => $shortname."_zona1c",
"type" => "checkbox",
"std" => "false"),
array( "name" => "Zona 1",
"desc" => "Choose the position",
"id" => $shortname."_zona1x",
"type" => "text",
"std" => "Left:???"),
array( "type" => "close"),
Я вижу «поле» в своей панели администратора, и у меня нет проблем с флажком, если я повторяю $shortname.»_zona1x». Он показывает число, единственная проблема, с которой я сталкиваюсь, это когда я пытаюсь добавить это в мой style.css:
.zona1{width:27px;height:27px;background:url(icone/1.png) no-repeat;position:absolute;bottom:0;left:<?php echo $appacqua_zona1x;?>px;}
Это не работает… Если я использую Google Chrome для просмотра элемента, он дает мне что-то вроде этого:
width: 27px;
height: 27px;
background: url(icone/1.png) no-repeat;
position: absolute;
bottom: 0;
left: <?php echo $appacqua_zona1x;?>px;
Что я делаю неправильно? Большое спасибо за помощь.
Знаете ли вы, есть ли способ создать предварительный просмотр этой модификации ВНУТРИ панели управления (например, внутри iFrame или что-то в этом роде).
Допустим, я «программист, который сделал себя сам» :P, поэтому, пожалуйста, пишите «медленно» (смеется) и будьте добры ко мне, большое спасибо!
wordpress.stackexchange.com/questions/12619/… — Здесь ведется аналогичное обсуждение, в котором также есть полезная информация для вас.
Функция, которую я пытаюсь добавить, нужна только на одной странице, поэтому для этой страницы я также могу использовать 2 таблицы стилей: 1 для тела и т. д. и 1 для div, который я хотел бы переместить. Я пытаюсь объяснить кое-что о своем проекте, я создаю шаблон для итальянского агентства недвижимости, которое не хочет использовать карты Google [ 🙁 ], они дали мне свою карту и хотят иметь возможность перемещать это div, которые будут указателями на карте, как только квартира освободится, поэтому функция будет использоваться только на странице с именем mappa.php.Сейчас пытаюсь добавить то, что вы мне сказали, скоро отпишусь, Спасибо!
Теперь это работает 🙂 Они внутри моего header.php = <link rel="stylesheet" type="text/css" media="all" href="/stylemappa.css» /> Внутри stylemappa.php есть: .zona1{ширина:27px;высота:27px;фон:#000;z-index:10000;позиция:относительная;сверху:px;left:px;} Всем большое спасибо!
Судя по всему, вы добавляете php прямо в css, что не сработает. Вам нужно написать в сам файл css или сбросить его прямо в html, как сказал Джереми, когда я это пишу 🙂
Написание нового файла CSS каждый раз, когда вы вносите какие-либо изменения, может нагрузить вашу систему, но работает хорошо, если вы не вносите много динамических изменений в живой сайт, например, тема Twentyten Weaver делает это.
Простой способ сделать это — превратить ваш файл.css в файл.php со следующим вверху, а ваш php/css — после.
В качестве альтернативы можно написать это в заголовке вашего html, многие плагины делают это, и изменение разметки может раздражать, поскольку она не является семантически отдельной, но это также очень просто.
Обычно это делается с помощью API параметров: http://codex.wordpress.org/Options_API.
Вот пример, который использовал add_option в бэкенде для цвета фона (например, он помещается в header.php).
Для предварительного просмотра вы можете подключиться к preview_post_link по умолчанию и использовать iframe, вот пример.
Пожалуйста, помните, что при написании динамических стилей возникают проблемы с производительностью, и вам следует больше исследовать эту тему в зависимости от контекста.
Файл style.css не является php-файлом, поэтому он не может выполнять php-код. Если вы хотите включить эти стили, вам нужно будет либо создать динамический генератор css и включить его в заголовок вашей темы, либо включить стили в тег стиля.
Я видел, как это делается в обоих направлениях, и я считаю приемлемым любой из них.
Генератор css может кэшироваться пользователем, поэтому он лучше работает.