Как Вы Лодку Назовете…

Яхта «Беда»Мой блог не оправдал своего имени. Ну какой-такой «Запах Денег», если я ни палю никаких тем (потому как не знаю), не леплю говносателитов (потому как тупня) и не хвастаюсь своими заработками? Правильно. Никакой. То есть денежкой тут вам не пахнет.

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

Отсюда и новое название — «Программлю За Еду!» и дальнейшее углубление само собой сформировавшейся темы: написание инструментария для манимейкеров и безбедное на этом существование :mrgreen:

На этом позвольте откланяться. Меня ждет чай, с вон тем вот, бутербродиком, что в шапке :mrgreen:

C Кем Cache Не Сваришь…

Так выглядит cache на кристалле процессораЧестно говоря я не понял кому так сильно помешал встроенный в WordPress 2.5.1 кеш, что его нафиг вырезали и заменили какой-то стремной затычкой.

Ну не  нравится как оно работает — оставь что есть и нарисуй чего-нить получше. Так нет, взяли и выкинули, ироды :(

Но как всем известно, на каждую хитрую жопу, есть хрен с винтом.  Вот и мы достаем заслуженный хрен WP2.3.3, извлекаем из него файлик /wр-includes/cache.php, заменяем им невнятную подделку в установленном  WordPress 2.5.1 и прописываем в wр-config.php строчку define(’ENABLE_CACHE’, true); Трах-бах и все готово! Можем наслаждаться работающим встроенным кешем. Главное — не забывайте его иногда очищать :)

Я, конечно-же, в курсе что есть всякие wр-cache и wр-super-cache, но по разным причинам они меня не устраивают. А встроенный — устраивает :)   И если кому нужен этот файлик, можно качнуть у меня.

Загрузить Загрузить «Встроенный кеш от 2.3.3»
Всего загрузок: 29 | Размер: 2.84KB

Добавленно 27.06.2008
Но как оказалось - это еще не конец опупеи!

В функциях управления кешем (напрмер, у wp_cache_set) есть “говорящий” параметр $expire, по умолчанию равный нулю, и если верить документации, контролирующий время жизни кэшируемых данных.  Авоттефиг! Параметр то есть, но он нигде не используется, и как ты время не задавай — оно все равно тупо 15 минут.

Я чуток подпатчил файлик, и теперь время действительно устанавливается и проверяется. Использовать с острожностью — плотно не тестил.

Загрузить Загрузить «Встроенный кеш от 2.3.3, исправленная версия»
Всего загрузок: 15 | Размер: 3.05KB

P.S. И все-таки — нах они  его вырезали?

RC RSS Облом или Как Обломать Копипастера

RC RSS Облом. Контент нахаляву? Авотхуй!Каждый раз когда у меня воруют мною созданный контент, или мною-же оплаченный контент, меня это злит. Я понимаю — «жадные дети», которым не приходит в голову что на воровстве не подымешся, и которые радуются несчастным 2$ в месяц со своего говносайта… Но ведь все равно обидно! Будем обламывать :twisted:

Задача: Защитить свой RSS и обломать копипастера, отдавая только то что хочется и сколько хочется, не допустить дублирование своего контента в RSS-каталогах и не повредить честным читателям и комментаторам. М-да… Задачка не из легких, но ничего, не боги горшки обжигают :)

Решение: Мой WordPress плагинчик «RC RSS Облом» который умеет:

  1. Коверкать отдаваемый RSS (заменяя сходные по виду русские буквы английскими) так что для человека это незаметно, а поисковик будет точно уверен что это разные тексты. Не уникальные, но всетаки разные :) Так решается проблема дублирование контента на RSS-каталогах и у копипастеров.
  2. Отдавать, либо заданное количество абзацев теста, либо от начала до тега <!–more–>, или весь пост.
  3. Вставлять после текста ссылку на ваш сайт с анкором - названием сайта.
  4. Заменять в тексте название поста на ссылку на этот пост.
  5. Предложите свою фичу, я открыт для предложений :)

Выглядит все это вот так:
(Сверху текст до обработки, снизу после. Для наглядности английские буквы подсвечены зеленым)

Пример работы скрипта «RC RSS Облом»

Конечно мне могут возразить, что проанализировав выдачу моего фида, можно его восстановить в первоначальном виде, но сами подумайте — сможет ли это сделать рядовой копипастер, который выучил две команды —Ctrl+C и Ctrl+V да настройку грабилки RSS фида? Не думаю что он вообще заметит что что-то не так :)Увы на этот раз я не могу предложить сначала скачать и поиграться плагином, а уж потом заплатить, как я делаю всегда. На этот раз «деньги против стульев» :)

