Удаление дочерних материалов Node Gallery

Опубликовано 2014.06.17 в разделе .

Модуль Node Gallery позволяет создавать на сайте галереи. Причём каждое фото одной галереи - это отдельная нода. Пересматривать такую галереи не очень удобно, так как придётся обновлять страницу, а не использовать AJAX. Но зато можно темизировать каждую страницу фото, заполнять мета тэги и повысить кликабельность сайта. Для чего это нужно - решайте сами. и нужно ли вам это вообще. Тем не менее этот модуль имеет право на существование. Однако в нём есть один недостаток, скорее баг, нежели фича.

Проблемы с check_plain

Опубликовано 2014.06.17 в разделе .

Иногда при работе с сайтом вываливаются подобного рода ошибки:
Warning: htmlspecialchars(): Invalid multibyte sequence in argument в функции check_plain() (строка 1566 в файле /includes/bootstrap.inc).
Это возникает из-за того, что в функцию
  1. htmlspecialchars($text, ENT_QUOTES, 'UTF-8');
передана строка в кодировке, отличной от UTF-8.

Упрощение связки двух материалов в Drupal

Опубликовано 2014.05.14 в разделе .

Предположим у вас на сайте есть два типа материала. Пусть это будет "Автор" и "Статья". В статье есть поле типа "Ссылка на материал", через которое к статье привязывается автор. Задача следующая: на странице автора нужна ссылка на добавление статьи. При переходе по этой ссылке поле автора должно быть заполнено соответствующим автором. Реализуется это достаточно просто. Для этого понадобятся:
  • собственный модуль
  • знание Form API
  • понимание hook_form_alter
  • немного знаний по PHP

Невидимая капча Drupal

Опубликовано 2014.05.08 в разделе .

Использование капчи является самым распространенным способом защиты от ботов. Увы, для человека - это крайне неприятный элемент интерфейса, который хочется куда-нибудь спрятать и никому не показывать. В идеале - чтоб реальный человек её вообще не видел, а бот - не мог пройти. И такая капча была придумана, она так и называется - невидимая капча.
 
Суть её в том, что в форму добавляется поле ввода типа text. Затем оно прячется средствами CSS. Такое поле будет невидимо для обычного человека, а парсер бота распознает это поле ввода, и обязательно заполнит.

Свой виджет Fivestar для Drupal

Опубликовано 2014.04.16 в разделе .

Модуль Fivestar предлагает на выбор 11 типов виджетов. В основном это всё звёздочки. Хуки этого модуля позволяют с лёгкостью добавить свои виджеты, или попросту скины для отображения оценок. Для добавления своих виджетов нужен отдельный модуль. Почитать о его создании можно тут или тут. Далее используем hook_fivestar_widgets. Пусть модуль называется star_widgets Тогда функция будет выглядеть так:
  1. function star_widgets_fivestar_widgets() {

Создание своего скина для jCarousel

Опубликовано 2014.03.30 в разделе .

В продолжении статьи о программном выводе jCarousel я расскажу как создать свой скин. Это посложнее, чем поправить css в скине Default, но это Друпалвейное решение, так что используйте его. Для начала нужно создать свой модуль. Подробнее об этом тут и тут Далее объявить в нём hook_jcarousel_skin_info
  1. function mymodule_jcarousel_skin_info() {
  2. $skins = array();

Программный вывод jCarousel

Опубликовано 2014.03.30 в разделе .

Есть один замечательный модуль для вывода карусели из нод. Называется jCarousel. Этот модуль расширяет Views, позволяя выводить материалы каруселью. Но его можно использовать и отдельно, пользуясь его API. Вызов карусели происходит через темизирующую функцию:
  1. theme('jcarousel', array('items' => $images, 'options' => $options));

Разная анимация для Nivo slider

Опубликовано 2014.03.28 в разделе .

У слайдера Nivo slider есть один существенный недостаток - одинаковая анимация для смены картинок. То есть если листать картинки как влево, так и вправо - анимация всегда будет одной и той-же. Это не всегда выглядит красиво. Победить эту проблему получилось только патчем библиотеки. Я приведу пример и приложу исходник. Открывайте jquery.nivo.slider.js и ищите текст // Get our vars, это примерно 290 строка. Добавьте после неё следующую строчку:
  1. var slide_bilo = $('div.nivo-controlNav a.active').attr('rel');

Пополнение QIWI кошелька не выходя из дома

Опубликовано 2013.11.27 в разделе .

Сервис QIWI очень популярен, через него можно оплатить множество покупок в интернет магазинах. Пополнить его можно не отходя от компьютера и даже не имея кредитки. Достаточно лишь мобильника с деньгами на счету.

Сейчас я покажу как это делается.

Для начала нужна зарегистрироваться на сайте qiwi.com

Пишите свой номер телефона, никаких денег за регистрацию не спишут.

Отправка E-mail с вложением

Опубликовано 2013.07.25 в разделе .

Для того, чтобы отправить письмо с вложением - создайте функцию со следующим содержанием:
  1. function mail_attachment($filename, $path, $mailto, $from_mail, $from_name, $replyto, $subject, $message) {
  2. $file = $path.$filename;
  3. $file_size = filesize($file);
  4. $handle = fopen($file, "r");
  5. $content = fread($handle, $file_size);
  6. fclose($handle);
  7. $content = chunk_split(base64_encode($content));
  8. $uid = md5(uniqid(time()));
  9. $name = basename($file);
  10. $header = "From: ".$from_name." <".$from_mail.">\r\n";
  11. $header .= "Reply-To: ".$replyto."\r\n";</".$from_mail.">