Vydrin_AP

Главные вкладки

user-icon

Vydrin_AP Vydrin_AP

Модуль Ping

Аватар пользователя Vydrin_AP

Добрый день уважаемые!
Как и обещал ранее выкладываю модуль для пинга поисковых систем для Drupal 7.
После установки модуля в настройках каждого типа материала появится дополнительная вкладка с возможностью выбора способа пинга.
Ping options

  • Automatically send ping on node save - шлет пинг при каждом апдейте ноды, может оказаться излишним, если вы многократно редактируете ноду сразу после создания.
  • Show "Save and ping" button - при редактировании ноды появится кнопка Save and ping.
  • Ping on cron run - самый лучший на мой взгляд вариант. Вы создаете ноду, при следующем запуске крона она будет пропингована.

Для того, чтобы пропинговать сразу несколько нод, по адресу admin/content можете выбрать необходимые ноды и в выпадающем списке Send ping.
Send ping

Настройки самого модуля находятся по адресу admin/config/services/ping, здесь указывается список поисковых систем, которые вы желаете пинговать.
После каждого пинга модуль пишет отчет в watchdog, там можно смотреть насколько успешно пингуются ваши материалы.

Вкратце вроде бы все. Будут вопросы - задавайте. Надеюсь модуль окажется полезным.

PS: название Ping рабочее, возможно при выкладывании на орге оно будет изменено.

0 Thanks

HOWTO Пинг яндекса и прочих ПС на Drupal 7

Аватар пользователя Vydrin_AP

Здравствуйте уважаемые!

Прочитав статью о пользе пинга статей, решил настроить пинг на 7-ке, оказалось, модуль  multiping еще не портирован, а тот вариант, который на орге предложил  andypost не пингует при посте статьи. Ждать не хотелось, решил написать свой сниппет для  rules.

Ближе к телу.
Устанавливаем rules, создаем правило по событию Before saving content, в Conditions можете настроить все, что заблагорассудится.
В Actions добавляем Execute custom PHP code и вставляем следующий сниппет:

global $base_url, $base_path;

$url = $base_url . $base_path . drupal_get_path_alias('node/' . $node->nid);

$services = array(
  'http://ping.blogs.yandex.ru/RPC2',
  'http://blogsearch.google.com/ping/RPC2',
  'http://rpc.pingomatic.com',  
  'http://xping.pubsub.com/ping/',
  'http://rpc.weblogs.com/RPC2',
  'http://blogpeople.net/servlet/weblogUpdates',
);

foreach($services as $service){
  $ping = xmlrpc($service,  array('weblogUpdates.ping' => array($node->title, $url)));
 
  if (!$ping)
    watchdog('ping', 'Error sending ping to "%site_name".', array('%site_name' => $service));
}

Помним о том, что код НЕ ДОЛЖЕН содержать <?php ?>.

0 Thanks

Модуль snippet_block. Ваше мнение?

Аватар пользователя Vydrin_AP

Доброго времени суток уважаемые!

Хочу представить вашему вниманию модуль snippet_block.

Предисловие:

Когда столкнулся с необходимостью работы над проектом в команде разработчиков мне сразу сказали - старайся не использовать сниппеты в блоках, т.к. они хранятся в БД и через SVN команда работать с ними не сможет. А что, если в блоке требуется вывести некий сниппет в 2-3 строки кода? Писать модуль!
Тогда и возникла идея создания модуля, позволяющего хранить текст сниппетов не в БД, а в файловом варианте.

Описание функционала:

Модуль snippet_block позволяет создавать сущности, в которых устанавливать настройки для блока, такие как путь к сниппет-файлу, его видимость и способ кэширования.
После создания сущности в списке блоков появляется блок, выводящий сниппет из файла.

Немного подробнее:

Параметр State - позволяет включить, выключить и скрыть блок со страницы admin/structure/block. С первыми двумя вариантами, думаю, все понятно, а вот зачем может понадобиться скрывать блок? Если вы используете модуль  panels и выводите блоки в нем, то на странице управления блоками у вас лежит куча блоков в статусе Отключен, если проект большой и древний, то в отключенных может лежать очень много блоков. Параметр Hidden позволяет скрывать блок только (!) на странице управления блоками, оставляя его видимым для других модулей.

Параметр Cache - дает возможность настроить способ кэширования блока.

Дополнительные приятности:

0 Thanks

Указание tpl-файла пользователем

Аватар пользователя Vydrin_AP

Здравствуйте уважаемые!

Пишу модуль, который выводит блок, темизируя вывод через свой mymodule.tpl.php. В настройках блока есть поле "Путь к tpl-файлу".

Вопрос: как можно при выводе содержимого блока учитывать содержимое этого поля? Если пустое, используем свой темплейт, если заполнено, то пользовательский.