Обсудить все вопросы приглашаю в мою Статус ICQ 48426188, там же можно и заплатить всего 10WMZ за неограниченную версию плагина, на любое количество доменов и с пожизненными бесплатными обновлениями…

Помойму я опять занижаю цену, ведь спокойствие стоит гораздо дороже… Ну чтож, в будущем всегда можно поднять цену скрипта для новых клиентов. Надеюсь намек достаточно прозрачен? Торопитесь! :)

P.S. Кстати, rss-feed на моем сайте про мини-игры уже защищен с помощью RSSОблома :)

Конвертация WordPress Баз Из Latin1 В UTF-8

ПереездЯ таки перехал, и перевез свои …надцать WordPress сайтов на новый хостинг. Стоило это немалой крови и нервов потраченных на поиск самого безболезненного пути сконвертировать базы из кракозябр latin1 в нормально читаемый utf8.

Можете меня спросить — «а какого ты держал базы в latin1?» и я отвечу нецензурно, ибо до позавчерашнего дня был уверен что у меня все в utf8. Но нет в жизни «щастя», и мои сборки wp21, не содержали указания на чарсет и тип сравнения, что вообщето не мешало нормально показывать русские буковки, хоть и мешало нормальной сортировке и поиску.

Так что если у вас в WordPress-config.php нет этих строк: define(’DB_CHARSET’,'utf8′); define(’DB_COLLATE’,'utf8_general_ci’); вы попали. А когда в дампе базы, вместо русского текста видите нечто такое - Прогà - знайте, сейчас вам будет очень весело…

Если кроме дампа на руках ничего нет, то нужно любым способом залить дамп на новый сервер в такой же кодировке что и на старом. А если есть доступ к старому сайту, то делаем следующее:

  1. Открываем базу в phpMyAdmin и делаем дамп структуры базы
  2. Для каждого текстового поля в каждой таблице в которой есть данные на русском, делаем следующие запросы:
    ALTER TABLE table CHANGE field field BLOB;
    ALTER TABLE table CHANGE field field TEXT CHARACTER SET utf8;
  3. Если вы пытаетесь такм способом обработать поле с перечислением (типа: enum(’open’, ‘closed’))и у вас вылезают ошибки — перечитайте пункт 2 еще раз :) и просто не обрабатывайте это поле.
  4. Если все равно появляются ошибки, то скорее всего для этого поля есть индекс. Удалите его, и повторите запросы.
  5. Для каждой таблицы сделайте запрос
    ALTER TABLE table DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
  6. Сохраните и откройте дамп в каком-либо редакторе (не notepad!) поддерживающем utf8, например Editor++, и замените все вхождения latin1 на utf8. Если удаляли индексы — восстановите их по сохраненной ранее структуре.
  7. На этом все, можно импортировать.

Сакральный смысл этих танцев с бубном в том что пре переводе текстового поля в блоб и обратно, но в другой чарсет — получается правильная конвертация. Если любите нетрадиционный секс, попробуйте сразу сменить чарсет, без перевода в блоб, секс гарантирован :razz:

Пункт 5 необязателен к исполнению, мы все равно потом меняем latin1 на utf8, но так всетаки спокойнее.

Если вам нужно чтобы после конвертации работал и старый сайт, добавьте define('DB_CHARSET','utf8'); define('DB_COLLATE','utf8_general_ci'); в WordPress-config.php, или вместо текста на сайте будут одни знаки вопроса.

Удачного вам переезда. Мой продлился всего три дня, и я (кажется) ничего из данных не потерял :razz:

Обновление GameBoss Partner

GameBoss PartnerКто не знает что такое GameBoss Partner, или кому не интересно как зарабатывать 300$ в месяц ничего не делая — тому позор и дальше читать необязательно :cool:

Для всех остальных сообщаю, что вышла новая версия GameBoss Partner, 0.8.6. Eстественно обновление с более младших версий GameBoss Partner бесплатно, учебный фильм пока старый.

“Импорт локального xml” это такая вкусная штука для быстрого вноса отрерайченного контента в базу WordPress. Фишка в следующем — рерайтеру отдается xml cкачанный с GameBoss, он переписывает описания и xml закачивается в корень сайта с именем ID.xml (То есть мой xml должен называтся 32225.xml).

Защита “от дурака” присутствует - то есть контент отданный GameBoss никогда не запишется поверх измененного вами. Но чтобы она работала, после установки версии 0.8 поверх уже существующей, обязательно обновите базу игр (поставьте галочку «Обрабатывать существующие записи» и нажмите кнопку, «Получить игры»).

