Блог пользователя - Valeratal

Notice: unserialize() [function.unserialize] при любых апдейтах

16 июня 2011 в 10:59

Error at offset 65533 of 65535 bytes в функции views_db_object->load_row()
(строка 1857 в файле /var/www/hrportal/data/www/www.hr-portal.ru/sites/all/modules/views/includes/view.inc).

Notice: unserialize() [function.unserialize]: Error at offset 65501 of 65535 bytes в функции views_db_object->load_row() (строка 1857 в файле /var/www/hrportal/data/www/www.hr-portal.ru/sites/all/modules/views/includes/view.inc).

В файле

такой код (номер строки выделен мною)

 /**
   * Load the object with a row from the database.
   *
   * This method is separate from the constructor in order to give us
   * more flexibility in terms of how the view object is built in different
   * contexts.
   *
   * @param $data
   *   An object from db_fetch_object. It should contain all of the fields
   *   that are in the schema.
   */

  function load_row($data) {
    $schema = drupal_get_schema($this->db_table);

    // Go through our schema and build correlations.
    foreach ($schema['fields'] as $field => $info) {
   1857    $this->$field = empty($info['serialize']) ? $data->$field : unserialize($data->$field);
    }
  }

Чтобы это значило, где искать , куда копать?

Как сделать меню как на форбс ру (в смысле открытие второго уровня и подсветка конкретного пункта,если нода в рубрике)

12 июня 2011 в 21:52

Собственно сабж

Например
http://www.forbes.ru/lichnye-dengi-column/strahovanie/61546-kak-zastavit...

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

Поставил суперфиш, ну, что то похожее конечно имеется, но никакой интеллектуальной настройки нет

Сниппет входа для drupal 7. Прошу помочь с проверкой

15 мая 2011 в 0:01

Есть такой сниппет, я уже немного его отредактировал. Он работа в 6-ке
Но насче 7-ки меня терзают сомнения. Правильно ли работает (особенно логаут)

вот собственно код

<?php
  global $user;
  if (!$user->uid) {
        $message .= '<span id="login"> ' . t('<a href="@login">Вход</a> | <a href="@register">Регистрация</a>', array('@login' => url('user/login'), '@register' => url('user/register')));
        $message .= t(' | <a href="@password">Забыли пароль?</a>', array('@password' => url('user/password'))) . '</span>';
  }
  else {
        $message .= '<span id="login"> ' . t('<b>@User</b> ', array('@User' => $user->name));
        $message .= t('<a href="@view">Профиль</a> | <a href="/user/logout">Выход</a> ', array('@view' => url('user/' . $user->uid), '@edit' => url('user/' . $user->uid . '/edit'), '@logout' => url('logout'))) . '</span>';
  }
  echo $message;
?>

Сайт HR-Portal.ru переехал на Drupal 7

12 мая 2011 в 22:04

Сайт HR-Portal.ru переехал на Drupal 7

О сайте, многие из присутствующих слышали
Если коротко. Это более 40к нод, более 1м уников в месяц и 2м просмотров в месяц

Попытался вначале сам перевести, благо опыт апгрейда с 5-ки на 6-ку был.
Но, помучившись 3 дня, понял что не получается.
Обратился Виктору (RxB), который собственно и проделал гигантский объем работы по данному апгрейду.
За что ему огромное спасибо.
Технические моменты он опишет сам, я же остановлюсь на некоторых наблюдениях и впечатлениях.

1. Бэкапы. Делать их надо постоянно. Понятно что до обновления. Но и после, перед каждым включением модуля под 7-ку (то есть апгрейда данных с 6-ой версии) хорошо бы иметь бэкап. Ибо включиться может по разному.

2. Наличие 6-ой версии. Это сильно помогает при ручном переносе. А также, устаревшая версия может выполнять ряд функций, которые вы к примеру не успели включить и настроить в 7-ке. Например, модуль simplenews. Прекрасно отправил рассылку находясь на 6-ой версии, в то время как я настраивал этот модуль на 7-ке. Как оказалось, проще экспортировать подписчиков из базы 6-ой версии и импортировать в 7-ою, чем разбираться, почему не включается то или иное поле. Это же правило думаю относится и к визуальным редакторам. Имхо проще их удалить а уже потом ставить и настраивать заново. Тем более при смене друпал-версии модуля, часто меняется и его архитектура.

