Просмотр архивов по тагу: ‘Разработка’

Какой будет главная страница slaff.net?

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

Смотреть скриншоты

Цитата про web2.0

Самый страшный сон web2.0-разработчика — это мыльный пузырь. Надувается и лопается, надувается и лопается ...

Via Buzzburger

Конвертация Midi в MP3

Из личного опыта. Есть 2 основных способа конвертации midi файлов в формат mp3. В первом случае Вам не повезело — у Вас Microsoft Windows (не важно какой версии) и Вам нужно будет покупать специальный софт и использовать режим live для такой конвертации.

Почему live? Потому что весь софт под винду делает конвертацию midi в mp3 путем проигрывания файла и переписывания в wav, а потом сжимания в mp3. Это крайне не удобно, потому что:

1) Ваша звуковая карта может не иметь midi-маппера (например, встроенный звуковой чип в мат.плату) — это нужно, чтобы избежать сторонних звуков в wav файле
2) Если это batch сотни midi файлов, то это займет до фига времени

НО! Вам повезло, если у Вас есть линукс (или вообще любая *nix ОС). Делюсь опытом и предлагаю вам очень простой способ, который сделает батч из 300-350 файлов примерно за 10-15 минут (зависит от «железа»). BASH-скриптинг — это вообще необходимая вещь в консоли. Итак, создаем файл midi2mp3.sh и пишем в него следующее:

BASE=/home/slaff/converting