Всем клиентам сидящим на «извратных» серверах, обращаться за спецбилдом в Статус ICQ 48426188.

  • Изменения в ветке 0.8:
    • Добавлена переменная %PERMALINK% в шаблон поста
    • Добавлен виджет - «Случайная игра»
    • Добавлена переменная %TEASER% в шаблон поста
    • Описаны все переменные которые могут встречаться в шаблоне поста
    • Добавлена проверка на несоответствие вашей базы игр, топу игр GameBoss
    • Добавлен импорт локального xml в базу
    • Теперь при обновлении игр, не изменяется «Ярлык записи»
  • Изменения в ветке 0.7:
    • Добавлен выбор любой игры, «Игрой дня»
    • Добавлен checkbutton «Восстанавливать потерянные атрибуты»
    • Изменен вывод сообщений на стандартный для WordPress
    • Добавлены дополнительные проверки входящих данных
    • «Aдминка» GameBoss Flash Rotator перенесена в соответствующий плагин

Загрузить Загрузить «GameBoss Partner»
Всего загрузок: 299 | Размер: 41.10KB

P.S. Я не буду каждый раз делать новый пост, просто буду “апить” этот на все обновления.

iЛимон Шагает По Планете

Результат работы плагина iЛимонДурной пример заразителен, а отличницы любят хулиганов. Это аксиомы, и в их истиности никто не сомневается. Тем не менее, получить подтверждение для аскиомы всегда приятно.

Вот такое подтверждение я и получил сегодня. В блоге «Как тратить деньги!» анонсирована JS версия моего шуточного плагина iЛимон.

От моего плага осталась общая идея и название, все навороты и реализация, естественно, свои.

Пример я подал не очень дурной, но как оказалось,  вполне заразительный :)

Ссылочный Ниндзя: RC Link Redirector

Ниндзя, он же Линь КуэйСсылки надо прятать, причем все и ото всех! Ссылки с рефкодами — от «жадных детей» которые считают что человек помогающий им заработать, недостоин 10% сверх тех денег что получат они. Внешние ссылки — от поисковиков, чтобы не перелился PR с нашей страницы на чужую (почувствуйте себя в шкуре «жадных детей»!). А уж ссылки на сайты авторов говнокомментов — сам бог велел!

Но в тоже время — мне нужны ссылки на другие мои проекты, я хочу ссылаться на сайты друзей и прочего нормального люда! Да и чистка сайта от говнокоментаторов — это приятная работа для постоянного покупателя сексшопа (того что интересуется изделиями из латекса и кожи), а не для меня.

Так что-же делать? Конечно поручить эту работу компьтеру — пусть он работает, он же железный!

Средство номер раз, это мой WordPress плагин RC Link Redirector (обновлен до версии 0.4 beta), который умеет:

  • Управляться из удобной “админки”.
  • “Шифровать” все исходящие ссылки.
  • “Оборачивать” ссылки в постах и страницах
  • “Оборачивать” ссылки в цитатах
  • “Оборачивать” ссылки в комментариях
  • “Оборачивать” ссылки на сайты коментаторов
  • “Оборачивать” ссылки в блогролле
  • Добавлять target=’_blank’ ко всем обработанным ссылкам, кроме архивов и исполнимых файлов
  • Добавлять rel=’nofollow’ ко всем обработанным ссылкам
  • Использовать «белый список» слов отменяющих обработку ссылок их содержащих.
  • Использовать служебное значение тега rel=”" отменяющее обработку конкретной ссылки.
  • Учитывать специальный CSS класс отменяющий обработку ссылки. Удобно для продажи ссылок через SAPE.

Выглядит это примерно так:
Что было раньше: http://www.kaak.ru/
Что получилось : http://www.chanishvili.org/ext/aHR0cDovL3d3dy5rYWFrLnJ1Lw==/

И средство номер два, тот плагин из которого я взял изящное регулярное выражение и саму идею плагина оборачивающего все внешние ссылки (Спасибо, Максим!), но увы не имеющий админки и не шифрующий ссылки - External redirect (J)

Я, естественно, рекомендую свой плагин для редиректа и считаю что он лучше. Но я, как и каждый родитель, не объективен, да и не обязан быть объективным :)

Загрузить Загрузить «RC Link Redirector»
Всего загрузок: 298 | Размер: 4.80KB

Пользуйтесь на здоровье, и радуйтесь каждый раз, как какой нибудь говнокоментатор обломается с получением халявной ссылочки :) Ибо заебали уже надоели хуже горькой редьки!

Скидок Больше Нет?

