Константин

запись в файл результата dynamic_sidebar()

Собственно у меня на сайте на морде выводиться спецовый сайдбар, где собраны самые последние, самые популярные за сегодня статьи и облако тегов. Вся эта конструкция базу нагружает 30 запросами. Мне не нравиться. Хочу, что б результат записывался бы в файл (скажем, каждый десятый вызов страницы, но это уже мелочи) и тупо инклюдился. Сайдбар вызывается

if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Морда') ) : endif;

по идее код

$out = dynamic_sidebar('Морда');
$fp = fopen(ABSPATH . 'morda.html', "w");
fwrite($fp, $out);
fclose($fp);

должен писать результат вывода в файл. но не пишет. где я дурак? файл есть и для записи доступен…

Search Unleashed и его настройки

добрый 🙂
проблема следующая – кто знает, где этот расчудесный плагин хранит настройки свои? так как раз его поставил – все нормально, потом выключил, включил – он перестал подсвечивать результаты (частично) не подсвечивает, например, в заголовках, хотя галка стоит. Снес совсем, поставил заново – не хочет создавать таблицы в БД – пришлось руками. Снес еще раз, вычистил все настройки (wp_options) ставлю – все мои настройки на старом месте. мистика?

tdo mini forms и кодировки

Прочел тему на форуме – оказалось, что это как ра то, что я искал для одного своего проекта. Только вот когда в виджетах (в плагине) используется русский язык – на сайте получаютсякракозябры. Кто смотрел? как лечить? Понимаю, что дело в кодировках, но вот где именно ковырять? 🙂 Кодировки и блога и БД – utf8

Разные виджеты на разных страницах

Сегодня хочу рассказать об использовании разных виджетов на разных страницах вашего сайта. Или блога 🙂 хотя, мне кажется, для тех, кто создает сайт на WordPress это более актуально. Идея проста – как и в прошлой инструкции http://4itaz.ru/wordpress-pokazyvat-tolko-dlya-admina/ – создание нескольких сайдбаров и показ их на разных страницах. Инструкция здесь http://4itaz.ru/raznye-vidzhety-na-raznyx-stranicax/

Показывать только для админа

Не раз, наверняка, пользователи WordPress задавались вопросом – а как бы сделать так, что бы некую информацию видел только я (администратор)? Сегодня расскажу о паре решений. Работает на WP выше 2.0More…

Способ первый – совсем несложный

Качаем http://www.daikos.net/widgets/daikos-text-widget/. Это такая замечетельная штука, которая может обрабатывать PHP. Активируем виджет в плагинах. Идем Внешний вид – Виджеты и переносим появивщийся виджет на ваш сайдбар. Если вы уже используете встроенные виджеты Текст для отображения, например, счетчиков или чег-нибудь подобного, то копируем из него всю информацию и вставляем ее в наш Daiko’s Text Widget. Затаем снизу (или сверху, как больше нравиться) добавляем

<?php if (current_user_can('level_10')) { ?>
Только для админа
<?php } ?>

Достоинства
– просто и почти ничего не нужно делать.
Недостатки
-если не придумать, куда засунуть скрываемую инфу – придется делать отдельный виджет – а это не всегда красиво.

Способ второй – сложнее, но интереснее

Второй сайдбар. Открываем в папке вашей темы файл sidebar.php. Там скорее всего почти сразу натыкаемся на

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>

Или что то похожее. Это нично иное как начало регистрации нашего сайдбара. В скобочках добавляем 1 получается

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar(1) ) : ?>

и выше (думаю админский сайдбар будет у вас именно выше) добавляем

<?php if (current_user_can('level_10')) { if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar(2) ) : ?><?php endif; }?>

Но это еще не все. Так работать не будет. Сохраняем наш sidebar.php, открываем functions.php который лежит рядом и находим нечто подобное (данный код из взят из дефолтной темы)

if ( function_exists('register_sidebar') )
register_sidebar(array(
'before_widget' => '<li id="%1$s" class="widget %2$s">',
'after_widget' => '</li>',
'before_title' => '<h2 class="widgettitle">',
'after_title' => '</h2>',
));

Копируем, вставляем чуть ниже еще раз и в каждую функцию добавляем по строче с названием. Получается так

if ( function_exists('register_sidebar') )
register_sidebar(array(
'name' => 'Админ',
'before_widget' => '<li id="%1$s" class="widget %2$s">',
'after_widget' => '</li>',
'before_title' => '<h2 class="widgettitle">',
'after_title' => '</h2>',
));

Имя – какое угодно. К примеру для "Обычный сайдбар" и "Админский сайдбар" Плюсы такого решения очевидны – можно на второй сайдбар положить все что угодно – несколько rss лент, которые интересны лично вам и не имеют никакого отношения к вашим посетителям, какие то ссылки, которые всегда нужны под рукой, да мало ли что еще. И ничего не путается – все строго по сайдбарам.

И все 🙂 Следует помнить, что, некоторую информацию, например счетчики прятать просто нельзя – иначе в статистике будут использоваться только администраторские визиты на сайт.

версия RSS

Кто знает, какую версию отдает WP?

FeedBurner и WP

Просветите меня темного. во первых – нафик это вообще надо. и во вторых – как это, черт, дери, отключить? поставил плагин, активировал, стали подписки перенаправляться. отключил – все равно перенаправляются.. а я не хочу, блин 🙁

Выпадающая админская менюшка. 3 уровня.

3 уровня, настраивается достаточно легко. Есть счетчик запросов в базе и оповещении о комментах на модерацию. Показывается, только для админа, естественно 🙂

http://4itaz.ru/wordpress/advanced-admin-bar-plugin-for-wordpress/

Написал плагин :)

Показывает выпадающую полупрозрачную менюшку с админскими ссылками если вы залогинены. Пока только 2 уровня. В IE6 не работает. Исправлю в следующих версиях. Хотя, много ли блоггеров пользуются IE 🙂 Менюшка настраивается в файле плагина. Замечаниям – буду рад 🙂 http://4itaz.ru/wordpress/advanced-admin-bar-plugin-for-wordpress/

Обновился до 0.4 http://4itaz.ru/downloads/wordpress/adv_admin_bar_0.4.zip

Совместим с 2,1 и выше. Теперь нормально работает в IE7

Определение используемой темы в WP

Интересно, где именно происходит определение. и можно ли как нить в самм коде прописать какую тему использовать. Например, как это не банально от времени суток 🙂 А если б еще плагин такой нашелся… бы ло бы просто сказочно :))

не встает 2.3.1

ставлю wp231-ru-maxsite-org.zip с конфигом win1251 выдает

Warning: mb_convert_encoding(): Unknown encoding "WINDOWS-1251" in /home/konstantin/test.4itaz.ru/html/wp-includes/wp-db-convert.php on line 38

Warning: Cannot modify header information – headers already sent by (output started at /home/konstantin/test.4itaz.ru/html/wp-includes/wp-db-convert.php:38) in /home/konstantin/test.4itaz.ru/html/wp-includes/pluggable.php on line 391

мускуль стоит 3.23.58

Ваши варианты? 🙂

Плагины, активные сразу после установки

Доброго времени суток, уважаемые доны 🙂
Возник вопрос – вопрос – в скором времени, возможно придется развертывать несколько сайтов на вордпрессе – возможно ли прописать где то какие плагины будут уже активны сразу после установки? А то несколько напряжно руками их активировать каждый раз..

Anonymous
Отправить
Ответ на: