-
Fototrend
Ajánlott szakirodalmak a teljesség igénye nélkül (a lista még bővülhet):
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
... és ím' Sk8erPeter ama kürt hívószanának hallatán jövé' vala, ama nemes szándéktól vezérelvén, hogy bajtársát mielőbb igyekezzék kisegíteni ama nehéz időkből.
Szóval valóban NAGYON rút az a megoldás.
Most olyan megoldásokat mondok, amik elsőre eszembe jutnak (lehet még több is):
1.) /contact elérési út helyett másik használata (pl. /contact-us), saját statikus tartalom belerakása egy adott node-ba - de gondolom Te szeretnéd inkább mégis ezt az elérési utat használni. Bár mégis ez lenne a lehető legegyszerűbb.
2.) Contact modul kikapcsolása, saját node létrehozása a statikus tartalommal, ennek beállítása a /contact elérési útra - nem olyan jó megoldás, mert ütközés van, ha később mégis be akarod kapcsolni a Contact modult.
3.) page-contact.tpl.php módosítása; a következő sor kikommentezése (Zen esetén):
<?php print $content; ?>
és ennek lecserélése a saját, statikus tartalomra, tehát így:
<div id="content-area">
<?php print $content; ?>
</div>HELYETT
<div id="content-area">
<?php
// print $content;
?>
asdlkjasdlkasjdlkasjdklasjd
</div>- szintén NEM túl szép megoldás.
4.) Modulban - mindenképp hozz létre egyet, úgyis hasznát fogod még venni!
Mutatok egy példát (úgy tudom, 6-ost használsz!):
A modult kiegészítem egy általam írt függvénnyel, aminek szerintem debuggolásnál még hasznát veheted: var_export_drupal_set_message() - ez tulajdonképpen a keveréke a var_export() és drupal_set_message() függvényeknek. Így könnyen kiírathatod a változók értékeit, ott mutatja, ahol a státuszüzeneteket. Mutatok is a használatára példát: kiíratom a $form_id változó értékét. Egy-két helyen kommentként benne hagytam egyéb példákat, amiket felhasználhatsz debuggolás céljára.
Elérési út (ide pakold a modult!!):
sites/all/modules/modSiriusbEzenbelül a két fő fájl, ami szükséges:
==================================================
modSiriusb.info
; $Id$
name = "Siriusb - Test module"
description = "Test Module by Siriusb"
package = "Siriusb"
core = "6.x"
php = 5.2==================================================
modSiriusb.module
<?php
// $Id$
/**
* @file
* Siriusb's test module.
*/
define('SIRIUSB_MODULE_MACHINE_NAME', 'modSiriusb');
/**
* Sets a Drupal message which outputs a parsable string representation of a variable
*
* @param mixed $var The variable of which we would like to output a parsable string representation
* @param string $text The message to output
* @param string $type The type of the message
* - 'status'
* - 'warning'
* - 'error'
*
* @see http://php.net/manual/en/function.var-export.php
* @see http://api.drupal.org/api/drupal/includes%21bootstrap.inc/function/drupal_set_message/6
*/
function var_export_drupal_set_message($var, $text, $type = 'status') {
// $type: e.g. 'status'
drupal_set_message($text . ': <pre>' . var_export($var, TRUE) . '</pre><hr />', $type);
}
/**
* Implementation of hook_form_alter()
*/
function modSiriusb_form_alter(&$form, &$form_state, $form_id) {
// var_export_drupal_set_message(__FUNCTION__, 'function');
// teszt célból kiírjuk a $form_id-t --> csak debug-célra, használat után ELTÜNTETNI!
var_export_drupal_set_message($form_id, '$form_id');
}
/**
* Implementation of hook_form_FORM_ID_alter()
*/
function modSiriusb_form_contact_mail_page_alter(&$form, &$form_state){
// var_export_drupal_set_message(__FUNCTION__, 'function');
// var_export_drupal_set_message($form, '$form...');
// var_export_drupal_set_message($form_state, '$form_state...');
$form['#after_build'][] = 'modSiriusb_form_contact_mail_page_alter_after_build';
}
function modSiriusb_form_contact_mail_page_alter_after_build(&$form, &$form_state) {
// eltüntetjük az eredeti formot
unset($form);
// új tartalmat teszünk bele a $form változóba
$form['contact_info'] = array(
'#value' => '<div>Ide jön a saját tartalmad!</div>',
);
return $form;
}Az érdekesség az, hogy csak az #after_build függvényben eltüntetve működik úgy, ahogy akarjuk most (eltüntetni, majd felülbírálni a contact formot).
A modSiriusb_form_contact_mail_page_alter() függvényben viszont plusz esetleges saját mezőket is lehet hozzáadni (meg persze a modSiriusb_form_contact_mail_page_alter_after_build() függvényben is).
Fontos tudni, hogy az #after_build függvényekben vissza kell térni a $form változóval.=====================================================
Ettől függetlenül talán még mindig az tűnik a legkevésbé erőforrásigényesnek, ha saját node-ot létrehozol, és ezt beállítod pl. a /contact-us címre. A Contact modult meg addig kikapcsolhatod, amíg nincs szükséged rá.
Remélem segítettem!
Sk8erPeter
Új hozzászólás Aktív témák
- Android másképp: Lineage OS és társai
- NVIDIA GeForce RTX 4060 / 4070 S/Ti/TiS (AD104/103)
- OnePlus 8T – fazonigazítás
- Kerékpárosok, bringások ide!
- Kutya topik
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Toyota topik
- iPhone topik
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Milyen notebookot vegyek?
- További aktív témák...
- Bomba ár! Asus VivoBook X412F - i5-8GEN I 8GB I 256GB SSD I 14" FHD I HDMI I Cam I W11 I Garancia!
- Bomba ár! HP ProBook 650 G5 - i7-8GEN I 8GB I 256GB SSD I 15,6" FHD I Cam I W11 I Garancia!
- Bomba ár! Lenovo ThinkPad L380 - i5-8GEN I 8GB I 256SSD I 13,3" FHD Touch I Cam I W11 I Gari!
- Bomba ár! Asus VivoBook S410U - i5-8GEN I 8GB I 256GB SSD I 14" FHD I HDMI I Cam I W11 I Garancia!
- Bomba ár! HP ProBook 450 G3 - i7-6G I 8GB I 256GB SSD I HDMI I 15,6" FHD I Cam I W10 I Gar!
Állásajánlatok
Cég: Alpha Laptopszerviz Kft.
Város: Pécs
Cég: Ozeki Kft.
Város: Debrecen