for file in $BASE/midi/*.mid
do

out=`basename $file .mid`
echo «$file $out»
MP3OUTPUT="$BASE/$out.mp3"

if [ ! -e "$MP3OUTPUT" ]
then
timidity $file -Ow -o"./$out.wav"
lame --scale 2 --resample 11.025 -b 16 «$out.wav» «$MP3OUTPUT»
rm -f $out.wav
fi

done

Чтобы это работало, Вам понадобиться 2 библиотеки:

  • TiMidity++ — это софтверный синтезатор.
  • lame — всем известный mp3 кодек.

Скрипт довольно простой и понятный. Сначала мы задаем абсолютный путь к папке, где будем конвертировать. Затем цикл, в котором указываем директорию в midi-файлами. После чего идет конвертация в WAV и далее сжатие в mp3 и сохранение файла в указанной выше директории $BASE.

Положите этот скрипт где-нибудь рядом, в туже папку например. Запустите в консоли и будет вам счастье и куча съэкономленного времени.

Отделение trackbacks от комментариев в WordPress

Денис спрашивает в Google Groups такую интересную вещь:

есть ли какая-то возможность повесить на трекбеки в комментах отдельный класс, чтобы выделить трекбеки визуально?

Если Вы уже обратили внимание, то у меня блоге trackbakcs и pingbacks отделены от комментариев вообще. Это и визуальнее удобнее, и комменты не загрязняет. А то бывает как натрекбекят. Ну так вот, делюсь с вами очень простым способом отделения трекбеков от комментариев в WordPress.

Тип комментов определяется очень просто. Чтобы вывести только комментарии в списке, достаточно всего-лишь указать эту вещь в цикле foreach:

if (get_comment_type() == "comment")

Далее вам нужно просто сделать 2 списка. В 1ом будут выводиться только комментарии, а во втором пинг- и трекбеки. Чтобы вывести трекбеки и пингбеки в отдельном списке, нужно использовать отдельны запрос и установиь get_comment_type () не равным типу comment (тоже в цикле, как и ранее):

$comments = $wpdb->get_results("SELECT * FROM $wpdb->comments WHERE comment_post_ID = '$post->ID' AND comment_approved = '1' AND comment_type!= '' ORDER BY comment_date");
# удаляем комменты из списка
if (get_comment_type() != "comment")

Далее, остается только сделать css-классы для более интересного оформления. Пример готового шаблона comments.php можно скачать здесь (файл в кодировке UTF). Этот же самый шаблон я использую в оформлении S@R.

Из записок для WordPress Cookbook.

FotoGangster.com

Последние несколько дней я усиленно готовил к выпуску свой новый блог о фотографии — называется FotoGangster.com. Это будет информативный блог сосредоточенный на теме цифровой фотографии, пост-обработки фоток, обзоры софта. Разумеется, буду постоянно выкладывать там и свои фотографии, фотоотчеты и различные ревью. Хотя что я вам все это говорю, если блог будет на испанском.

FotoGangster.com

Техническое. Дизайн мой, в «шапке» тоже я. Идея оформления заключалась в создании легкого и ненагруженного шаблона с приятным и понятным оформлением. Посему из графики там только картинка в «шапке», а остальное чистый css. Можете заценить и оставить свое имхо здесь в комментах.

Обтекание картинки текстом

В Google группах прозвучал вопрос по сабжу. CSS для пары таких классов очень простой:

.right, .left { display: inline; }
.left { float: left; padding: 5px; margin: 5px 15px 5px 0; }
.right { float: right; padding: 5px; margin: 5px 0 5px 15px; }

В WordPress можно еще quicktags-кнопочки использовать, чтобы вставлять картинки легко было. Я предпочитаю классы и избегать лишней писанины. Кстати, где-то в Google группах проскакивал вопрос недавно о том, как добавить такие кнопочки в quicktags. Вообщем, объяснять как и где редактировать js мне лень, поэтому просто выкладываю его на всеобщий доступ. Если будут ошибки в IE, то сообщите и я исправлю код.

Скачать файл quicktags.js с кнопками IMG-ALIGN, PRE, CODE, SMALL, ALERT. Для использования поместить в папку «wp-includes/js», переписав уже существующий. Разумеется, что css-код нужно добавить тоже в Ваш шаблон.

Habari первые скриншоты

Сегодня в своей рсс читалке наткнулся на пост в ProBlog про движок, о котором я упомянул на Хабрахабре и в комментах на нескольких блогах. Движок называется Habari, а начало его лежит в несостоявшемся пока офомлении Shuttle для WordPress от Broken Code.

Думаю, это ошибкой называть Habari как «WordPress killer», но да — в целом, этот двиг может стать отличной альтернативой для многих блог-платформ. Хотя, есть конечно же одна фича уже в движке, которая откровенно показывает неприязнь разработчиков именно к WordPress. Эта фича, уже работающий фильтр импорта всех постов из WordPress базы.

Я не примянул попробовать «на вкус» Habari. Мое первое впечатление было очень приятным — нет совершенно ничего лишнего, все только для удобного управления блогом, все элементы четко сгруппированы и находятся на своих местах. Конечно же, для альфа-версии это нормально, но для релиза нужен хороший косметический ремонт, которым, как я понял, занимается Michael Heilemann. Однако, Habari требователен к хостингу: на сегодняшний день необходим хостинг с PHP5 с поддержкой PDO и драйверами для MySQL или SQLite — у меня, кстати, можно захоститься и очень удобно ;), поддерживается все. Но Вы будете поражены скоростью работы Habari. По умолчанию как тема оформления идет знаменитый К2 (но только внешне). Что касается работы с русским языком, то я пока ничего не могу сказать, но в ближайшее время буду продолжать тестирование, т.к. есть желание помочь разработчикам.

ОБНОВЛЕНИЕ. Скачать и установить Habari.

По многочисленным просьбам друзей и знакомых, которые не знают как пользоваться svn, я выкладываю последний svn-снапшот Habari в обычном zip-архиве готовый у установке.

Не забывайте про минимальные требования: хостинг с php5 и поддержкой PDO, желательно наличие драйвера для MySQL или SQLite (по умолчанию, обычно последний идет включенный сразу).

Если Вы будете устанавливать Habari не в корневую директорию public_html, а в поддиректорию, то не забудьте отредактировать .htaccess, указав эту папку директивой RewriteBase.

Скриншоты

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

Продолжить чтение ...

WordPress Cookbook. Создание шаблона с нуля

Прочитал две статьи на тему «Как создать шаблон для WordPress» и был крайне удивлен подходу создавания шаблона. На мой взгляд, оба описания предлагают более трудоемкий и непрактичный подход. Я не люблю долго возиться с шаблонами и предпочитаю группировать все элементы как можно плотнее, избегая при этом лишнего кода. Отчего мои верстки для WP не страдают насыщенностью запросов.

В связи с этим я тоже решил поделиться своим опытом и предложить свой метод создания шаблона с нуля, который, на мой взгляд, практичнее и удобнее. Хочу отметить, что данный ebook — это мой личный опыт и я постарался наиболее просто показаться свой метод создания шаблона для WordPress.

Особенности моего метода — это компактность, практичность, удобство и универсальность. В ebook'е приведены полные листинги кода, этот же код я использую как базовый в шаблоне Slaff @ Reworked и других свох блогах. Я намерянно опустил ту часть, в которой следовало бы рассказать о CSS, потому что это несколько другая тема.

Скачайте и прочитайте ebook «WordPress Cookbook. Создание шаблона с нуля.» Распространяйте эту книжку в любом виде.

WordPress Cookbook. Создание шаблона с нуля.

Screenshot: верстка in action

screenshot: mac os x, textmate, shell, safari, itunes

На редкость сегодняшним вечером я никуда не пошел гулять и провожу его со своим любимым iBook'ом, отвалившись на любимом диване и верстая один сайтец.

Рабочие инструменты: Textmate, Safari, Firefox, Shell.
Под сопровождение Late Night Alumni в iTunes и чаты в разных мессенджерах, параллельно общаясь с flickr freaks.

CSS. Overflow, Word-wrap, Scrolling

Столкнулся с тем, что в highlight.js текст не переноситься, а скролиться в блоке PRE. Я предпочитаю, чтобы текст переносился автоматом. Для этого существуют специальные css-свойства. Ниже привожу универсальный метод для всех броузеров и версий css, которым собственно и пользуюсь сам:

pre {
      white-space: pre;         /* CSS2 */
      white-space: pre-wrap; /* CSS 2.1 */
      white-space: pre-line;   /* CSS 2.1/3 */

      white-space: -moz-pre-wrap; /* Mozilla */
      white-space: -hp-pre-wrap;   /* HP printers */
      white-space: -o-pre-wrap;     /* Opera 7 */
      white-space: -pre-wrap;       /* Opera 4-6 */
      word-wrap: break-word;       /* Только для динозавра IE */
}

Для скролинга же блока используется «overflow: auto», чтобы отключить скроллинг и обрезать линию «overflow: hidden», а чтобы без скроллинга и полной линией текста «overflow: off;».