-
Mobilarena
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
Hát én csak részmegoldásokat találtam, pl. kötőjeleket szóelválasztásnak tekint, mint egyfajta szótöredék: [link]
Van egy ilyen, de ezt őszintén szólva nem értem, miért megoldás, és gáz, hogy belegányol a core modulba: [link]
Itt pedig pont a Fuzzy-ra meg a Trip Search-re hivatkoznak: [link]De basszus, most nézem a Fuzzy Search oldalát, ott épp ezt írják:
"This module provides drupal sites with a fuzzy search engine to allow for broader keyword matches including partial or misspelled keywords."
Akkor mi a kérdés? -
Sk8erPeter
nagyúr
Jaja, én még nem találtam jobbat a Zennél.
Nagyon logikusan strukturált, jó, hogy vannak példák a template.php-ben az alkalmazható hookokra (még kezdőként nagyon nagy hasznát vettem, sokat segített), rendkívül jól dokumentált (minden fájl elején totál egyértelmű magyarázatokkal van tele, hogy mi mire való, melyik változó használható fel, és annak mi is lesz pontosan a tartalma, stb.), Internet Explorer hülyeségeire is gondoltak, könnyen megvalósítható vele a fixed és a fluid layout is, és persze teljesen valid kódot generál.Szótöredékes keresésre? Hmm, jó kérdés.
Itt nem találsz valami ezzel kapcsolatosat (Apache Solr Search Integration)? Az Apache Solr Search Integration a core search modul lecserélésére, a kereséses extra feature-ökkel való kiegészítésére hivatott. -
Sk8erPeter
nagyúr
válasz
PowerBuldog #85 üzenetére
Az éles környezeten pontosan ugyanaz a Drupal van fent?
Vagy ez valami hosting, ahol előretelepített Drupalt használsz? Ott engedélyezik egyáltalán, nincs letiltva valamilyen módon más sminkek használata?
A saját sminkedben definiáltad a megfelelő régiókat (bár ha nincs definiálva, elvileg alapértelmezettnek vesz párat)?
A könyvtárszerkezet megfelelő? Hova teszed fel őket?
Árulj már el egy kicsit több infót, mert így csak találgatni lehet, főleg, hogy semmit nem tudunk a lokális és a tesztkörnyezetedről sem.A saját smink gyártása helyett meg egyébként szerintem stabilabb megoldás pl. egy Zen subtheme használata, azt nagyon jól testreszabhatod (erről beszéltünk fentebb).
-
Sk8erPeter
nagyúr
válasz
PowerBuldog #83 üzenetére
Bár lehet, hogy már megvolt, de töröltél theme registry-t (cache-t a performance oldalon)?
(Melyik theme?) -
Sk8erPeter
nagyúr
-
Sk8erPeter
nagyúr
Szerintem saját sminket írni tök felesleges, túl sok meló, miközben nagyon faszán testreszabható sminkek vannak, amikből könnyű jól működő subtheme-et gyártani (lásd pl. Zen), és legalább valaki már elvégezte helyetted a piszkos melót.
A Zent egyébként azért szeretem, mert már van egy előre elkészített subtheme, aminek a neve "STARTERKIT", amit csak a saját mappájából ki kell ollózni, berakni külön theme-ként, és átírni a STARTERKIT részt a megfelelő fájlokban a saját névre, amit szeretnél adni a subtheme-nek (template.php, theme-settings.php, valamint a STARTERKIT.info.txt fájlt átnevezni a sajatnev.info-ra), és kész vagy.
Még példákat is mutat a template.php-ben a hookokra.
Arról nem is beszélve, hogy az Internet Explorerrel való kompatibilitásra is gondoltak a CSS-fájlokban is, meg választhatsz előre létrehozott CSS-fájlokból, hogy most fixed vagy fluid layoutot szeretnél.
Aztán ezt megfelelően testreszabod.
Na én ezt nem akarnám megcsinálni mind saját melóval, ha már valaki ezt megosztotta. -
Sk8erPeter
nagyúr
Hogy csináltad a Garland subtheme-et? Valahogy így?
Mondjuk én Zen subtheme-et használok, ott minden theme hook faszán működik (amúgy is ajánlott smink a Zen, ha valaki szereti a rugalmasan kezelhető, jól kommentezett theme-eket).
Arra kéne rájönni előbb, mi az oka, hogy nem működnek a subtheme hookjai. -
Sk8erPeter
nagyúr
Nem tom, lehet.
"Annyi a kavarás a subtheme-ben, hogy Views-t használok."
Ezt nem értem. Hogy jön a subtheme-hez a Views module, mi köze a kettőnek egymáshoz?
Vagy most arra célzol, hogy azon az oldalon, ahol meg akarod jeleníteni a jQuery UI-t, ott éppen Views-zal kéred le a tartalmat?
A megfogalmazás így elég zavaros... -
Sk8erPeter
nagyúr
Hát akkor a subtheme-ed valahogy nagyon rosszul strukturált, elképzelhető, hogy ezért nem megy. A subtheme-ben is kellene, hogy tudd használni rendesen a megfelelő theme hookokat.
Ez is közrejátszhat a sikertelenségben.
Ennek a megoldása igazából csak azért érdekes, mert ha ez nem megy, lehet, hogy más modulok helyes működése is kérdéses.
Az elérési út pedig jó... -
Sk8erPeter
nagyúr
Szerintem máshol kellene keresni a lassúság okát. Sokszor szokott az adatbázisszerver sebességével is gond lenni. Ha van hozzáférésetek, vagy tudtok ilyen kérést intézni a rendszergazda felé (és teljesíti is), a query cache-t pl. MySQL esetén szerintem mindenképp érdemes bekapcsolni. Meg van még egy-két trükk, amivel lehet gyorsítani. Pl. a Boost modult tudom ajánlani még, ez a statikus tartalmak megjelenítését jelentősen gyorsítja megfelelő beállítások esetén, mert készít egy helyi példányt, emiatt meg nem kell minden alkalommal adatbázishoz nyúlkálni, lekérni a nem kis méretű tartalmakat, és utána PHP-vel összeállítani a teljes oldalt.
Aztán Siriusb ajánlott még egy tippet korábban a másik topicban, ezt nem próbáltam, így nem tudok róla érdemben nyilatkozni, de azt mondja, nála látványos változást hozott: innodb_flush_log_at_trx_commit = 0.
Meg persze mindenképp érdemes bekapcsolni a JS- és CSS-fájlok tömörítését is (itt a fájlok tartalmának változtatása esetén oda kell figyelni, hogy a cache-elt változatot frissítsétek manuálisan).
Még annyi, hogy az ember sokszor rak fel eszetlenül rengeteg modult (én is néha így teszek, ha próbálgatok, bár tanultam a korábbi hibáimból, én ezt már először csak tesztváltozaton próbálom), amit aztán ki sem használ - ezeket mindenképp érdemes kikapcsolni; minél több modul, annál lassabb lehet az egész. Na meg olyan is elképzelhető, hogy valamelyik modul még fejlesztői stádiumban van, így maradhattak benne feleslegesen lassító tényezők (persze ugyanez a véglegesnél sem kizárt, sőt). -
Sk8erPeter
nagyúr
Ez mondjuk tudtommal csak egy figyelmeztetés, hogy bizonyos esetekben nem feltétlenül működik, nem biztos, hogy ez rád is igaz, amennyiben nem használsz ilyen jellegű modulokat.
Az eredeti duma: "Note that block caching is inactive when modules defining content access restrictions are enabled."
Erre rákeresve találtam pl. ezt, itt azt írják erre:"For example, if organic groups, content access, taxonomy access modules or other modules that restrict access to certain kinds of content are turned on, block caching will be turned off."
Aztán van még ilyen: Menu Access, Nodeaccess, és még itt megtalálod az összes "Content Access Control" kategóriába tartozó modult.
Szerk.:
A lényeg, hogy amennyiben korlátozod az elérést pl. bizonyos szerepkörökre az egyes blokkokra vonatkozóan, akkor nem a cache-elt tartalmat veszi elő, mert ez szereptől függően dinamikusan változhat.
Viszont ezt ajánlom figyelmedbe, ha blokkok cache-elésével kapcsolatos problémád van, hátha megoldja (nem próbáltam). -
Sk8erPeter
nagyúr
Pedig ez az elérési út jó.
Na, de hogy sikerüljön kideríteni a probléma okát, vigyük vissza egy kicsit, először is csekkoljuk, hogy belelép-e egyáltalán az itt említett függvénybe, tehát ezt írd be a template.php-be (szerkeszd a meglévő függvényt, ha már megvan):/**
* Override or insert variables into all templates.
*
* @param $variables
* An array of variables to pass to the theme template.
* @param $hook
* The name of the template being rendered (name of the .tpl.php file.)
*/
function YOURTHEMENAME_preprocess(&$variables, $hook) {
static $testOutputReady = FALSE;
if(empty($testOutputReady)){
drupal_set_message('jquery_ui_get_path(): <pre>' . var_export(jquery_ui_get_path(), TRUE) . '</pre><hr />');
$testOutputReady = TRUE;
}
// ..........
}A YOURTHEMENAME helyén nyilván legyen a saját theme-ed neve.
Most ezzel egyrészt meg tudod nézni, mit ad vissza a jQuery UI path-ra, valamint ellenőrizni tudod, hogy jól írtad-e meg, belelép-e egyáltalán a függvénybe.
Ha kiírja a path-t, akkor majd szólj vissza, mit adott eredményül.Szerk.: most kipróbáltam egy tök kezdetleges teszt-Drupalon (6-os), és ott is jól működik.
Ott is fent van a jQuery Update, a Libraries és a jQuery UI. -
Sk8erPeter
nagyúr
Akkor mutasd meg plíz, hogyan adod hozzá drupal_add_js() segítségével - tehát mi az, ami működik.
Valószínű, hogy valami elérési úttal kapcsolatos probléma lesz.Így próbálja megtalálni a jQuery UI elérési útját: jquery_ui_get_path().
-
Sk8erPeter
nagyúr
Megcsináltad azokat a lépéseket, amik a readme-ben vannak?
Hányas verziójú jQuery UI-t töltötted le hozzá? Hova raktad? Libraries modul fent van? Ezt is érdemes felpakolni.
Valamit lehet, hogy az alábbi lépések közül kihagytál.-- JQUERY UI 1.7 --
The jQuery UI module uses jQuery UI 1.6 because jQuery UI 1.7 requires at least
jQuery 1.3, which is not shipped with Drupal 6. If you absolutely need to move
to jQuery UI 1.7, you can get around this by doing the following:* Download and install the corresponding jQuery Update module from:
http://drupal.org/project/jquery_update
* Download the latest jQuery UI 1.7 release from:
http://code.google.com/p/jquery-ui/downloads/list?q=1.7
* Put the downloaded archive into the directory:
/sites/all/libraries/jquery.ui-1.7.zip
* Extract the archive. This will create the following sub-directory:
/sites/all/libraries/jquery.ui-1.7/
* Rename the sub-directory into "jquery.ui":
/sites/all/libraries/jquery.ui/
so the actual jQuery UI JavaScript files are located in:
/sites/all/libraries/jquery.ui/ui/*.js
* Enable the module at Administer >> Site building >> Modules.
#59:
Nálam bekapcsolt Devel modullal is jól működik.
Szerk.: elvileg a jQuery Update modul nélkül is működnie kell, 1.6-os verzióval. -
Sk8erPeter
nagyúr
"Csak simán beleraktam a template.php-be, semmi cifrázás."
Az említett jquery_ui_add('ui.tabs'); sort úgy, ahogy van, beledobáltad a template.php-be, és még csak függvénybe sem pakoltad?
Hát akkor ezt a megoldást jó gyorsan felejtsd el.Ne is csodálkozz, ha ilyen módon valami nem az elvárt szerint működik.
Használd a Drupalt rendeltetésszerűen, ahogy illik.
Szóval ha a template.php-ben szeretnéd ezt a függvényt meghívni, akkor kotord elő ezt a fájlt, és pakold bele ezt (smink nevét nyilván módosítsd a sajátodra):/**
* Override or insert variables into all templates.
*
* @param $variables
* An array of variables to pass to the theme template.
* @param $hook
* The name of the template being rendered (name of the .tpl.php file.)
*/
function YOURTHEMENAME_preprocess(&$variables, $hook) {
static $jQuery_UI_plugins_included = FALSE;
if (empty($jQuery_UI_plugins_included)) {
jquery_ui_add('ui.tabs');
$jQuery_UI_plugins_included = TRUE;
}
switch ($hook) {
case 'page':
// ....
break;
// ....
}
}Ezt most úgy csináltam meg, hogy minden hook esetén include-olja a jQuery UI plugint.
Ha csak egy adott hooknál kell, akkor értelemszerűen a switch-case-en belülre rakd.
Aztán törölj egy cache-t, és remélhetőleg működni fog (nálam megy). -
Sk8erPeter
nagyúr
Nincs mit!
A template.php-n belül melyik függvényben hívtad meg?
Egyébként még a korábbira visszatérve, vagyis a $head_title változó módosítására: az if($hook == 'page') ellenőrzés szükségessége helyett még egyszerűbb, és még jobban elkülöníthető megoldás, ha a következőt alkalmazod:
/**
* Implements hook_preprocess_page()
*
* @see http://api.drupal.org/api/drupal/developer%21hooks%21core.php/function/hook_preprocess_HOOK/6
*/
function pete_preprocess_page(&$variables) {
// Modifying $head_title variable's value
$variables['head_title'] = 'Lószar (asdasdasdasd)';
}Egyébként úgy van a sorrend, hogy előbb a moduleName_preprocess() fut le, utána a moduleName_preprocess_hook().
A sorrendről bővebben: [Setting up variables for use in a template (preprocess and process functions)].U.i.: minden programozó lusta.
-
Sk8erPeter
nagyúr
Modulok:
Nem rossz, de a hivatalos honlapon meg telepítések száma alapján is lehet rendezni.jQ UI:
Igazad van, jó, hogy pont én linkeltem, nem néztem meg alaposan...Itt van az a rész, ami tömbbé kasztolja, ha pl. valaki úgy hívja meg, ahogy Te is:
// Convert file to an array if it's not one already, to compensate for
// lazy developers. ;)
if (!is_array($files)) {
$files = array($files);
}Szóval Te egy lazy developer vagy.
Amúgy hol hívod meg a függvényt, melyik hookban?
A source-ban egyáltalán nem jelenik meg a UI tabs pluginje? -
Sk8erPeter
nagyúr
Szívesen!
Igen, én is így gondolom, meg felesleges teljesítmény-romlással is járhat, ha egy apró módosításért egy alapvetően kihasználatlan, a célhoz képest túl nagy tudású modult felraksz.
A másik, amit ilyenkor szoktam csinálni, ha tudom, hogy egy modul képes arra, ami nekem kell, de csomó minden mást is csinál, amire nekem egyáltalán nem lesz szükségem: megnézem a kódját, és tulajdonképpen kiemelem a szükséges részt a kódból, vagy csak ötletet lopok belőle, hogy mivel is lehetne szépen megoldani a kérdéses problémát."Ugyanis a jquery_ui_add('ui.tabs'); utasítással nem csinál semmit, csak ha drupal_add_jssel hozzáadom a szükséges fájlt."
Szerintem az a baj, hogy nem tömböt adsz át a függvénynek, nézd meg a függvényt: jquery_ui_add().
Tehát a helyes szintaktika ez:jquery_ui_add( array('ui.tabs') );
===
Szerk.: amúgy most kértem, hogy pár hasznos linket tegyenek be az első hozzászólásba, remélem bekerül (remélhetőleg valaki hasznát veszi a linkeknek).
Ha nektek is lenne pár javaslatotok, hogy mi kerüljön az első hsz.-be, ne fogjátok vissza magatokat! -
Sk8erPeter
nagyúr
Jah, oké, már felfogtam.
Bár már találtál rá modult, leírom a megoldást úgy is, ha saját modulból szeretnéd módosítani. A korábbi, "pete" nevű modulnál és a rendkívül fantáziadús módosított címnél maradva (most ki tudtam próbálni, és működik):
/**
* Implements hook_preprocess()
*
* @see http://api.drupal.org/api/drupal/developer!hooks!core.php/function/hook_preprocess/6
*/
function pete_preprocess(&$variables, $hook) {
if($hook == 'page'){
// itt már össze van pakolva a $variables['head_title'], szóval akár a korábbi értékét is fel tudod használni, hogy csak hozzáfűzz valamit - én most az egészet módosítom erre a fantáziadús címre
$variables['head_title'] = 'Lószar (de különleges cím)';
}
}Az eredménye pedig: MÓDOSÍTOTT $head_title.
Remélem erre gondoltál.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #41 üzenetére
"nekem ez a cck és a views soha sem akart összejönni, így egyedibb oldalak készítésére sem tudtam rávenni"
Akkor innentől kezdve itt van többek közt ez a topic is az ilyesmik megbeszélésére!Amúgy sok szívás után rájöttem, hogy nem úszom meg, hogy igazán belevessem magam a modulfejlesztésbe, azért minden nem oldható meg grafikus felületen, vagy lehet, hogy csak nyakatekert módon és sok modul felrakásával, amikor mondjuk saját modul esetén pár sor kód írásával is meg tudnád oldani, ha tudod, mit és hova kellene írni.
Kicsit a t×köm tele volt a kismillió tutorial olvasgatásával, amíg nem találtam végre átfogó szakirodalmat erről:
6-oshoz: [Pro Drupal Development, 2nd Edition]
7-eshez: [Pro Drupal 7 Development, 3rd Edition]Utóbbit kevésbé olvasgattam, mert inkább 6-oshoz fejlesztettem eddig komolyabban.
-
Sk8erPeter
nagyúr
Akkor ezek szerint most nem volt világos, mit is szerettél volna, a drupal_set_title() ezt csinálja - a köv. képen látható Drupal egy teszt gyanánt használt 6-os Drupal, létrehoztam egy Story content type-ot, Test Story címmel:
EREDETICsak teszt gyanánt most létrehoztam egy "pete" nevű modult, itt módosítom a címet:
/**
* Implements hook_nodeapi()
*/
function pete_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL){
switch($op){
case 'view' :
// var_export_drupal_set_message($node, '$node');
drupal_set_title('Lószar');
break;
}
}Ez pedig a következőt eredményezi: MÓDOSÍTOTT CÍM.
Nem ezt szeretted volna ezek szerint?
-
Sk8erPeter
nagyúr
Nem hook, hanem core-ban lévő függvény segítségével:
drupal_set_title()=====================================
(#36) Speeedfire : amúgy mi a döntés oka, hogy cseréled a Drupalt Yii-alapokra?
-
Sk8erPeter
nagyúr
válasz
Speeedfire #34 üzenetére
Uhh, hát ez tényleg nem kevés. Amúgy mi a t×köm az a "Visszafogó" (checkbox)?
Egyébként az i18n meg még egy csomó minden feleslegesen van akkor engedélyezve, ha úgysem használsz többnyelvűséget."A boost modult, hol olvastad hogy fent van nekem?"
Abból gondoltam, hogy korábban nem túl egyértelműen ezt írtad:
"Fent van, csak nem jó helyen kerestem."
Most ebből elég nehéz lett volna kitalálni, ezt mire mondtad, én azt feltételeztem, a Boost modulra.Na mindegy, most akkor nem jöttünk rá, majd szólj, ha legközelebb is előfordul.
De valószínű, hogy valami hasonló cache-elés miatt van. -
Sk8erPeter
nagyúr
válasz
Sk8erPeter #32 üzenetére
"így az anonim felhasználók még mindig az adatbázisszintű cache-ben tárolt tartalmat látják"
Na, erre olyan hosszú lett a hsz., hogy még rosszul is írtam...
Pont, hogy NEM adatbázisszintű cache-ből szedi a Boost a tartalmat anonim felhasználók esetén, hanem fájlrendszerszintű cache-ből:"The cached files are stored (by default) in the cache/normal/ directory
under your Drupal installation directory.[...]
Once Boost has been installed and enabled, page requests by anonymous
visitors will be cached as static HTML pages in the server's file system.
Periodically (when the Drupal cron runs) stale or expired pages
(i.e. files or pages exceeding the maximum cache lifetime setting)
will be purged, allowing them to be recreated the first time that the
next anonymous visitor requests that page again. If the Cron Crawler
is enabled, the files and pages will be regenerated automatically.New rewrite rules are added to the .htaccess file supplied with Drupal,
directing the web server to try and fulfill page requests by anonymous
visitors first and foremost from the static page cache, and to only pass the
request through to Drupal if the requested page is not cacheable or hasn't yet
been cached." -
Sk8erPeter
nagyúr
válasz
Speeedfire #31 üzenetére
Ez oké, de azért a Drupal hibáztatása és leszarozása előtt talán körül kéne nézni, hátha én vagyok a hibás...
Ahogy igaz ez bármilyen más CMS esetén is (mondjuk Joomlára kevésbé merném ezt mondani, mert az az én szememben egy komolytalan valami), VAGY bármilyen framework vagy más esetén is... A Yii-vel elkészített oldalnál is előfordulhat, hogy hiba esetén valamit Te nézel be, és nem a Yii egy szar...
Főleg, hogy azóta kiderült, hogy mégis fent van nálad a Boost modul...A problémára visszatérve: a Boost úgy működik, hogy a cron lefutása esetén "frissíti" a statikus tartalmakat, így az anonim felhasználók még mindig az adatbázisszintű cache-ben tárolt tartalmat látják - pont ezzel érik el, hogy a Boost gyorsítson az oldalak betöltési idejében. A helpnél látható is a Boost lényege, érdemes elolvasni:
"This module provides static page caching for Drupal 6.x websites. It provides a significant performance increase as well as scalability for sites that receive mostly anonymous traffic. Web pages load very fast from the cache instead of waiting on PHP and Drupal to serve them from the database. If the page is not found in the cache, then the request is passed to Drupal. The built-in crawler makes sure expired content is quickly regenerated to insure fast page loading at all times."Tehát a gond, ami nálad előfordult, abból következik, hogy valószínűleg még nem futott le a cron.php, tehát a cache-elt tartalmat nem frissítette a Boost.
Erre is elolvasható a megoldás a help oldalain (/help/boost/rules):"Case: The website has mostly anonymous visitors and a few content changes every so often. Waiting on cron to run may not be the best solution if you want changes to be available for anonymous visitors immediately. On a website such as this you are taking advantage of the Boost timestamp function to rebuild only pages that have changed at each cron run. This rules setup works outside of that Boost function as it will immediately refresh the cache with the one page that has has changed.
Solution: Download the rules module, unzip it and upload it to sites/all/modules. Goto: (Administer > Site building > Modules > List) to enable Rules, save the changes. Goto: (Administer > Rules > Triggered rules > Add a new rule). Give the new rule a label or name, choose an Event that will trigger the rule from the select list (Content is going to be saved), check mark the box [X] This rule is active and should be evaluated when the associated event occurs. and save the changes. In the next section, choose (Add an action). Use the select list and choose (Clear a page from the boost cache), Next, then Save."
-
Sk8erPeter
nagyúr
válasz
Speeedfire #29 üzenetére
Hát azért nem látsz ilyen menüt, mert az az Administration menu modullal érhető el, hogy külön törölheted a különböző szintű cache-eket, így talán gyorsabb.
"Mindenesetre ez azért elég gáz pl egy nagyobb forgalmú oldalnál.."
Előbb keresd meg nálad a hiba okát, mert nálad van a hiba, most hirtelen nem tudom, mi az. De szerkesztés után az anonim júzernél is módosulnia kellene a tartalomnak, főleg, hogy azt mondod, a Boost modul sincs fent.
Nincs nálad pl. többnyelvűség? Ott pl. elképzelhető olyan, hogy módosítod a tartalmat, de egyelőre fordításra átnézésre submitolod csak, így csak felülvizsgálat után látszik, vagy mittudomén.
Mindenesetre írj már kicsit többet, hogy rájöjjünk a hibára, mert nulla infó birtokában nehéz. -
Sk8erPeter
nagyúr
válasz
Speeedfire #27 üzenetére
Boost modult nem raktad fel? Az elég durván kessel, és NEM csak a JS- és CSS-fájlokat.
Egyébként előtte a cache-törlés után lett jó?
Szerk.: ja, és akkor rosszul tudod, mert a Drupal nem csak a CSS- és JS-fájlokat cache-eli, hanem a lehető legtöbb dolgot, amit lehet; külön modulbeállításoktól is függ akár, pl. blokkok esetében be lehet állítani, milyen szintű cache-elés legyen, lásd hook_block()-nál a cache részt.
Amúgy ha felrakod az Administration menu modult, ott látható, hogy a "Flush all caches"-nél miket sorol fel: Administration menu, Cache tables, Menu, Page requisites, Theme registry.Szóval Drupal erősen épít a cache-re a gyorsaság érdekében.
-
Sk8erPeter
nagyúr
Igen.
Az egyébként is szinte kötelező modul 6-oshoz (7-esnél pedig már core része! - ez is bizonyítja, hogy nem kicsit hasznos), amennyiben már képkezelgetés is szóba kerül. Admin-felületen összekattintgatva készíthetsz olyan mintákat, amik segítségével automatikusan átméreteződnek a képeid, vagy elforgatja, kivágja őket, amikor legenerálod, stb. Nagyon hasznos modul.Még saját hook is tartozik hozzá, így adott modul saját ImageCache presetet definiálhat (már próbáltam, nagyon gyorsan meg lehet írni ilyet, pár sor, nézhetsz rá példát pl. az Ubercartban, ha komolyabban érdekel).
Pl. meg tudod csinálni vele, hogy egy kicsinyített, adott méretre korlátozott kép jelenjen meg, ami linkel a nagyobb képre, ami rákattintásra Lightbox-vásznon jelenik meg.
Ha azt szeretnéd, hogy a Lightbox2-vásznon az eredeti, teljes méretű kép jelenjen meg, készíts olyan ImageCache-presetet, ami igazából nem csinál semmit, tehát marad a 100%-os képarány. Meg legyen egy, ami a kicsinyített változatot jeleníti meg.
Ugyanilyen az említett "Lightbox2: product_list->product_full", itt a product_list egy preset, ami a kicsinyített változatot jeleníti meg, ez linkel a teljes méretű képre. -
Sk8erPeter
nagyúr
válasz
Sk8erPeter #10 üzenetére
Ehh, basszus, az a baj, hogy a sima "Lightbox2 iframe"-et alkalmaztad... Én az előbb azt próbáltam, hogy pl. "Lightbox2 iframe: product_list->node_page" - ekkor a product_list ImageCache szerinti kép linkel a node oldalára, így a Lightbox-vásznon a node oldala jelenik meg.
DE a sima "Lightbox2 iframe" esetén NEM úgy működik, ahogy szeretnéd: ekkor nálam is a fájl neve jelenik meg, és az linkel simán a képre. -
Sk8erPeter
nagyúr
Pedig most a kedvedért felraktam a Lightbox2 modult, és nálam működik, átalakítja képpé.
Vegyünk egy példát, végre kicsit konkretizálva:
1.) Először Generic files formátumban: KÉP
2.) Aztán átalakítva: Lightbox2: product_list->product_full formátumra (nálam van két ilyen ImageCache-preset, Ubercart-modulból): KÉP
3.) Ezután Update, és az eredmény: KÉPMást ezenkívül nem is állítottam, tehát nem pipálgattam azokat, amiket említettél.
Szerk.: ja, és a Lightbox2-vásznon jelenik meg az eredmény (mondjuk a Views admin-felületén pont nem, hanem csak ahol a végleges eredményt megmutatom).
Tehát a product_list szerinti ImageCache-preset szerint, kicsinyítve jelenik meg a kép, aztán rákattintva a Lightbox-vásznon már a product_full preset szerint, nagyobb méretben jelenik meg.
Most kipróbáltam, az iframe-mel is a kép jelenik meg... -
Sk8erPeter
nagyúr
Na, akkor én leszek a második halottidéző.
A válasz pedig röviden az, hogy mindez szerencsére admin-felületen is elintézhető: a megfelelő view-nál a "Fields" résznél kattints az ImageField meződ nevére, ekkor megjelennek az ehhez tartozó beállítások - itt görgess le egészen a legaljáig, a "Format" részhez, itt valószínűleg nálad jelenleg a "Generic files" van beállítva. Ezt változtasd meg úgy, hogy a Lightbox-hoz tartozó formátum jelenjen meg - remélem van is ilyen! Colorbox-nál rengeteg formátumot be lehet állítani, (nekem ezzel van tapasztalatom), így a kép kattintásra egyből a Colorbox-vásznon jelenik meg, plusz szépen együttműködik az ImageCache modullal (ami szerintem kötelező darab). A Colorbox-ot egyébként is nagyon tudom ajánlani, szépen testreszabható. De remélem, Lightbox-szal is meg tudod oldani.
Új hozzászólás Aktív témák
Hirdetés
- Medence topik
- Nyíregyháza és környéke adok-veszek-beszélgetek
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Ubiquiti hálózati eszközök
- Vicces képek
- One otthoni szolgáltatások (TV, internet, telefon)
- iPhone topik
- Ingatlanos topic!
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- További aktív témák...
- Easun iSolar SMW 11kW Twin Hibrid inverter // Dupla MPPT // BMS // WiFi
- GAMER PC : RYZEN 7 5700G/// 32 GB DDR4 /// RX 6700 XT 12 GB /// 512 GB NVME
- GAMER MSI LAPTOP : 15,6" 144 HZ /// i5 12450H /// 16GB DDR4/// RTX 4050 6GB/// 1TB NVME
- Manfrotto 055 magnézium fotó-videófej Q5 gyorskioldóval
- Sony ECM-W2BT
- BESZÁMÍTÁS! Intel Core i9 9900KF 8 mag 16 szál processzor garanciával hibátlan működéssel
- BESZÁMÍTÁS! ASRock B250 i5 7400 16GB DDR4 512GB SSD GTX 1660 SUPER 6GB Rampage Everest 500W
- ÁRGARANCIA! Épített KomPhone Ryzen 7 5800X 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Bomba ár! Lenovo ThinkPad X250 - i5-5GEN I 8GB I 128GB SSD I 12,5" HD I Cam I W10 I Garancia!
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest