Node mezők elérése hook-ból D7 ben

Schmidt Attila képe

Sziasztok,

létrehoztam egy modult, hogy új node esetén tudjak még egyéb feladatokat php-ben elvégezni.

A modult bekapcsoltam, működik, elkapja az új node rögzítését a node_insert segítségével.

Problémám azokkal az új tartamomnak a mezőivel akadt, amit a felhasználó nem ad meg (üresen hagy, mert nem is kötelező). Ha a tartalom beküldése űrlapon kitöltöm ezeket a mezőket, akkor nincs probléma.

Így kérdezem le a node mezők értékét:

$node->field_telefon[$node->language][0]['value']

Ha a mező üres, akkor ezt a hibaüzenetet kapom:

Notice: Undefined offset: 0 ujnode_node_insert() függvényben .module 55 sor).

Erre mi a jó megoldás?

ganyecz képe

if (isset($node->field_telefon[$node->language][0]['value'])) {
  ...
}

... vagy ...

if (!empty($node->field_telefon[$node->language][0]['value'])) {
  ...
}

... vagy valahol a settings.php-ban ...

ini_set('error_reporting', E_ALL & ~E_NOTICE);
0
0
Schmidt Attila képe

köszi a választ, a !empty-s variáció működött, azt hittem megúszom a kódolást, hogy van valami egyszerűbb megoldás amit én nem ismerek.

0
0
aries képe

A PHP hibajelzési módját kell egy szinttel „feljebb” kapcsolni. http://drupal.org/node/308635

0
0