sminkben
A linket sminkeld button formára CSS segítségével. Ez egy link, semmi dolga a submittal és az űrlapkezeléssel.
<?php $node->content['body']['#value'] = l( t('Informacio...'),'mymenubase') . $node->content['body']['#value']; ?>
De ennél szebb a kézikönyvben található megoldás, azaz nem a body elejéhez ragasztod a linket, hanem külön tételként veszed fel a $node->content-be, és megadod a #weight értékét (mondjuk -100, és akkor biztos legfelülre kerül).
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Kulcsszó: "maintenance-page"
A smink mappában szerkeszthetsz egy meglévő vagy létrehozhatsz egy új "maintenance-page.tpl.php" fájlt, aminek igény szerint akár a tartalmát akár a kinézetét egyedivé tudod tenni.
Ha egy "base theme"-t használsz mint például a Zen, akkor elképzelhető, hogy már van egy ilyen template fájlod. Ilyenkor érdemes a belőle származtatott alsminket használva felülírni (override) azt.
Hasznos linkek az elinduláshoz:
(1) Drupal API: http://api.drupal.org/api/drupal/files/7
(2) Drupal 7 API: http://api.drupal.org/api/search/7/maintenance-page.tpl.php
(3) Alsmink készítés (kudos: csakistvan): http://drupal.hu/node/15822
A Drupal 7 alapértelmezett karbantartás oldalát itt találod:
http://api.drupal.org/api/drupal/modules%21system%21maintenance-page.tpl...
A "View source" kis fülre klikkelve pedig a forrás kódot is megnézheted anélkül, hogy elvándorolnál a böngésző ablaktól.
Érdemes megnézni, hogy miképp épül fel a szerkezete a "modules/system/maintenance-page.tpl.php" fájlnak, aztán pl. a "themes/bartik/templates/maintenance-page.tpl.php" ill. egy-egy base theme megoldását ezzel kapcsolatban majd ezt továbbgondolva a sajátodat elkészíteni.
Ha most ismerkedsz a Drupal template rendszerével akkor szerintem jó kiindulási pont lehet, ha először csak a sminkoldal stílusát szabod testre CSS segítségével. Persze ez csak egy ötlet.
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Nehéz kérdés
Sajnos a cck-views korlátokkal rendelkezik, melyeket át lehet ugyan lépni, de ahhoz azért programozni kell egy icipicit ;)
Gondolom a csoport neve szerint kéne rendezni, nem pedig a node-id- szerint, mert az egyszerű lenne:
nodereference.module 91. sora környékén van egy ilyen
case 'database columns': $columns = array( 'nid' => array('type' => 'int', 'not null' => TRUE, 'default' => '0'), ); return $columns;
módosítani kéne erre:
case 'database columns': $columns = array( 'nid' => array('type' => 'int', 'not null' => TRUE, 'default' => '0', 'sortable' => TRUE,), ); return $columns;
Ahhoz, hogy név szerint rendezze igen komolyan bele kén nyúlni a modulba. (de majd lehet valaki jól kijavít, hogy nem is mert csak ennyi meg ennyi.) Az ilyen kész ezközöknek pont ez a baja, hogy hogy ha valami olyat kell csinálni, ami átlagos azt pikpak össze lehet rakni, de ami nem azt nem. (és itt én most a cck mező fejlesztéséről és views integrációjáról beszélek;))
pp
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Remek elgondolás,
köszönöm, köszönöm, köszönöm :-)
nekem a logo cseréjét kellett megoldanom a nyelv-váltásnál, mivel a logoban van a site neve és sloganja is, így nyelvenként más logo kell.
aboros javaslata hozta a legegyszerűbb megoldást, leírom a részleteket, hátha valakit kisegít még hasonló feladat megoldásában:
- a page.tpl.php (drupal 6.x)-ba az alábbi kódot tettem:
<div class="logo<?php print $language->language; ?>"> <a href="<?php print $front_page ?>" title="<?php print t('Your slogan goes here!') ?>"> <img src="<?php print $front_page ?>sites/all/themes/..../images/space.gif" alt="<?php print t('Your slogan goes here!') ?>" border="0" width="460px" height="140px" /></a> </div> <!-- logo -->
- tehát egy olyan div-t irattam a logo számára, amelynek a neve vagy logohu vagy logoen pl. magyar vagy angol nyelv esetén. A $language változó object ezért van a kódban a $language->language
a css-ben megformáztam mind a logohu-t mindpedig a logoen-t:
.logohu { background: transparent url('images/logo-hu.png') no-repeat left top; height:140px; width:460px; } .logoen { background: transparent url('images/logo-en.png') no-repeat left top; height:140px; width:460px; }
- a page.tpl.php-ban egy üres gif képet iratok ki azért, hogy az egér rámozgatásakor meg tudjam jeleníteni a honlap slogenjét, s ez a kép van linkként beállítva. A Your slogan goes here! szöveg természetesen belekerül a fordításba,
köszönöm a segítséget
Geva
----- Számítások - Kalkulátorok
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Köszönöm a kérdést
Ugyanis magamnak is megcsináltam 5 perc alatt. Ezt csináltam:
Megkerestem itt, jobb oldalt a Google kereső form forráskódját:
<form id="googlesearch" method="get" action="http://www.google.com/search"> <div class="form-item"><input type="hidden" name="ie" value="UTF-8" /><input type="hidden" name="oe" value="UTF-8" /><label>Drupal.hu Google kereső:<br /> </label><input type="hidden" name="domains" value="drupal.hu" /><input type="hidden" name="sitesearch" value="drupal.hu" /><input type="text" class="form-text" name="q" size="20" maxlength="255" value="" /> <input type="submit" class="form-submit" name="btnG" value="Keresés" /></div> </form>
Majd létrehoztam egy blokkot, full html-el benyomtam a fenti kódot, (az URL-eket, a szöveget módosítva), majd megjelenítettem a blokkot az oldalon.
És megy.
Nagy Gusztáv
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
miért nem a végére teszed a pop -ot?
én úgy csinálnám. és akkor nem zavar be az argumentumok sorrendjébe.
a sallangtalanítást meg a preprocessorba csinálnám, kb:
template.php
function SMINKNEVE_preprocess_page(&$vars) { if (arg(4) == 'pop') { unset($vars['left']); //kiuti a bal sidebart unset($vars['right']); //kiuti a jobb sidebart } }
így. bár most hogy így írom, az jutott eszembe, hogy inkább egy template suggestionnel felülírnám a használatos template -et, kb így:
template.php
function SMINKNEVE_preprocess_page(&$vars) { if (arg(4) == 'pop') { $vars['template_files'] = array('popcontent.tpl.php'); } }
ezután kell egy popcontent.tpl.php, ami kb így néz ki:
<html> <head> </head> <body> <div id="content"><?php print $content; ?></div> </body> </html>
így a pop argumentes oldalaid a popcontent.tpl.php -val kerülnek kiíratásra, amiben meg semmit nem írsz ki (se header, se sidebarok, se footer, sesemmi) csak a $content. bumm.
-
clear: both;
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
valami közös kell legyen a tartalmakban
az, hogy
minden oldalon ami a Tutorialok főmenüből származik.
nem sokat mond nekem. mi a közös ezekben a tartalmakban? mindegyik hordozza a "Tutoralok" taxonomy termet? vagy mind 'tutorial' tartalom típusú node?
ezt pontosítsd ha nem találom el véletlenül. (mind_reader modulom még nagyon dev;)
tegyük fel, hogy a Tutorialok menu a node/42 és minden amit onnan el lehet érni, az vagy 'tutorial' típusú node vagy hordozza a 69 -es term idt.
a blokk láthatósági szabály:
if (arg(0) == 'node' && is_numeric(arg(1))) { if (arg(1) == 42) { return TRUE; } else { $node = node_load(arg(1)); if ($node->type == 'tutorial' || isset($node->taxonomy[69])) { return TRUE; } } else { return FALSE; }
ilyesmi bonyolultabb feltételrendszerek szerinti blokk megjelenítést (és még sok mást is persze) tudsz klikk-klikk módszerrel is legózni a context modullal.
-
clear: both;
- A hozzászóláshoz regisztráció és bejelentkezés szükséges





beteszed a node.tpl-be a
beteszed a node.tpl-be a facebook share kódot, amiben a megosztandó linket lecseréled erre:
Vagyis az egész így néz ki:
<div class="fb-share-button" data-href="http://domain.hu/<? echo $_SERVER["REQUEST_URI"]; ?>" data-layout="button_count" data-size="small" data-mobile-iframe="true"><a class="fb-xfbml-parse-ignore" target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fdevelopers.facebook.com%2Fdocs%2Fplugins%2F&src=sdkpreparse">Megosztás</a></div>Nekem ez működik, ha van hátulütője a fórumtársak korrigálnak.