Alapértelmezett törzs mező érték

Qkacz képe

Sziasztok!
Nem vagyok benne biztos, hogy ez smink kérdés, de szeretnék default value-t adni a törzs tartalmakhoz. Egészen pontosan a bevezetőt leválasztó <.!--break--> -et szeretném ha alapból benne lenne a textareában, és nem az ügyfélnek kellene hozzáadnia. (Tinymce-t használok szerkesztőnek)

A legegyszerűbb megoldás érdekelne, ha tudtok pl. olyan szerkesztőt amiben ez alapból benne van, az is jó.

Köszi a segítséget!

Drupal verzió: 
Fórum: 
Nagy Gusztáv képe

Én Wysiwyg modult használok FCK-val, és előszedhető benne egy gomb, amely pont ezt szúrja be a kurzor helyére.

0
0

Nagy Gusztáv

Qkacz képe

Köszi a választ, én is a wysiwyg modult használom, és ismerem a gombot. Azt szeretném valahogy elérni, hogy ne kelljen megnyomni, hanem a 'break' alapból kapjon helyet a textareában :)

Most speciálisan ezt szeretném megjeleníteni, de ha elvonatkoztatunk akkor az a kérdés, hogy a html-ben ismert alapértelmezett űrlap értékeket, hogyan tudnám drupal szinten megvalósítani

<textarea>default value</textarea>
<input type="text" value="default value" />
0
0
pp képe

vagy a form API-t, de ahhoz programozni kell.

pp

0
0
hosszu.kalman képe

Ha a formAPI-t akarod használni, akkor valami ilyesmi mini modult kell írni:
break_body.info

name = Break body
description = Insert break to body
version = VERSION
core = 6.x

break_body.module
/**
 * Implementation of hook_form_alter().
 */
function break_body_form_alter(&$form, $form_state, $form_id) {
  if ($form['#id'] == 'node-form') {
    $form['body_field']['body']['#default_value'] = (isset($form['#node']->body)) ? $form['#node']->body : 'teaser<!--break-->nem teaser';
  }
}

Ez alapból leválasztja a body-t, amit a teaser részhez ír az a teaser lesz, amit meg a body-ba az a teljes nézet. Persze a "teaser" és "nem teaser" részeket ki lehet törölni.

A B verzióhoz nem kell programozni. Felteszed a CCK modult és kiegészíted a tartalomtípust egy text típussal, megadod hogy több soros legyen és a felhasználó választhassa ki a beviteli formát, default value-ba meg beírod a break szöveget. Én ezt ajánlom.

Ez igazából pp válaszának részletezése.

0
0
Qkacz képe

Köszönöm a segítőkész válaszokat!

A CCK modul is jól működik, kár hogy az alapértelmezett mezőket (pl. törzs) nem lehet kiszedni, mert akkor egy mezővel meg lehetne oldani. Mondjuk így nem értem a CCK modul lényegét, mert akkor lenne rá szerintem igazán szükség ha az alapértelmezett mezők helyett másfajtát szeretnénk sok esetben azok megtartása nélkül. Na de ez másik téma,

A modulos verzió apróbb módosításával sikerült megoldanom a problémát. Először kiírattam a body mezőbe a $body_id változót, aztán arra szűrtem (if $body_id = ...), mivel csak egy tartalom típus esetében szeretném így használni.

Köszi még egyszer!

0
0
hosszu.kalman képe

Jól látod a CCK modul lényegét, pont erre való. El tudod tünteti a body-t, mégpedig a tartalomtípus beállításánál ott van egy "Beküldési űrlap beállítások" és ott lehet megadni a title és body mező tulajdonságait. Ha a body címét üresen hagyod - ahogy a magyarázatban le is van írva - akkor nem jelenik meg a body field.

Ha csak egy tartalomtípus esetén szeretnéd a modulos módosítást akkor ne a $body_id-t nézd hanem a $form_id paramétert.

if ($form_id == 'tipusneve_node_form') {
...
0
0
Qkacz képe

Hú tényleg! Köszi szépen nem vettem volna észre, hogyan lehet eltüntetni a body-t! :)
A $form_id meg jogos, én is azt használtam, csak már a body körül forgott az agyam amikor írtam:)

0
0