Присвоить полю значение просчитывающиеся PHP

Раздел форума: 

Вообще, мне нужно в одном поле получить значение другого. Когда я пытался это делать на "тестовом" типе материала с помощью поля Computed, всё работает, но, когда стал переносить на другой материал выдаёт ошибку. 
Точнее: мне нужно получить адрес сайта из поля field_link и посчитать Тиц, PR, наличие в ЯК и DMOZ.

Вот ошибка, которую выдаёт: 

PDOException: SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1: INSERT INTO {field_data_field_link} (entity_type, entity_id, revision_id, bundle, delta, language, field_link_url, field_link_title, field_link_attributes) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4, :db_insert_placeholder_5, :db_insert_placeholder_6, :db_insert_placeholder_7, :db_insert_placeholder_8_rel, :db_insert_placeholder_8_class); Array ( [:db_insert_placeholder_0] => node [:db_insert_placeholder_1] => 120 [:db_insert_placeholder_2] => 120 [:db_insert_placeholder_3] => ad [:db_insert_placeholder_4] => 0 [:db_insert_placeholder_5] => und [:db_insert_placeholder_6] => http://сайтпользователя.ru [:db_insert_placeholder_7] => Перейти на ресурс [:db_insert_placeholder_8_rel] => nofollow [:db_insert_placeholder_8_class] => art-button but ) в функции field_sql_storage_field_storage_write() (строка 448 в файле /home/p/pratru/swap-ad/public_html/modules/field/modules/field_sql_storage/field_sql_storage.module. 

Как это решить не знаю.. видимо конфликт какой 0_0

Хочу попробовать так: 
Присвоивать значение, получаемое php кодом, "по умолчанию". Как можно это реализовать? вроде бы через хуки.. Но в хуках я совсем не разбираюсь 

+ мне как-то нужно получать значение поля field_link..

вот так я получаю значение field_link:

<?php $node=menu_get_object();
if(isset($node->field_link)) {
$b = render(field_view_field('node', $node, 'field_link'));
$entity_field[0]['value'] = $b; //получив адрес сайта из того поля, определяется тиц, pr и тд ?>

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

Добавить комментарий

Войти, используя Loginza Google Account Yandex Mail.ru Vkontakte Facebook
(If you're a human, don't change the following field)
Your first name.
(If you're a human, don't change the following field)
Your first name.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.
Прикрепить
Максимальный размер файла: 128 МБ.
Разрешённые типы файлов: txt doc docx rar zip xls xlsx pdf odf odt jpg jpeg gif png psd rtf.

Не морочтесь с computed

Не морочтесь с computed field, выносите код в отдельный модуль.

Создаем модуль на друпал, быстрый старт

Дальше вам нужно будет добавить изменение поля в ноде, по добавлению:

https://api.drupal.org/api/drupal/modules!node!node.api.php/function/hook_node_insert/7

По изменению

https://api.drupal.org/api/drupal/modules!node!node.api.php/function/hook_node_update/7

Или по расписанию hook_cron().

 

Хорошо, спасибо, я

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

как я вообще это сделал, я не знаю :D

потому что стал пробовать на другом сайте и ничего не получилось, а тут, в этом типе материала, работает 0_о