DevDocs - пишу в процессе разработок

Таблетка от головной боли – RegexBuddy

На днях по работе мне пришлось здорово поломать голову при работе с регулярными выражениями (регекспами от англ. – regular expressions). Проблема состояла в том, что до этого я их самостоятельно не писал и вообще не знал синтаксиса, а принимая во внимание, что доставать вопросами кого-то бы то ни было я не очень люблю, пришлось выкручиваться самостоятельно. Один грамотный человек, видя мои мучения, посоветовал найти в интернете программу RegexBuddy, которая, по его словам, мне облегчит жизнь.

Он оказался прав.

RegexBuddy - платная программа, стоит меньше $40, текущая версия – 3.5.0. По секрету скажу, что она есть на рутрекере (версия 3.4.2).

Регекспы используются почти во всех языках программирования и взаимодействия с клиентом (в том числе и javascript). Они помогают пропарсить текст на предмет наличия определенной конструкции и возможности дальнейшей работы с этими полученными блоками. Можно:

  • просто узнать, если такое слово в этом предложении;
  • распознать ошибку в тексте и исправить ее на правильное слово/фразу;
  • произвести замену любого текста на любой текст;
  • менять построение текста (предположим, поменять блоки текста местами);
  • и много чего другого.

Можно заменять, фильтровать, объединять и делать кучу других операций, используя вот эти php-функции:


Кстати, для тех, кто собирается перейти на замечательный новый VDS и хочет сэкономить 10% при оплате в течение первых 3 месяцев, сделайте следующее:

  1. Зарегистрируйтесь на сайте Avihost
  2. После регистрации в разделе “Товары/Услуги” выберите
  3. Нажимаете кнопочку вверху “Добавить ВДС”
  4. В появившейся форме выбираете тарифный план, оплату и вставляете : BSD-Kw5mY
  5. Все :)

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

Скоро я подробно напишу вам, как надо настраивать VDS на FreeBSD без apache.

Debug-mode для отображения ошибок сайта

Хотите испытать шок? Я вам помогу :)

Решил я сегодня глянуть на свой сайт сквозь призму возможных ошибок. В сам встроен механизм отображения ошибок всех запускаемых плагинов на front-end’e – так называемый debug-mode. Для того, чтобы увидеть ужас на своем сайте, вставьте в файл wp-config. вот этот :

if ( isset($_GET['mode']) && $_GET['mode'] == 'debug' )
define('WP_DEBUG', true);

В итоге при прописывании в строке браузера после url любой страницы сайта (в том числе и главной) ?mode=debug вы включите режим отображения ошибок. Если у вас стандартное отображение ссылок (то есть выглядит вот так: ?p=222), то надо прописывать следующим образом: ?p=222&mode=debug

Работа над GTM – новости с фронта

А пока работа над новым постом об установке зависла, я по-тихоньку добавляю всякие разные вещи для своего плагина BP System. Фактически, основной функционал уже внедрен, осталось допилить его, добавить несколько ссылок для улучшения UX и UI, и можно будет делать релиз. Весьма надеюсь выпустить до конца сентября, в крайнем случае в самом начале октября. Судя по отзывам, этот стал “awesome” :) !

Его идет полным ходом на сайте GTM.Ovirium.com. Он полностью на английском (потому что тестеры там тоже на английском говорят), но если появится большое количество желающих покрутить его до релиза на русском языке, то я запущу соответствующий поддомен. На данный момент все (почти все) возможности плагина описаны на странице About.

Хозяину на заметку

Век живи – век учись…

Никогда бы не подумал, что это так важно, но, оказывается, в конце -файлов лучше не закрывать конструкцию фирменным  ?> – это не гигиенично. А вдруг вы случайно поставите Enter после него? Или пробел… Или еще что непонятное, а после передачи в браузер эта конструкция выведет черт-те что. Причем тяжело предсказать, что именно, так как  это зависит от файла, в котором была допущена такая оплошность.

Итак, php-файл, который содержит лишь php , должен начинаться с <?php и не должен заканчиваться с ?>.

Написал тем людям, которые знаю, что любят самостоятельно что-то ковырять – но вдруг не понимают всей трагичности потенциальной ошибки…

Пятое колесо способствует самообразованию

Самым сложным для меня в программировании оказалось вовремя остановиться. Я достиг того уровня, когда могу воплотить то, что мне хочется, но все еще не умею вовремя останавливаться. Зачастую слишком много идей посещают, и крайне тяжело становится их классифицировать, распределять по степени важности и прочим критериям… Именно поэтому мне так нравится идея иметь под рукой (в интернете) нечто вроде менеджера задач. Думаю, все знают, что это такое, поэтому объяснять не буду. У меня есть отдельный сайт, на котором установлен activeCollab, также иногда использую сервис Workable. Первый – монстрообразный, хотя жутко удобный, когда работает куча людей с крайне высокой активностью; второй – скромненький, с минимально необходимым функционалом, для пары человек. Оба – красивые по дизайну и функционалу. Оба – меня не удовлетворяют. Не могу точно выразить, чем именно, возможно тем, что написаны не мной :) А еще это крайности… Мне хочется чего-то среднего между ними, на основе своих же знаний о WP и BP (кстати, оба предыдущих варианта не знаю о существовании WP+BP). Вот я и задумался месяц назад…

А получился у меня BP System, или Task Management System. Вот старая демка (ей пару недель):