Не просите скидку…Почему я отменяю скидки? Потому что скидки не работают в моем бизнесе. Если человек настроен купить плагин — он купит, со скидкой или без, ибо товар штучный и особо конкурентов не наблюдается. А если чисто попиздеть зашел просто интересуется — то наличие скидки не склонит его к покупке.

А если вдуматься, то скидки это чистая наебаловка. Все сезонные распродажи, или приуроченные к праздникам преследуют одну цель — выкачать побольше денег за счет объемов, впарив залежалый или откровенно некондиционный товар. Помните крохотную приписку — «на акционные и уцененные товары гарантия не распостраняется» или «акционные товару возврату не подлежат»? Это конечно полнейшая чушь, и гарантия есть и вернуть можно — но это оборачивается потерянным временем и испорченными нервами.

Вот и еще одна причина чтобы не давать скидку: «Не хочу давать скидку, чтобы не выглядеть продавцом прокисшего молока и протухших консервов» :mrgreen:

Тогда почему скидки отменяются не прямо счас? Ну так везде же было обещано, что “стал моим рефом на GameBoss — получил скидку”. А если я отменю резко, без предупреждения, то обязательно кто то начнет нудить — «я не успел, так хотел купить и не успел». А сейчас все честно, есть целая неделя — ну а «Кто не успел, тот опоздал» :mrgreen:

Так что, скидок больше нет? Ну это смотря когда вы этот пост читаете. Если после 29 февраля 2008 , то таки да, вы опоздали и скидок больше нет. А если до 1 марта все того же года — то вполне можно успеть купить GameBoss Partner и GameBoss Flash Rotator с -15% скидкой и получить настроенные флеш версии некоторых игр в подарок!

Конечно 15$ (а именно столько в деньгах будет 15%) сумма небольшая, но все таки это домен в зоне .ru и месяц хостинга. А как говорил один из богатых и знаменитых — Уоренн Баффет (состояние $52.4 миллиардa): «Доллар сэкономленный есть доллар заработанный!»

Так что спешите экономить. И зарабатывать на GameBoss :wink:

Обновление GameBoss Flash Rotator

GameBoss Flash RotatorДля тех кому лень искать на сайте что такое GameBoss Flash Rotator, короткая справка: GameBoss Flash Rotator — это ротатор больших (544×300) флешбаннеров от GameBoss повышающий отжим траффика за счет возбуждения у серфера интереса к большой анимированной картинке нестандартных размеров. И что самое главное — они не воспринимаются как баннеры, и не отфильтровываются в мозгу у заядлого серфера.

  • Изменения в ветке 0.6:
    • Добавлено автоматическое обновление custom.urls
    • Добавлена нормальная “админка”
    • Введены дополнительные параметры в тег [hit] (читайте read.me.txt)
    • Добавлена возможность изменять размер выводимого баннера
    • Добавлена возможность отключать цетрирование баннера
    • Добавлена ручная проверка на новые баннеры

Загрузить Загрузить «GameBoss Flash Rotator»
Всего загрузок: 234 | Размер: 15.73KB

P.S. Я не буду каждый раз делать новый пост, просто буду “апить” этот на все обновления.

Меняем Шапку Блога Автоматом или Чем Я Не Гугль?

Логотип Google на День Святого ВалентинаУтянул ссылочку у Sonik’и на прикольный способ менять шапку блога\сайта совершенно автоматически в зависимости от времени года.

Суть способа в следующем: Шапке блога мы прописываем класс “month-” после которого функцией date() выводим текущий месяц, получается так: month-01 — month-12 А в таблице стилей каждому сезону указываем фоновую картинку. Все!

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

В файле header.php (если у нас WordPress):

<div id="masthead" class="month-<?php echo date('m'); ?>"></div>

Гдето в недрах style.css (если у нас WordPress):


#masthead {
width:300px;
height:100px;
}
/* Зима */
.month-12, .month-01, .month-02 {
background:url /images/winter.jpg ;
}
/* Весна */
.month-03, .month-04, .month-05 {
background:url /images/spring.jpg ;
}
/* Лето*/
.month-06, .month-07, .month-08 {
background:url /images/summer.jpg ;
}
/* Осень*/
.month-09, .month-10, .month-11 {
background:url /images/autumn.jpg ;
}

Приятного вам дураковаляния шапкоизменения!

Ссылки


ICQ Статус ICQ 48426188
Послать e-mail

Собираем 1,000,000$

  • C текущим уровнем доходов и некоторой суммой в загашнике я заработаю 1,000,000$ через 41 год, 7 месяцев и 19 дней.

Архивы