Drupal 7. Как показывать вставить в node.tpl.php текст, показываемый только в полной ноде

12 мая 2011 в 10:32

Проблема собственно в вставке кнопки вконтакте. Если эта кнопка видна в тизере, то эти кнопочки собираются со всех 10 тизеров в кучу

Вот, в 6-ке, я выводил так. Правда вставляю код через блок

<?php if ($node_bot_ads && !$teaser): ?>
 <div id='node_bot_ads'>
 <?php print $node_bot_ads ?>
 </div>

Код, который хотелось бы показывать только в полной ноде

<table width="500"  border="0">
  <tr>
    <td> <iframe src="http://www.facebook.com/plugins/like.php?href=http://www.hr-portal.ru<?php print $node_url?>&layout=standard&show_faces
=false&width=450&action=like&colorscheme=light&height=35" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:35px;" allowTransparency="true"></iframe></td>
    <td><!-- Put this script tag to the <head> of your page -->
<script type="text/javascript" src="http://userapi.com/js/api/openapi.js?23"></script>

<script type="text/javascript">
  VK.init({apiId: 1883507, onlyWidgets: true});
</script>

<!-- Put this div tag to the place, where the Like block will be -->
<div id="vk_like"></div>
<script type="text/javascript">
VK.Widgets.Like("vk_like", {type: "10"});
</script></td>
  </tr>
</table>

Drupal 7/ Как вывести сниппетом список 10 последних нод определенного типа

10 мая 2011 в 21:34

собственно сабж

В 6-ке работало

Cannot use a scalar value as an array in /modules/locale/locale.module on line 663 При попытке обновится с 6-ки на 7-ку

30 апреля 2011 в 23:10

Пытаюсь обновится

Делаю по инструкции

запускаю update.php, и все зависает
в логах указанная ошибка

В самом файле модуля
// We have the source string at least.
// Cache translation string or TRUE if no translation exists.
$locale_t[$langcode][$context][$string] = (empty($translation->translation) ? TRUE : $translation->translation);

Чтобы это могло быть, какие скалярные и почему

Кто нить сталкивался?

Denver и supex dumper. Что то не работает

30 апреля 2011 в 8:20

я чего туплю
valeratal: залил в тест1
valeratal: запускаю супех дампер, ввожу root без пароля
valeratal: и меня перекидывает по адресу http://test1.ru/Z:/home/test1.ru/www/%5Ehttp://127.0.0.1/$
valeratal: и сообщение об ошибке

You don't have permission to access /Z:/home/test1.ru/www/^http://127.0.0.1/$ on this server.

Подсказка Денвера
Возможные причины ошибки:

Вы пытаетесь запустить CGI-скрипт, расположив его вне CGI-директории (например, в директории документов сервера www). Корректные пути к CGI-директориям следующие:

URL Куда указывает
http://***/cgi-glob/script.cgi /home/cgi-glob/script.cgi
http://***/cgi/script.cgi /home/***/cgi/script.cgi
http://***/cgi-bin/script.cgi /home/***/cgi-bin/script.cgi

При большом желании вы все же можете запускать скрипты и из www-директории. Для этого создайте в ней файл .htaccess (с точкой в начале) следующего содержания:

Options +ExecCGI

Возможно, вы пытаетесь открыть картинку или статический HTML-файл, расположенный в CGI-директории. Этого делать нельзя. Все рисунки (а также другие файлы, за исключениям скриптов) необходимо помещать в www-директорию. См. примеры по адресу /home/localhost/www.
Если вы ожидаете получить листинг каталога, но выводится эта ошибка, вероятно, для данной директории выдача листинга запрещена (например, это CGI-папка). Чтобы разрешить листинг, создайте в нужной директории файл .htaccess следующего содержания:

Options +Indexes

В общем, Options +Indexes я поставил, но это не помогает

Подскажите, кто сталкивался

У кого нибудь был опыт создания регионального/географического субдомена?

10 апреля 2011 в 23:47

Собственно сабж
подумал. не предложить ли мне на HR-Portal.ru создать желающим укр версию (например)

Соответсвенно, в меню на основном и на главной есть пункт Укр версии (на главной к примеру последние 10 публикаций - для рекламы)

интересны вопросы

Кто нибудь обновлялся с 6 на 7, с имеющимся imagecache-картинками

7 апреля 2011 в 8:17

Собственно сабж
интересует, подхватит ли в 7-ке ядренная функция/модуль, те пресеты, найдет ли 7-ка картинки от шестой версии, чтобы сделать собственные пресеты?

1 000 000 посетителей в месяц. Рекорд HR-Portal.ru

2 апреля 2011 в 23:10

По данным статистики LiveInternet в марте 2011 года, HR-Portal.ru посетило более миллиона пользователей.
График прилагаю
График

Views: Как сделать вывод заголовков последних 3 нод группируя по терминам таксономии определенного словаря

10 марта 2011 в 10:47

Собственно сабж

Есть у меня словарь "Рубрика" примерно 10 терминов

Хочу вывести
3 заголовка нод с первым термином
3 заголовка нод со вторым

и тд

Можно ли это сделать? По типу нод вроде сортируется (правда ни разу не пробовал)

Как сделать поле с помощью CCK, с доступом только определенной роли (например, администратор)

25 февраля 2011 в 10:49

Собственно сабж

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

Ubercart: как вывести в ветке каталога не только картинку и название, но и артикул

25 февраля 2011 в 9:52

Такой вопрос
Есть уберкарт, есть обычный вывод товаров по 12 штук

но, например http://www.kpd-sp.ru/catalog/spetsodezhda/zimnyaya-spetsodezhda/kostyumy...
выводится только картинка и название. Как добавить еще и артикул

вот тут, настройки сетки товаров,
/admin/store/settings/catalog/edit/grid
отмечено и артикул и "добавить в корзину" но где и на что это влияет не могу понять

Подскажите, кто сталкивался

Ubercart: как сделать чтобы при клике на "добавить в корзину" не перекидывало в корзину

12 февраля 2011 в 19:36

собственно сабж

облазил настройки, не нашел.

Ubercart: как сделать дополнительное поле для еще одной цены (и делать ли вообще)

1 февраля 2011 в 9:51

Поставили задачу, отображать не только розничную цену (у убере - цена продажи)
но и оптовую (тоже цена продажи, но для оптовиков)

Возник вопрос, то ли использовать существующие поля (рекомендуемая цена, закупочная цена), то ли все таки делать еще одно поле. Но, делать поле - не так просто, насколько я понимаю, ибо убер - вещь в себе, поле конечно можно сделать в с помощью CCK, но будет ли знать об этом убер (а если понадобиться делать расчеты в самом убере, используя оптовую цену)

Подскажите, как лучше

Как вставить блок в ноде (в полной версии) после предполагаемого тизера

26 января 2011 в 21:11

Собственно сабж

Просто вставить блок в ноду я могу. А как вставить в полную версию ноды блок после break я не понимаю

подскажите, кто сталкивался

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

Помогите с PHP (вывод ссылку и количество личных сообщений только для пользователей)

6 января 2011 в 12:54

C PHP совсем плохо у меня

есть снипет, от пользователя друпал ру. Выводит ссылку на личные сообщения (модуль private message), а если есть сообщения то показывает количество новых. Все бы хорошо, но как выводить это только для залогинненых. Не хочется делать целый блок только для этого.

Drupal 7 Вышел

5 января 2011 в 9:39

Вышел Drupal 7
Скачать со страницы http://drupal.org/project/drupal

Комментарии к релизу (много исправлений по сравнению с RC4)
Пресс-релиз на русском языке

Drupal 7