Спасибо!

0 Thanks

Firebug в любом браузере

Аватар пользователя Vydrin_AP

Доброго дня коллеги.

Недавно наткнулся на любопытный скрипт:

<script type="text/javascript" src="http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js"></script>

0 Thanks

Не могу разобраться с js

Аватар пользователя Vydrin_AP

Доброго всем вечера!
Что-то копаю полдня и никак не могу понять.
В тексте модуля завожу переменную $a и хочу присвоить ей значение из js (вызывается через drupal_add_js из файла). Подскажите плиз как?

PS: пытался передавать через Drupal.settings, но получилось только в js из модуля, а обратно не получилось.

0 Thanks

Радио онлайн на Drupal 7

Аватар пользователя Vydrin_AP

Здравствуйте уважаемые!

Вот и я решил вынести на суд общественности свой проект.

онлайн радио BACART.net

http://www.bacart.net задумывался изначально как блог, но два месяца назад превратился в интернет-радио.
Оцените, попинайте, похвалите (если найдется за что)).

Трансляция радио осуществляется программным комплексом собственной разработки, в ротации пока только 8 станций, но конфигурация ПО и технические средства позволяют расширение до 100 и более станций (в теории можно и 1000 и больше).

0 Thanks

Как добраться до css вконтактовских виджетов?

Аватар пользователя Vydrin_AP

Здравствуйте уважаемые!

Собственно вопрос! Как же до них добраться? Например, имеем виджет комментариев, фаербаг подсказывает, что он обрамлен дивом vk_comments - его перекрыть в своем css не проблема. А вот под ним уже лежит iframe - до него и всего низлежащего добраться не получается.

Кто-нить смог? Помогите советом плиз.

0 Thanks

Проблема с регистрацией в Drupal 7

Аватар пользователя Vydrin_AP

Доброго времени суток!

Думаю, моя проблема есть и у других владельцев сайтов на семерке, сам не знал о ее существовании до сегодняшнего дня - друг попробовал зарегиться, не смог и сразу отбагрепортил.

Ближе к телу!
Заходит человек на сайт, регится, ему приходит e-mail с линком на одноразовый вход. Он заходит, попадает в редактирование своего профиля, а там поля с паролями пустые и необязательные!!!

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

И все! Приплыли! Текущего у него нет, новый завести не может!
Опытные идут в восстановление пароля и с горем пополам все же становятся моими юзерами, остальные просто уходят и плюются.

Ребята, что делать? Это только у меня или я не одинок?

0 Thanks

[Решено] Вывод содержимого php-файла

Аватар пользователя Vydrin_AP

Доброго времени суток уважаемые!

Есть файл sites/default/files/new.php.
Содержимое файла:
<?php
print 'Hello World';
?>

Каким образом можно вывести содержимое файла в ноду\блок, так, чтобы вывести не текст, а чтобы еще и php отработало?

Пробовал так:
<?php
$file = file_get_contents('sites/default/files/new.php');
echo $file;
?>

Выводит сам текст файла.

Заранее благодарен!

0 Thanks

Ссылкообмен на друпале.

Аватар пользователя Vydrin_AP

Здравствуйте Уважаемые!

Прочел только что статью Толи и появилась задумка. Предлагаю обсудить.

Идея:

  1. Делаем сайт (ну или используем уже имеющийся, например Друпалогию)
  2. Пишем модуль, устанавливая который человек регается на сайте, получает айдишник и вставляет на свой сайт блок.
  3. В блоке по рандому выводятся 10 ссылок на друпаловские сайты других зареганных пользователей.

В общем взаимопомощь получается. Как вам?

0 Thanks

Как получить значение поля в Drupal 7

Аватар пользователя Vydrin_AP

Здравствуйте уважаемые!

Ситуация:
Друпал 7, в профиле пользователя добавил поле (текст), надо вывести его значение в сниппете в блок. Как?

Заранее спасибо!

0 Thanks

Обмен данными Delphi - Drupal и обратно

Аватар пользователя Vydrin_AP

Здравствуйте Уважаемые!

Имеется задача:
На одном физическом сервере сайт и программа, написанная на делфи. Необходимо реализовать обмен некоторыми данными между ними.
Обмен будет заключаться в том, что по запуску крона сайт будет отдавать некоторые значения CCK-полей в программу, а та, в свою очередь, будет отдавать обратно уже измененные данные.

Я вижу несколько вариантов реализации данной задачи:

  1. Организовать все через промежуточный файл, в который делфи и друпал будут складывать свои данные и затем брать оттуда же новые
  2. Организовать через PHP-код, который будет вызываться из сайта по крону
  3. Организовать путем прямого доступа из делфи к БД - на мой взгляд самый некрасивый способ.. и вообще не Drupal-way :)

