Pasqualle képe

legaltalanosabb ez a forma: views-view-fields--VIEWNAME.tpl.php

beletennem a "Node: Nid" mezot is a viewba, es valami ilyesmit irnek a templatebe

<?php print "Ha latod ezt a szoveget, akkor sikerult sminkelni a view-t.";?>
 
<?php
  $cim = $fields['field_rovid_cim_value']->content;
  if (empty($cim)) {$cim = 'noname';}
?>
 
<?php print l($cim, 'node/'. $fields['nid']->content) ?>
<br />

ahhoz, hogy mukodjon a template torolnod kell a theme cache-t
admin/build/themes oldalon nyomj egy mentest vagy az admin/settings/performance oldalon egy clear cache-t

a template-tet az aktualis smink konyvtaradba kell tenni

0
0
krisy képe

Googlizás közben megtaláltam a megoldást, gondoltam, felírom ide, hátha valakinek a későbbiekben szüksége lesz még rá:

$form['Advanced_Settings'] = array(
	'#type' => 'fieldset',
	'#title' => t('Advanced settings'),
	'#collapsible' => TRUE,
	'#collapsed' => TRUE,
	);
 
$form['Advenced_Settings']['Id'] = array('#type' => 'textfield','#title' => t('Id'), );

Az első rész hozza létre a fieldset-et (ez a "csiki-csuki"), az alsó sor pedig erre a fieldset-re rak egy textfield-et (így ha össze van csukva a fieldset, akkor nem látszik a mező, nyitásra megjelenik)

0
0
Patuzzi képe

Ez így már egész jó.
Már tudom is szűrni, hogy csak bizonyos tartalom típusoknál jelenjen meg:

  if (arg(0) == 'node' && is_numeric(arg(1))) {
    $node = node_load(array('nid' => arg(1)));
    if ($node->type == "node_example") return TRUE;
  }

Viszont nem tudom, hogy kellene átadni a $node->nid értékét, mitn argumentum.
A view-ban már be van állítva az argumentum fogadása és működik, ha pl. linkről hívom meg.

Úgy biztos megoldható, hogy egy normal blokk body-jában meghívom PHP-vel a view-t, átadva az argumentumot, de hogy lehet átadni, ha blokk-nézetes view-ról van szó, ahol nincs body?

Verzió: Drupal 6

0
0
pp képe

Minek az if-else?

$file_name = preg_replace('/\\W+/','',$_GET['q']);
if(file_exists('files/'. $file_name .'.png')) {
  $file_path=url('files/images/'. $file_name .'.png');
}
else {
  $file_path=url('files/images/alap.png');
}

ezek után megvan a $file_path-ban a megfelelő kép neve, ha nem létezne akkor az alap.png fájlra való hivatkozást fog tartalmazni a változó. Ajánlom még a preg_replace-ban a '' lecserélni '-' és ekkor olyan fájlneveid lesznek, hogy node-1 stb., ami szerintem egy picit szebb. Ha álnevek is kellenek, akkor a $_GET['q'] helyére drupal_get_path_alias($_GET['q']) függvényhívást írj.

pp

0
0
Pasqualle képe

az url-bol a hatodik reszt rakod a szotar valtozoba:

