xandeadx.ru Блог музицирующего веб-девелопера

Комментарии RSS

Доброе утро, подскажи пожалуйста, что за фигня.
У меня Drupal 7 скачал девки версии Tagadelic и Cumulus.. поставил.
Вроде сделал всё по документации, но блок отображает полный маркап ссылок, прикрепляю картинку чтобы всё стало понятно.
Подскажи, как решить? и в чём проблема? Чтоб знать на будущее. Спасибо!
Собственно наглядно..

не знаком с этими модулями

Доброй ночи, посоветовали обратиться к вам, буду благодарен безмерно за любую помощь!
Суть вот в чем. На сайте с 7 Друпалом сделаны 7 страниц-разделов-сайта и 37 страниц-подразделов-сайта терминами таксономии, на каждой странице стоит от 1 до 8 вьюх, обновляется за день 7 разделов и, соответственно, 7 подразделов (не 37).
Стоит модуль xmlsitemap, который изначально не прописывал ни lastmod, ни changefreq для терминов таксономии. А их необходимо обновлять по 14 штук раз в день. То есть lastmod надо сделать в карте сайта для них по времени добавления на них нового материала через соответствующую вьюху. Вьюхи вылазят на страницах при помощи Context-модуля и отображаются через Display Suite анонсами нод с сортировкой по дате обновления.
Сегодня нарыл код с сайта: http://scito.ch/content/add-lastmod-changefreq-and-changecount-sitemapxm...
Сделал такой модуль. Теперь в карте сайта генерируется дата СОЗДАНИЯ термина таксономии. Как можно привязать эту дату к не к term_created из бд, а к timestamp анонса ноды, отображающейся в определенной вьюхе на этой странице термина (дате изменения)?
Я не программист, сразу оговорюсь. Модуль сделал по инструкции. За любую помощь, повторюсь, скажу спасибо, а когда будет много денег - с удовольствием поделюсь и угощу пивом :)

ничего не понял

Что именно не ясно?)

не ясно чем я могу помочь

Ну с друпал.ру посоветовали у Вас спросить такое :)

Вот здесь

<?php
/**
* Fetch all timestamps when a taxonomy term or his direct child was changed.
*
* @param $node
*   A node object.
* @return
*   An array of UNIX timestamp integers.
*/
function termlastmod_term_get_timestamps(stdClass $term) {
  static $term_timestamps = array();
 
  if (!isset($term_timestamps[$term->tid])) {
    $term_timestamps[$term->tid] = db_query("SELECT ti.created FROM {taxonomy_index} ti WHERE ti.tid = :tid
      UNION ALL
      SELECT ti.created FROM {taxonomy_term_hierarchy} th, {taxonomy_index} ti WHERE th.parent = :tid AND th.tid = ti.tid", array(':tid' => $term->tid))->fetchCol();
  }
 
  return $term_timestamps[$term->tid];
}
 
/**
* Add changefreq, changecount and lastmod for taxonomy terms.
*
* Implements hook_xmlsitemap_link_alter.
*
* @param $link
*   An array with the data of the sitemap link.
*/
function termlastmod_xmlsitemap_link_alter(&$link) {
  if ($link['type'] == 'taxonomy_term') {
    // dpm($link, 'link');
    $tid = $link['id'];
    $term = taxonomy_term_load($tid);
    // dpm($term);
 
    // Always recalculate changefreq and changecount.
    $timestamps = termlastmod_term_get_timestamps($term);
    $link['changefreq'] = $term->tid ? xmlsitemap_calculate_changefreq($timestamps) : 0;
    $link['changecount'] = $term->tid && (count($timestamps) > 0) ? count($timestamps) - 1 : 0;
    $link['lastmod'] = count($timestamps) > 0 ? max($timestamps) : 0;
  }
}
?>

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

что такое "таймстамп из анонса ноды из вьюса на странице этого термина"?

время в формате Unix. Есть у каждой ноды в Друпале. Копаюсь в базе SQL, нашел там эту байду)

что такое таймстамп, анонс, нода, вьюс и термин я знаю. я не знаю что такое "таймстамп из анонса ноды из вьюса на странице этого термина"

я так понимаю , что это время создания ноды , которая была последней добавлена в данный термин

это время изменения ноды, которая выводится на странице термина таксономии при помощи Views и отображается (нода) при помощи Display Suite в формате анонса (не полного содержимого)

точное время последнего обновления* - я бы даже так сказал :) сори, я начинающий, могу криво объяснять. Сокол почти верно написал, поправлю, это время последней обновленной ноды, связанной полем с опред термином

$timestamp = db_query("
  SELECT n.changed
  FROM {node} n
  INNER JOIN {taxonomy_index} ti ON ti.nid = n.nid
  WHERE ti.tid = :tid
  ORDER BY n.changed DESC
  LIMIT 1
", array(':tid' => TID_ТЕРМИНА))->fetchField();

Оказалось не только в нем проблема, и IMCE перестала загружать файлы. Вместе с IMCE стоит IMCE mkdir, но он нормально создает папки. Из-за чего может быть так?

xandeadx, а куда этот код добавлять?

понятия не имею

Хороший совет получился))

в модуль естественно добавить
заменить $timestamps =

убираются вообще из карты сайта и дата посл. изменения и частота обновления. как и было до установки модуля :(
вставил так:

<?php
/**
* Fetch all timestamps when a taxonomy term or his direct child was changed.
*
* @param $node
*   A node object.
* @return
*   An array of UNIX timestamp integers.
*/
function termlastmod_term_get_timestamps(stdClass $term) {
  static $term_timestamps = array();
 
  if (!isset($term_timestamps[$term->tid])) {
    $term_timestamps[$term->tid] = db_query("SELECT ti.created FROM {taxonomy_index} ti WHERE ti.tid = :tid
      UNION ALL
      SELECT ti.created FROM {taxonomy_term_hierarchy} th, {taxonomy_index} ti WHERE th.parent = :tid AND th.tid = ti.tid", array(':tid' => $term->tid))->fetchCol();
  }
 
  return $term_timestamps[$term->tid];
}
 
/**
* Add changefreq, changecount and lastmod for taxonomy terms.
*
* Implements hook_xmlsitemap_link_alter.
*
* @param $link
*   An array with the data of the sitemap link.
*/
function termlastmod_xmlsitemap_link_alter(&$link) {
  if ($link['type'] == 'taxonomy_term') {
    // dpm($link, 'link');
    $tid = $link['id'];
    $term = taxonomy_term_load($tid);
    // dpm($term);
 
    // Always recalculate changefreq and changecount.
    $timestamp = db_query("
  SELECT n.changed
  FROM {node} n
  INNER JOIN {taxonomy_index} ti ON ti.nid = n.nid
  WHERE ti.tid = :tid
  ORDER BY n.changed DESC
  LIMIT 1
", array(':tid' => TID_ТЕРМИНА))->fetchField();
    $link['changefreq'] = $term->tid ? xmlsitemap_calculate_changefreq($timestamps) : 0;
    $link['changecount'] = $term->tid && (count($timestamps) > 0) ? count($timestamps) - 1 : 0;
    $link['lastmod'] = count($timestamps) > 0 ? max($timestamps) : 0;
  }
}
?>

", array(':tid' => TID_ТЕРМИНА))->fetchField();
TID_ТЕРМИНА надо же наверное заменить на $tid

а $timestamp на $timestamps

Сокол, так и сделал. Теперь после изменения термина таксономии выскакивает:

Warning: sort() expects parameter 1 to be array, boolean given в функции xmlsitemap_calculate_changefreq() (строка 1230 в файле /home/***/sites/all/modules/xmlsitemap/xmlsitemap.module).
Warning: max() [function.max]: When only one parameter is given, it must be an array в функции termlastmod_xmlsitemap_link_alter() (строка 48 в файле /home/***/sites/all/modules/termlastmod/termlastmod.module).

и по-прежнему не показывается ни дата посл. изм., ни частота в файле сайтмап :(

покажи код

termlastmod.module полностью:

<?php
/**
* Fetch all timestamps when a taxonomy term or his direct child was changed.
*
* @param $node
*   A node object.
* @return
*   An array of UNIX timestamp integers.
*/
function termlastmod_term_get_timestamps(stdClass $term) {
  static $term_timestamps = array();
 
  if (!isset($term_timestamps[$term->tid])) {
    $term_timestamps[$term->tid] = db_query("SELECT ti.created FROM {taxonomy_index} ti WHERE ti.tid = :tid
      UNION ALL
      SELECT ti.created FROM {taxonomy_term_hierarchy} th, {taxonomy_index} ti WHERE th.parent = :tid AND th.tid = ti.tid", array(':tid' => $term->tid))->fetchCol();
  }
 
  return $term_timestamps[$term->tid];
}
 
/**
* Add changefreq, changecount and lastmod for taxonomy terms.
*
* Implements hook_xmlsitemap_link_alter.
*
* @param $link
*   An array with the data of the sitemap link.
*/
function termlastmod_xmlsitemap_link_alter(&$link) {
  if ($link['type'] == 'taxonomy_term') {
    // dpm($link, 'link');
    $tid = $link['id'];
    $term = taxonomy_term_load($tid);
    // dpm($term);
 
    // Always recalculate changefreq and changecount.
    $timestamps = db_query("
  SELECT n.changed
  FROM {node} n
  INNER JOIN {taxonomy_index} ti ON ti.nid = n.nid
  WHERE ti.tid = :tid
  ORDER BY n.changed DESC
  LIMIT 1
", array(':tid' => $tid))->fetchField();
    $link['changefreq'] = $term->tid ? xmlsitemap_calculate_changefreq($timestamps) : 0;
    $link['changecount'] = $term->tid && (count($timestamps) > 0) ? count($timestamps) - 1 : 0;
    $link['lastmod'] = count($timestamps) > 0 ? max($timestamps) : 0;
  }
}
?>

xmlsitemap.module строки с 1197 по 1207:

function xmlsitemap_get_chunk_size($reset = FALSE) {
  static $size;
  if (!isset($size) || $reset) {
    $size = xmlsitemap_var('chunk_size');
    if ($size === 'auto') {
      $count = max(xmlsitemap_get_link_count($reset), 1); // Prevent divide by zero.
      $size = min(ceil($count / 10000) * 5000, XMLSITEMAP_MAX_SITEMAP_LINKS);
    }
  }
  return $size;
}

$link['lastmod'] = $timestamps ? $timestamps : 0;
вместо
$link['lastmod'] = count($timestamps) > 0 ? max($timestamps) : 0; попробуй

Помогло, стало обновляться!!!!!!!!! Ура!!
только при изменении термина пишет ошибку:
Warning: sort() expects parameter 1 to be array, string given в функции xmlsitemap_calculate_changefreq() (строка 1230 в файле /home/***/sites/all/modules/xmlsitemap/xmlsitemap.module).

вот строки xmlsitemap.module 1229-1239

function xmlsitemap_calculate_changefreq($timestamps) {
  sort($timestamps);
  $count = count($timestamps) - 1;
  $diff = 0;
 
  for ($i = 0; $i < $count; $i++) {
    $diff += $timestamps[$i + 1] - $timestamps[$i];
  }
 
  return $count > 0 ? round($diff / $count) : 0;
}

а еще не обновляется 1 термин, я когда своими кривыми руками ползал по базе SQL через PHPmyadmin, то тиснул кнопку "Изменить" в таблице xmlsitemap на этом термине. Пробовал поменять lastmod, сохранил. теперь у него стоит статус override=1, а у всех остальных терминов стоит 0. и теперь этот один не обновляется в файле sitemap.xml не обновляется.
не подскажете, как это вылечить?
ошибка при изменении термина осталась в строке 1230 :(

$link['changefreq'] = $term->tid ? xmlsitemap_calculate_changefreq($timestamps) : 0;
$link['changecount'] = $term->tid && (count($timestamps) > 0) ? count($timestamps) - 1 : 0;

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

Короче, пусть ошибка выскакивает - пофиг, верно?)

надо добавить после
$timestamps = db_query("
SELECT n.changed
FROM {node} n
INNER JOIN {taxonomy_index} ti ON ti.nid = n.nid
WHERE ti.tid = :tid
ORDER BY n.changed DESC
LIMIT 1
", array(':tid' => $tid))->fetchField();
ещё
$timestamp = termlastmod_term_get_timestamps($term);

и поменять
$link['changefreq'] = $term->tid ? xmlsitemap_calculate_changefreq($timestamps) : 0;
$link['changecount'] = $term->tid && (count($timestamps) > 0) ? count($timestamps) - 1 : 0;
на
$link['changefreq'] = $term->tid ? xmlsitemap_calculate_changefreq($timestamp) : 0;
$link['changecount'] = $term->tid && (count($timestamp) > 0) ? count($timestamp) - 1 : 0;

Здравствуйте.

Сейчас все ссылки на скачивание прикрепленного файла имеют разное название в зависимости от имя файла, пример: "file_name.zip"

Как изменить название ссылки на "Download" и вывести рядом размер файла в Drupal 7?

темизируйте поле

Здравствуйте, помните я доставал своими вопросами о том, что One Click Upload не работает? Потом сообщил, что и вовсе не работает загрузка файлов.

Сегодня нашел такую же ситуацию у другого человека.

У меня tmp файл находится в files/default/tmp, а upload_tmp_dir указан в пхп другой. Из-за этого у меня ошибка? Теперь только тех. поддержка хостинга поможет?

еще тут включена опция open_basedir

Теперь только тех. поддержка хостинга поможет?

скорей всего

Нет, решил сам. Кажется open_basedir не работал так, как надо.

upload_tmp_dir /var/www/v-3ххх/data/mod-tmp /tmp

Указал полный путь, т.е. local value, а не master value - сработало - алилуя.
Спасибо. Пошел тестить ocupload.

Затестил, работает, СПАСИБО!!!!!
но вот только обновляется теперь лишь термин, привязанный к ноде. А в словаре есть еще родители + главная страница сайта сделана термином. как родителей и гл. страницу (к ноде не привязанную) обновить?

т.е. в адресе типа http://ogogo.us/epepe/gogo/obzor_buldozera обновляется сама статья obzor_buldozera и термин gogo. ерере остается без изменений ровно как и гл страница сайта с синонимом frontpage.

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

пользуйтесь views

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

Может урок где-нибудь есть по этому?

поискать не пробовали?
http://xandeadx.ru/blog/drupal/2
http://xandeadx.ru/blog/drupal/7
http://xandeadx.ru/blog/drupal/18
http://xandeadx.ru/blog/drupal/71
http://xandeadx.ru/blog/drupal/415

Спасибо :)
У меня ещё вопрос, а что-нибудь страшное случится, если я удалю из базы стандартное меню navigation?

вручную из базы лучше ничего не удалять

А как-то по другому можно сделать?

зачем?

Мешает, всё время перед глазами маячит

сломался поиск на сайте

не знаете, как сделан фильтр на сайте http://drupal-tv.ru

а это ваш сайт?

да

эту я статью видел, 70% она объясняет, по правде мне интересна реализация фильтрации по нажатию на плюсик

и ещё вопрос мучает, там один словарь или несколько? :)

про меня забыли с моими терминами и вьюсами на них :(

Как с помощью Views обрезать текст, чтобы в конце ставилась троеточие?

* в конце добавлялось многоточие

Как с помощью Views обрезать текст, чтобы в конце ставилась троеточие?

включить соответствующую опцию в настройках поля

там один словарь или несколько?

несколько

а можете рассказать по шагам, как вы делали это меню? Начиная от построения и заканчивая фильтрацией по плюсикам?

у меня почти все разделы сайта на вьюхах сделаны. это плохо или нет?

Опережая мой коммент, хочу сказать, что с частью настройки меню разобрался, остаётся вопрос с фильтром по плюсику :)

как переделать страницу термина?
есть словарь, несколько терминов. нужно чтобы страницы каждого термина была оформлена по разному.

нашел taxonomy display, но он на весь словарь распространяется...

Есть значение кастомного поля термина, как получить сам термин (tid, например)? И можно ли, зная id термина, вывести ссылку-алиас на него?

drupal_get_path_alias нагуглил, пардон. По первому вопросу пока непонятно.

а можете рассказать по шагам, как вы делали это меню? Начиная от построения и заканчивая фильтрацией по плюсикам?

построение, фильтрация

у меня почти все разделы сайта на вьюхах сделаны. это плохо или нет?

к чему этот вопрос?

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

http://drupal.org/node/1089656#page-suggestion

Есть значение кастомного поля термина, как получить сам термин (tid, например)?

сделать запрос в базу

Спасибо.
Не знаете как работает Views PHP? В частности как из value code передать переменные в output code?

не знаю

нашел,
simple example that prints "hello world" for Global PHP field
value code: (don't use php delimiters)

$result = " world"; 
//php code
// ...
return $result; 
//variable name can be anything

output code: (Use php delimiters)

hello <?php print $value; ?>
//$value always holds what is returned by value code

Добрый день. Не могли бы вы мне помочь в таком вопросе?
Я делаю листалку для нод (типа prev/next).
Есть категории, и мне нужно чтобы переходя ссылкам (next/prev) в ноде(мы могли листать только те ноды , которые относятся к данной категории, а не все подряд).
вот пример кода
function next_page_link($node){

$next_nid = db_query("
SELECT node.nid FROM {node} as node INNER JOIN {taxonomy_index} as ti ON node.nid = ti.nid
WHERE node.created > :created AND node.type = :type AND node.status = 1
ORDER BY node.created DESC
LIMIT 1",
array(':created' => $node->created,':type' => $node->type,':tid'=>$term->tid))
->fetchObject();

if($next_nid) {
return '/'.drupal_get_path_alias('content/'.$next_nid->nid);
}
else {
return false;
}
}

Вопрос в том что мне нужно в ':tid'=>... передать термин id (тоесть термины которые относятся к данной ноде), я новичок в друпале, просто не знаю как это сделать, как вытащить tid ноды для данного случая.
Благодарю за ответ.

debug($node);

Благодарю за ответ. Но можно пояснить подробнее, для чего нужно использовать данный метод?

для того, чтобы узнать структуры ноды и вытащить из неё tid

Спасибо большое буду пробовать)

<a href="<?php $website=isset($data->_field_data) ? $data->_field_data['nid']['entity']->field_sponsor_website['und'][0]['value'] : NULL; print $website; ?>">Website</a>
код в Views PHP.
все работает, только вот одна ошибка выходит:

Notice: Undefined index: und в функции __lambda_func() (строка 1 в файле /home/adis/open/futsal/sites/all/modules/views_php/plugins/views/views_php_handler_field.inc(202) : runtime-created function).

как решается, незнаете?

решил проблему самостоятельно. надо было сделать так:

$website=isset($data->_field_data['nid']['entity']->field_sponsor_website['und'][0]['value']) ? $data->_field_data['nid']['entity']->field_sponsor_website['und'][0]['value'] : NULL; print $website; ?>

Здраствуйте, мне нужно связать 2 или более словарей, при добавлении ноды. Допустим есть словарь, запчасти разбитый на более подробные внутренние части(Двигатель, АКПП, Кузов) авто и словари автомобили, самолеты, мотоциклы так - же разбитые на марки.
Так вот вопрос, как мне сделать так, чтобы не было сыр бора при выборе например Запчасти --> АКПП не было выбора Самолетов и Мотоциклов а только относящийся словарь Автомобили как связать 2 словаря? C помощью Hierarchical Select можно связать только термины а хотелось бы сделать так же но со словарями, подскажите как это реализовать?
Спасибо.

Подскажите, с помощью чего (моды, настройка views и т.п.) можно реализовать динамический выбор терминов таксономии при создании ноды как, например, на http://start.vn.ua/node/add/advert ?
Насколько я понял, нода используется одна, а вот поля генерируются с учетом предыдущего выбора с помощью AJAX...

@HarryAscent @Станислав http://drupal.org/project/conditional_fields

Спасибо, xandeadx :)

Поставил модуль разобрался с использованием, но есть одна проблемка, при добавлении полей в ноду делаю их обязательными для заполнения, подключаю с помощью условия в Conditional Fields. Начинаю проверять на вывод ошибок если поле не заполнено, заполняю первое поле, вылазиет второе поле(Обязательное для заполнения) связанное с первым но его не трогаю. Создаю ноду ошибок не вылазиет и нода добавляется. :(
Что делать? где искать ошибку?

Спасибо, xandeadx :)

Тоже установил модуль conditional fields, таких проблем как у товарища выше пока не обнаружил, все вроде как грамотно выводится в соответствии с заданными зависимостями, однако есть своего рода проблема:
тестировал на Denver, нода сохраняется со всеми заданными параметрами правильно, но при сохранении и редактировании вылазиют ошибки вида:
Ссылка на ошибки
Да и модуль heretical select при создании ноды с установленной с помощью conditional fields зависимостью для подконтрольного поля выкидывает ошибки вида:
Сделан недопустимый выбор. Пожалуйста, обратитесь к администратору сайта.
хотя при редактировании уже созданной ноды такого эффекта с ошибкой выбора heretical select не наблюдается...
Не подскажете, где может быть загвоздка?

Здравствуйте.

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

Спасибо.

модуль, который расширяет стандартные профили друпала

Profile2

модуль чата

http://drupal.org/project/modules?filters=bs_project_sandbox%3A0&solrsor...

Спасибо за profile2

http://drupal.org/project/modules?filters=bs_project_sandbox%3A0&solrsor...

Спасибо, это я видел. Просто думал что-то использовали для себя.

А какой у Вас стоит модуль комментов?

дефолтный

подскажите, а вывод такой структуры с помощью третьих вьюсов, сделать реально?

<li><img картинка термина 1 /> термин 1 (без ссылки)</li>
	<ul>
	<li>статья 1, на тему термина 1 (ссылка)</li>
	<li>статья 2, на тему термина 1 (ссылка)</li>
	<li>статья 3 на тему терминов 1 и 2 (ссылка)</li>
	</ul>
 
<li><img картинка термина 2 /> термин 2 (без ссылки)</li>
	<ul>
	<li>статья 4, на тему термина 2 (ссылка)</li>
	<li>статья 3 на тему терминов 1 и 2 (ссылка)</li>
	</ul>

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

реально

Так не подскажите как мне решить мою проблему с валидацией в Conditional Fields?

нет

Hello! Помогите, пжл. На странице ноды выводится View ( 3 анонса). Надо исключить из вьюхи анонс этой же ноды. пасиб

добавьте контекстный фильтр по nid с опцией exclude

Спасибо, МУЖИК! Как всегда, помог!!!

Тогда еще 2 вопроса, буду благодарен :)
использую дисплей сьют с 8 полями для вывода содержимого. Как туда вточить кодом без модулей вывод предыдущей и следующей ноды одного термина словаря (несколько уровней).
и как в этот же дисплей впиндюрить кодом сслыки на самые читаемые статьи. Сколько не мучался, так и не вышло. ПХП-фильтр включил, добавляю через эдд код филд. И нифига :(

=\ скорее всего, я просто не умею вставлять код нормально иззп незнания пхп :(

тут образец

Подскажите как заставить url alias у таксономи терм воспринимать "? ="иначе ссылка не ссылается на введенную

что?

Показал на скрине

скрин

403 Forbidden

никак

raz vi tut)

использую дисплей сьют с 8 полями для вывода содержимого. Как туда вточить кодом без модулей вывод предыдущей и следующей ноды одного термина словаря (несколько уровней).
и как в этот же дисплей впиндюрить кодом сслыки на самые читаемые статьи. Сколько не мучался, так и не вышло. ПХП-фильтр включил, добавляю через эдд код филд. И нифига :(

при написании модуля в файле *.install для перевода рекомендуетсья использовать st() вместо t(), а как тогда указать перевод? в перевод интерфейса его нет, такое ощущения что как то в ф-ыи но не могу понять как?

@Гость не знаком с дисплей сьют

@asmdk переводы должны находится в .po файле

ок спс буду смотреть и еще такой вопрос.
в профиле юзера создал поле для загрузки картинок. и тут 2 вопроса:
1. в настройках виджета можно ограничивать зн от 1 до 10 и неограничено, а как сделать например 15,20, ну т е сколько я хочу.
2. Переопределяю страничку юзера через виевс оп пути user/%. Вставил нужные поля, затемищировал все норм. только надо еще для картинок вставить кнопку добавления картинок прямо из просмотра, такие же как и в редактировании на аяксе тчобы работали, и на кажждую картинку повесить кнопку удаления, тоже как в ред профиля на аяксе. есть идеи? я так понимаю можно найти эти формы и вызвать их но никак не могу понять где они))

а как сделать например 15,20

http://api.drupal.org/api/drupal/modules!system!system.api.php/function/hook_form_alter/7

есть идеи?

http://drupal.org/node/751826

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

как прекрепить этот файл к конкретному юзеру в мое поля?

http://xandeadx.ru/blog/drupal/393

как удалить правильно изображение канкр пользоваиеля

unset($user->field_name[$language][$delta]);

можешь их можно просто как то подключить?

попробуйте

спс буду проюывать, и еще последний вопрос(надеюсь) по поводу переводов. нашел у вас тут статью http://xandeadx.ru/blog/drupal/126 про переводы с помощью модуля, только он не подхватывает st() перевод, мне как его вручную в файл добавить потом? или использовать t()? или еще что нить?

так я открыл через poedit только в нем нет полей которые в модули через st() перевод, только те что через t() и как тут быть?

добавьте сами

ок спс думал мб делаю чтото не так... =)

Доброй ночи! Столкнулся с проблемой: как сделать загрузку нескольких файлов с помощью managed_file? В друпале уже такая реализация есть при создании articles(#overlay=node/add/article). Может есть какие дополнительные опции у поля с типом managed_file?? Благодарен за любую помощь.
Прикрепляю картинку, что в результате хочу получить
Скрин

код поля у меня следующий

$form['file'] = array(
 '#type' => 'managed_file',
 '#upload_location' => 'public://',
 '#upload_validators' => array(
 'file_validate_extensions' => array('png bmp zip txt doc docx jpeg jpg rar'),
 'file_validate_size' => array(1*0*2048)),
 );

никак. поля нельзя использовать без сущностей

Как правильно необходимо переименовать стандартную тему Framework на свое название?

При переименовании папки framework, файла framework.info (внутри файла тоже на свое название) и всех префиксов в файлах данной темы с названием framework возникает большое количество ошибок, хотя сайт работает.

никак. поля нельзя использовать без сущностей

Насчет полей я согласен. Но ведь это форма. Как же тогда она реализована в друпале??

Как правильно необходимо переименовать стандартную тему Framework на свое название?

правильно создать подтему

Но ведь это форма. Как же тогда она реализована в друпале?

откройте исходники и посмотрите

откройте исходники и посмотрите

Неужели вы думаете что я не разбирался с исходники, прежде чем написать?! посмотрел, но структура настолько запутанная, что я не в силах разобраться. Потому и прошу профессионалов и людей имеющих опыт работы с друпалом помочь разобраться.

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

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

не сохранялся где? в "этом" словаре это в каком?

Не сохранялся вообще. То есть добавляю я термин, и он, при совпадении имен (с другим термином из этого же словаря, в который я его добавляю), не сохраняется, выдает ошибку типа "термин с таким именем уже существует".

я загрузил в папку pdf файл через IMCE. как мне в ноду вставить ссылку на этот файл?

Не сохранялся вообще

не сохраняется

profit.

я загрузил в папку pdf файл через IMCE. как мне в ноду вставить ссылку на этот файл?

http://htmlbook.ru/html/a

Привет, xandeadx!
Не знаешь, почему в хроме на некоторых сильно html-пятых страницах появляется вот такая хрень (на скриншоте страница http://xandeadx.ru/blog/drupal/335)? Скролл смешается или удваивается. Это только у меня проблема такая?

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

замучилась, если честно, выяснить, что это с ним
а чего иконку перевернул обратно? :(

обновление затёрло старую

(function($) {
$(document).ready(function(){
    $('#menu li').hover(
        function() {
            $(this).find('ul').addClass("newclass") ;
 
        },
        function() {
            $(this).find('ul').removeClass("newclass");        
 
        }
    );
});
})(jQuery);

подскажите как добавить задержку перед добавлением класса ?

(function($) {
$(document).ready(function(){
    $('#menu li').hover(
        setTimeout(function() {
            $(this).find('ul').addClass("newclass") ;
 
        },500);
        function() {
            $(this).find('ul').removeClass("newclass");        
 
        }
    );
});
})(jQuery);

Может я не так понял но что то не выходит

Хочу задействовать Display Modes при выводе нод. Но в node.module в node_show() жестко прописано $nodes = node_view_multiple(array($node->nid => $node), 'full');
Этот злосчастный "full" "отравляет мне всю статистику". Инфу по этому поводу в инете не нашел, хотя очень старался. Остается последний вариант - хакнуть эту строчку, чтобы можно было задействовать Display Modes. Иначе кроме как во Views смысла в них я более не нашел. Чем мне это грозит и может быть Вы подскажете как все-таки указать Drupal-у что вот в данный момент надо выводить данный Display Mode.

Спасибо.

посмотрите display_suite, вроде там был такой функционал

Спасибо за ответ. Но это не то - уже ковырял - не подходит. Объясню коротко: Темы можно на лету переключать. Вот теперь мне надо также переключать, назовем их, "режимы функциональности" в рамках той же темы. Т.е. выводить по разному сами ноды, и блоки. Т.е. тема не меняется, но меняется вариант отображения той же ноды, в зависимости от выбранного вида функциональности.
Если Вы с таким вопросом не сталкивались, то подскажи пожалуйста, как относительно безболезненно хакнуть ядро? Видит Бог, я этого не хочу делать из религиозных и эстетических соображений, но другого выхода я для себя уже не вижу. Хуками эту хрень перехватить не удается. Только перестраивать заново отображение, как сделано это например в модуле Domain View Modes, но мне кажется это еще хуже, чем просто ядро хакнуть.

Код из модуля domain_view_modes

Подскажите как включить кэширование views если используется контекстный фильтр (берется ид термина из урл). Я делаю так: включаю тайм-бейсед кэширование, выставляю по 1 часу для запроса и рендериг контент (впринципе ничего не изменяется если ставлю и не кэшировать), потом в блок-кэш ставлю кешировать пер пейдж. В итоге возвращается пустой вьювс. Может подскажите как правильно?

@Ivan пользуйтесь views

@dencho так и надо делать

2 xandeadx, только проблема в том что когда включаю кэширование ничего не выводиться, отключаю все работает правильно. ладно спс за ответ, буду разбираться в чем проблема.

@dench0, во вьюсе нет контекстного кэширования. Зато оно есть в Panels ;)

Добрый день, не могли бы направить в нужное русло мозги.

Хочу реализовать в виде раскрывающегося меню запросы из базы данных.
Есть 4ре таблицы в MYSQL table1,table2,table3,table4
которые выводятся в контент на отдельных страницах и редактируются/добавляются из формы.
Не могу сделать вывод иерархического меню как здесь , но не через таксономию.
Т.е. в итоге как я понимаю, пункты меню должны выдавать соответствующие запросы к БД:

table1
-запись1
-запись2
table2
-запись1
-записьn
table3 -записьn

Вот код вывода таблицы, сделан по вашему же примеру.
http://pastebin.com/EhfwuZEq

Не могу сделать вывод иерархического меню как здесь , но не через таксономию.

http://xandeadx.ru/blog/php/199

Здравствуйте!
Пытаюсь создать блог последних комментарий примерно следующего шаблона:
<Пользователь> к записи <Название ноды>
Так вот мне надо чтобы ссылка <Название ноды> вела на комментарий который оставил <Пользователь>.
Я уже пробовал добавлять поле название и убирать его из отображения (вывода), а затем добавлять поле ссылкой на комментарий и в "Заменить выводимое полем значение" подставлять шаблон Названия темы. В результате я получаю ссылку с Название темы и ссылка у нее тоже на Название темы, но ни как не на комментарий.
Может подскажете как это можно сделать, если конечно это возможно.
За ранее спасибо.

что такое "блог последних комментарий"?

Ошибся: я хотел написать Блок последних комментариев.

включите дефолтное представление Recent comments

Включил дефолтное представление Recent comments, но не нашел как можно создать поле с названием темы и ссылкой на комментарий в этой теме. Для примера на этом сайте http://berg.orb.ru/ есть блок Свежие комментарии и там реализовано подобным образом.

ничего создавать не нужно, в Recent comments уже всё готово

Видимо я не правильно объяснил, того что хочу.
Как создавать блоки во Views я знаю и дефолтное представление последних комментариев мне не подходит. Я хочу создать свой вид блока. Например

Евгений к записи Самые весенние темы

где - Самые весенние темы является названием темы ноды, а ссылка ведет непосредственно на комментарий который написал данный пользователь.

Rewrite results - Output this field as a link - Link path: comment/[cid]

Rewrite results - Output this field as a link - Link path: comment/[cid]

Данная опция вообще не меняет ссылку, хоть что я туда напишу.
http://i34.fastpic.ru/big/2012/0415/fb/071b5de9b099971abd426907a10ab2fb.png

comment-[cid] как то отличается от comment/[cid], не находите?

comment-[cid] как то отличается от comment/[cid], не находите?

Нахожу, но ситуация с comment/[cid] такая же. Ссылка не меняется.

отключите опции Заменить выводимое поле значением, Создать ссылку на материал

отключите опции Заменить выводимое поле значением, Создать ссылку на материал

Спасибо большое за помощь, помогло. Пришлось только переделать шаблон ссылки на вот этот:
[path]#comment-[cid]