Может кто-нибудь реализовывал подобное взаимодействие? Подскажите люди добрые )

ЗЫ: самое интересное в этой задаче то, что сайт сделан на Drupal 7.

0 Thanks

И снова скорость работы сайта

Аватар пользователя Vydrin_AP

Здравствуйте Уважаемые!

Ситуация: свой физический сервер, стоит дома.
Сайт по локалхосту летает без проблем, при доступе через www.suite.ru скорость просто никакая (

Провайдер: Акадо - скорость 800кб\с входящая, 200 кб\с исходящая.

Вопросы:

0 Thanks

[РЕШЕНО] Вопрос для гуру css

Аватар пользователя Vydrin_AP

Здравствуйте уважаемые!

Имеется код, сформированный модулем, скажу сразу - модуль платный и формирует данные строки Java-скриптом, поправить скрипт конечно можно, но все же хочется через css.

<div class="main_class_div" style="some_properties: some_values;">
  <div class="child_class_div" style="some_properties: some_values;"></div>
  <div style="some_properties: some_values;">something_inside_div</div>
  <div style="some_properties: some_values;">something_inside_div</div>
</div>

Я имею css-файл, в который хотелось бы вписать обертку для main_class_div, скрывающую третий див, как видно из кода я имею наименование главного дива (main_class_div) и первого (child_class_div), два последующих дива не имеют имен классов.

Собственно вопрос: как средствами css скрыть третий див?
Или как добраться до него связкой PHP+css, может перебором каким-нибудь?

Заранее благодарю!

0 Thanks

Способ создания пункта меню "Редактировать личные данные" или "Мой трекер"

Аватар пользователя Vydrin_AP

Здравствуйте уважаемые!

Как часто хочется добавить в меню пункт "Редактировать профиль" или "Мой трекер", но стандартные средства Друпала не позволяют это сделать (возможно плохо искал) и приходится писать код или смириться с невозможность вывести эти пункты меню.

Сегодня в голову пришла идея, попробовал и получилось! Не сочтите извращенцем, но я добавил эти пункты напрямую через базу.

Описываю шаги:

  1. Заходим в базу MySQL
  2. Жмем ссылку SQL (см. скрин)
  3. В текст запроса вставляем текст из файла menu_create.sql
  4. Жмем ОК
  5. Если ошибок не было, то заходим на свой сайт в Secondary menu
  6. Очищаем кеш (опционально)
  7. Готово!

Помимо ссылки "Редактировать профиль" создаются еще несколько ссылок, если не используете модули, выводящие эти ссылки в профиле пользователя - просто удалите их из Secondary menu обычным способом.

ЗЫ: при импорте в базу может выпасть сообщение о невозможности создания индекса - это значит, что меню с индексами, которые я прописал в sql-файле (50001, 50002, ...) уже имеются в базе, выход - отредактировать menu_create.sql.

0 Thanks

Colorbox ошибка в IE в режиме maintenance

Аватар пользователя Vydrin_AP

Порядок воспроизведения проблемы:

  1. Чистая установка друпала
  2. Colorbox 6.x-1.0-beta6 или 6.x-1.0-beta7 (вместе с библиотекой)
  3. jquery_update-6.x-2.0-alpha1
  4. Заходим в Site maintenance (Сайт на обслуживании), переводим в режим обслуживания, и заходим в IE.

Тут-то и появляется ошибка (дважды).

0 Thanks

[РЕШЕНО] PIE.htc + Opera у кого-нибудь получилось подружить?

Аватар пользователя Vydrin_AP

Господа! У кого-нибудь получилось подружить PIE.htc и Opera?
Заходя на страницу http://css3pie.com оперой отображаются все эффекты, кроме градиента, а очень хотелось бы )))

0 Thanks

Как вывести несколько блоков горизонтально?

Аватар пользователя Vydrin_AP

Имеем: регион футер, 2 (или более) блока, например Форма поиска и Кто на сайте.
Задача: разместить эти блоки в регионе, но так, чтобы они шли не по вертикали, а по горизонтали.
Вопрос: собственно - как это реализовать через css класс региона?
ЗЫ: заранее спасибо )))

0 Thanks

Утилита запуска cron'a по расписанию

Аватар пользователя Vydrin_AP

Краткая предыстория - решил настроить свой веб-сервер дома.
Поставил Windows server 2003, далее потребовалось настроить запуск крона по расписанию, нашел два способа (возможно плохо искал) и решил написать свою утилиту. Представляю ее на суд общественности. Версия 1.0, надеюсь получить от Вас достаточно замечаний и предложений, чтобы дописать ее до версии 2.0.

0 Thanks