$items['base/rendszer/szotar/szotarlista/lista/edit/%'] = array(
..
'page callback' => 'drupal_get_form',
'page arguments' => array('szotar_edit', 6),
..

function szotar_edit(&$form_state, $szotar) {
'#value' => $szotar['SZOTARID'], // ez jó

tehat ez sem jo, mivel a $szotar az nem tomb.. a szotar_row() fuggveny itt lenyegtelen..

a szotar_edit()-en belul egy SQL select-el betoltod a szotar nevet, vagy egy menu wildcard-ot keszitesz ami a $szotarid-bol $szotar tombot keszit..
http://drupal.org/node/224170 (itt van leirva, csak nagyon bonyolultan magyarazva)

0
0
aboros képe

tipikus template butchering amire készülsz, a gondolatmenet nem rossz amúgy. ;)
a beküldés dátumának és a beküldő nevének megjelenítését tartalom típusonként a sminkbeállításoknál tudod szabályozni. ezzel nincs más dolgod.

a címet én egy előfeldolgozóval szedném ki a template.php -ban a nem story nodeokból.
az én sminkemet playgroundnak hívják és ha ezt teszem a template.php -jába, akkor csak 'story' típusú nodeok esetén jelenik meg a node címe mint page title.
íme:

function playground_preprocess_page($vars) {
	if (isset($vars['node']) && $vars['node']->type && $vars['node']->type != 'story') {
                #ez ugye csak akkor teljesul, ha az adott page egy node, raadasul 'story' típus
		unset($vars['title']);
	}
}
0
0

-
clear: both;

szt képe

ahogy mondtad, de sajna nem történik semmi.
A sminkem bizonyos Marinelli (http://drupal.org/project/marinelli).
A http://api.drupal.org/api/function/theme_node_submitted/6 linken megadott mintakódot is kipróbáltam: szintén semmi változás.
Van egy gyanúm viszont: az eredeti smink node.tpl.php-jában van ez a kódrészlet:

<div class="metanode">
  <p><?php print t('By ') .'<span class="author">'. theme('username', $node).'</span>' . t(' - Posted on ') . '<span class="date">'.format_date($node->created, 'custom', "d F Y").'</span>'; ?></p>
</div> 

Eredetileg én is csupán ezt írtam át.
De ez nem azt jelenti, hogy már az eredeti smink is a "template butchering" méltán szidott módszerével van elkészítve? Azaz én hiába babrálom a template php-t, semmi nem fog történni?
Vagy rosszul értelmezek (újra) valamit?
0
0
fox mulder képe

Buheráljunk! Ha a témaindítót nézem, nem az a gondod, hogy a dátum új sorban van? Mert akkor csak a <br /> elemet kell kivenned. Így néz ki a függvény közepe táján a <li> kiírása:

<?php
...
$output .= '<li>' . str_replace('<br />', '', $item) .'</li>';
...
?>

Vagy ahogy te kérted (a <br/ > elemet lecseréled <br /><span>-ra és a végén lezárod: </span>):
...
$output .= '<li>' . str_replace('<br />', '<br /><span>', $item) .'</span></li>';
...

Ja és "rebuild the theme registry" az admin/build/themes/settings/sminked lap alján.
0
0

Fox Mulder

Sólyom képe

Véletlen vettem észre, mikor egy másik böngészővel akartam megnézni az oldalt, hogy újra ezt a hibaüzenetet adja ki:

403 - Forbidden Error
You are not allowed to access this address.
If the error persists, please contact the website webmaster.
If you are the webmaster of this site please log in to Cpanel and check the Error Logs. You will find the exact reason for this error there.
 
Common reasons for this error are:
 
Incorrect file/directory permissions: Below 644.
In order files to be read by the webserver, their permissions have to be equal or above 644. You can update file permissions with a FTP client or through cPanel's File Manager.
 
Restrictive Apache directives inside .htaccess file.
There are two Apache directives which can cause this error - 'Deny from' and 'Options -Indexes'.

Pedig dolgozok az oldalon. Ha a www.mydomain.hu/user oldalt nézem, már minden rendben van. Belépek és tudok dolgozni tovább..

Erre varrjatok gombot.. Mit rontok el?

Kérlek segítsetek!

0
0

------------------------
Mint a sivatagban víz nélkül, a naptól kiszáradva, remegő hangon, alig hallhatóan kiáltok az életet jelentő nedűért: Az Örök Igazságért!

hajnalbela képe

Működik a dolog, létre is hoztam egy űrlapot, beállítottam az email címeket, de van egy kis gubanc.

Saját szerveren van a lap, win 2003 server R2 + Appserv. A php.iniben be van állítva az SMTP: bereg-szakkepzes.hu. Nem küldi el a formot, visszad egy hibaüzenetet:

warning: mail() [function.mail]: SMTP server response: 550 5.7.1 Unable to relay for kos@gmail.com in C:\AppServ\www\includes\common.inc on line 2127.
warning: mail() [function.mail]: SMTP server response: 550 5.7.1 Unable to relay for hajnalbela@citromail.hu in C:\AppServ\www\includes\common.inc on line 2127.

Mi lehet a gond?

0
0

Üdvözlettel: Hajnal Béla begin_of_the_skype_highlighting     end_of_the_skype_highlighting