Скоро я дам вам возможность самим крутить этот на demo.

PS Слушаю ColdPlay vs Sum41 – Mash ups.

CosyDale.com глазами IE9

Не удержался этой ночью и решил установить сырой браузер Internet Explorer 9. Большинство из вас знает, что он начинает поддерживать 3 и якобы быстрее работает, чем иные (по крайней мере, быстрее предшественника IE8 ~ в 6 раз).

Знаете, а таки реально быстрее и действительно поддерживает основные CSS3 фишки… Ниже представлен скриншот моего сайта в девятом ослике:

IE9

CosyDale.com глазами IE9

Как видите, border-radius для div блоков понимает без проблем. Вот только для тега а – не понимает… Видите выделенный мой ник slaFFikв сайдбаре? Еще я нашел несколько мелких проблем с padding и margin.

Я не тестировал работу с HTML5.

В целом вердикт – мне нравится его скорость.

У кого стоит Windows Vista/7 можете скачать с официального сайта, после установки откроется страница тестирования. Дополнительную информацию можно, как обычно, найти в гугле.

NotePad++ vs Aptana? NPP!

Никому не говорите, что я потратил час на то, чтобы заново установить и настроить NotePad++. Напомню, что с помощью NPP я, собственно, и выполняю абсолютно все правки кода (, html, , sql, xml, xslt, txt, , ini, log, htaccess и др.).

Некоторые время назад меня соблазнили установить Aptana. Установив (основная причина – подсказки и автозавершение), я понял, что получил нечто очень мощное и.. монстрообразное одновременно, так что толком попользоваться Aptan’ой даже не успел. Одновременно с установкой Aptana я получил сбой в системных настройках NPP, что меня весьма опечалило, так как исправить у меня не получалось. В итоге сегодня я снес Aptana, снес и заново поставил NPP.

Но опять возникла проблема с автозавершением и кусками кода, ярлыки на которые мне надо заменять на развернутый (то есть ввел: div.cl, а получил <div class=""></div>). Старый добрый QuickText перестал работать как надо, потому мне пришлось искать альтернативу… Перебрав 3 варианта замены я понял, что лучше QT не найду, но автор перестал развивать свой , но ведь есть общественность :)

Итог: проблема с пользовательской заменой была решена после загрузки и установки версии 0.2.2 из этой ветки обсуждения. Немного поковырявшись в настройках я пришел к выводу, что автозамену лучше поставить на комбинацию клавиш Alt+Enter, а языки ограничить следующим набором: css, html, php, xml, txt, js, sql.

Если кому интересно, то по ссылке ниже можете скачать измененные файлы плагина QuickText для Notepad++.

Скачать на CosyDale.com

Новая идея плагина – CD BuddyPress Avatar Bubble

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

Если кратко о плагине – при наведении на пользователя красиво появляется окошечко с определенной информацией о пользователе. Работать будет на , так что на загрузку сервера не повлияет практически. Будет админка для выбора, что же именно отображать, и еще кое-что :) Если есть какие-нибудь – пишите. На выходных я буду думать, как его сделать, а на следующей неделе надеюсь выпустить.

Это я таким образом отвлекаюсь от CD – он меня в очередной раз довел до тупика :) Слишком много я пытаюсь предусмотреть.

Прорвался сквозь дебри CD_ABB_Group::save()

Человек может радоваться в самых порой глупых ситуациях. Вроде у меня и день никакой – я не смогу купить себе зеркалку сегодня, так как ее банально за 15 минут до меня забрали, а другой не было (и теперь придется ждать неизвестно сколько, пока с таможни привезут застрявшую партию), но в тоже время радоваться еще получается.

Альберт – радуйся, мне удалось, благодаря указаниям ’а, исправить синтаксические ошибки в коде плагина CD Advanced () и теперь осталось лишь причесать админку и прикрутить полное управление BuddyBar’oм. На самом деле, не так уж и много работы. А проблема была вот в этой строке:

$sql = $wpdb->prepare( “UPDATE {$bp->abb->table_name_groups} SET name = %s, description = %s, order = %s WHERE id = %d”, $this->name, $this->description, $this->order, $this->id );

А надо было вот так:

$sql = $wpdb->prepare( “UPDATE {$bp->abb->table_name_groups} SET name = %s, description = %s, `order` = %s WHERE id = %d”, $this->name, $this->description, $this->order, $this->id );

Делов-то кавычки бабахнутые (то есть не обычные одинарные), но как они мне попортили жизнь…

Ну и еще потом пару моментиков исправил, подчистил от лишних проверок… Вот думаю теперь, как быстро получится доделать версию, которая меня удовлетворит и которую я смогу выпустить в люди.

Вот я и радуюсь…

Изменения на сайте

В предыдущей в этой рубрике я говорил о том, что изменю страницы BuddyPress шаблонов. Я это вчера ночью сделал :) Посмотрите, нравится ли вам? Что-то, может, надо подправить?

Страница ШаблоновСтоит ли развивать подобный вариант представления информации у меня на сайте? Вам нравится такой формат?

Если вам понравится, то можно сделать аналогичной на вид и страницу плагинов – где выделенной вкладкой будет текущая версия , а внутри блока будет таблица с названием и описанием.

Сегодня выложу BuddyPress Chat. Будут мелкие правки в самом коде чата, чтобы можно было поставить на рабочий сайт. Я надеюсь :)

Открыть Нечто !