druid képe

Éveken keresztül a hagyományos módon frissítettem a Drupal-t és a modulokat, a Drupal frissítése körülményes és hibalehetőséggel teli kézi módszerrel (file-ok törlése, újak feltöltése, közben figyelni nehogy olyat is töröljünk, ami kell, vagy maradjon, ami nem kell, vannak egyedi file-ok, amiket volt, hogy frissíteni kellett, pl. a settings.php stb), ráadásul ez FTP-n keresztül hosszadalmas volt a sok file miatt, fél óra is akár, most meg 1 perc sincs, csak ennyi:

  1. composer update "drupal/*" --with-all-dependencies
  2. vendor/bin/drush updatedb
  3. vendor/bin/drush cache:rebuild

És egyszerre minden frissítve van.

Igaz a htaccess file-t mindig felülírja, de az a legkevesebb...

1
0
ninja képe

csinálj egy block-ot, abba tedd bele a menüt:

<ul class="menu">
	<li class="leaf"><a href="/eletrajz">Életrajz</a></li>
	<li class="leaf kiemelt"><a href="/versek">Versek</a></li>
</ul>

utána írd bele ezt a CSS-be:

ul.menu li.kiemelt a, ul.menu li.kiemelt a:visited {
	background: red;
}
ul.menu li.kiemelt a:hover {
	background: white;
}

ez nem a legszebb megoldás (nem fogja tudni odaadni neki a drupal az active class-t (megoldod js-ből, vagy írsz egy tpl.php-t a versek oldalnak, amiben odaadod neki)), de az információk hiánya miatt, most nem tudok jobbat mondani.

addClass, mehet bele a versek node-ba:

<?php
drupal_add_js('
$(document).ready(function(){
$(".kiemelt").addClass("active");
});
 
', 'inline');
?>
0
0
Webappz képe

Egy kicsit figyelmetlenül olvastam el a Pathauto leírását. A megoldás triviális.
Részlet a pathauto.modul fájlból:

static $i18n_loaded = false;
static $translations = array();
   if (!$i18n_loaded) {
     $path = drupal_get_path('module', 'pathauto');
     if (is_file($path. '/i18n-ascii.txt')) {
       $translations = parse_ini_file($path. '/i18n-ascii.txt');
     }
     $i18n_loaded = true;
   }
 
$output = strtr($output, $translations);

A Pathauto modul könyvtárában található egy i18n-ascii.example.txt fájl, amely
tartalmazza a különböző egzotikus karakterek.
Jól látszik, hogy a pathauto.modul fájl i18n-ascii.txt néven hivatkozik rá (amennyiben létezik),
ezért nemes egyszerűséggel át kell nevezni az i18n-ascii.example.txt fájlt
i18n-ascii.txt-re (legyen meg az ő akarata).
A segítséget a megoldáshoz a Drupal.org-on találtam.

Webappz

0
0

Páldi Zoltán

marik képe

A smink neve amiről szó van:Amor_azul

A page title modul Readme fálj-ban lévő kódokat szószerint próbálgattam behelyezni a jelzett smink template.php-be.
A K2 sminkben azonnal megtaláltam a helyét addig az Amor Azul -ban ezt nem sikerült.

Ime a kódok, amiket a megfelelő helyére kéne tenni .Addig a page title modul nem funkcionál ameddig a smink template.php-be ez nincs a megfelelő helyen.

Megpróbáltam de azonnal összeomlott az oldal. Csak hibaüzenetet kaptam a servertől.

function _phptemplate_variables($hook, $vars) {
  $vars = array();
  if ($hook == 'page') {
 
    // These are the only important lines
    if (module_exists('page_title')) {
      $vars['head_title'] = page_title_page_get_title();
    }
 
  }
  return $vars;
}
 
  As you can see from the code comment, there are only three important lines
  of code:
 
  if (module_exists('page_title')) {
    $vars['head_title'] = page_title_page_get_title();
  }
0
0
Bálint képe

<?php
//keresési minta:
$pattern=$form_values['search_pattern'];
...
//táblázat fejlécét itt adom meg:
$header=array(...);
//a lekérdezésem:
$query= "SELECT u.uid, u.name, u.mail, v.value FROM users u LEFT JOIN " .
			"(profile_values v, profile_fields f) " .
			"ON (u.uid=v.uid AND v.fid=f.fid) " .
			"WHERE u.name LIKE '%$pattern%' OR u.mail LIKE '%$pattern%' " .
			"OR v.value LIKE '%$pattern%' AND u.uid=v.uid";
$queryResult = db_query($query. tablesort_sql($header));	
 	...
 
while ($object = db_fetch_object($queryResult)) {    		
    	//itt áll össze a táblázat
        ...
}
...
?>

Körülbelül ennyi lenne a releváns kód. De a táblázat jó, meg minden, a fejléc is jól áll össze. A probléma azzal van, mikor rákattintok valamelyik fejléc-feliratra, akkor újratölti az egész oldalt, és nem marad meg a szűrés eredménye, és nem azt rendezi, hanem az egészet. Ha nincs szűrés, nincs is semmi gondom, működik szépen.
Meg persze kipróbáltam simán form nélkül, hogy tudok-e rendezhető táblázatot létrehozni, és úgy ment a dolog...
0
0
zorgoz képe

Ó, kösz. Valóban ott van és már választható is.
Csak az a sok baj vele, hogy a query-t elég kucifántosan gyártja össze

SELECT ... WHERE ... AND
DATE_FORMAT(STR_TO_DATE(node_data_field_outdate.field_outdate_value, '%Y-%m-%dT%T'), '%Y-%m-%d') >= '2008-10-29')
...

És így az, ahol ez a mező NULL, mert örökérvényű hír, nem kerül be. Próbáltam beírni a filterbe egy OR IS NULL-t de nem hatotta meg, amin kellmetlen, de nem meglepő.
Ok, feltettem a Views Or modult is, mert hát azzal majd tudok OR IS NULL-t hozzárakni. OR-t igen, de IS NULL nincs a választható operátorok között a dátum mezőnél (ez szerintem elég komoly hiányosság). Ha meg beírom a mezőbe, akkor abból is a mai dátum lesz :)
((DATE_FORMAT(STR_TO_DATE(node_data_field_outdate.field_outdate_value, '%Y-%m-%dT%T'), '%Y-%m-%d') >= '2008-10-29') OR (DATE_FORMAT(STR_TO_DATE(node_data_field_outdate.field_outdate_value, '%Y-%m-%dT%T'), '%Y-%m-%d') = '2008-10-29'))

Ez fölöttébb szomorú.

A megérzésem szerint két három van:

  1. kibővítem a Date modult
  2. berakom a mezőnek alapértelmezetten a világ végét
  3. vagy nekiállok és írok magamnak egy modult

Valami ötlet, hogy hogyan tovább? Előre is kösz.

0
0

SirZeZe

Balogh Zoltán képe

function encyclopedia_cron() {
  $allObject = db_query("SELECT nid,type FROM {node} WHERE type IN ('affiliate','dog','kennel','membership','organization','person') ORDER BY rand() LIMIT 0,100");
  while ($currentObject = db_fetch_object($allObject)) {
    $node = node_load($currentObject->nid);
    $currentTitle = _encyclopedia_nodetitle($node);
    if($currentTitle <> $node->title) {
      watchdog('catalogue',$node->title.' => '.$currentTitle);
      $node->title = $currentTitle;
      node_save($node);
    }
  }
}

A fenti kód jól működik esetemben, nem kell login a cron-nak, simán felülvágja a rekordot Anonymousként is. Viszont egy sima node_load(), node_save() esetén gyakorlatilag nem fut le túl sok minden. Azt tapasztalom, hogy a drupal nem veszi figyelembe ilyenkor, hogy új reviziót kéne létrehoznia, holott ez van beállítva a tartalom típusnál, valamint nem nagyon futkároznak a modulok hookjai sem. Konkrétan az _encyclopedia_nodetitle($node); sort az auto_nodetitle modulnak kéne meghívnia, de ez is elmarad.

0
0
mooray képe

Sikerült megcímeznem a település nevét egy template_preprocess_node segítségével, valahogy így:

function garland_preprocess_node($vars)
{
	$taxonomy=$vars['node']->taxonomy;
 
	foreach ($taxonomy as $value) {
		if ($value->vid==5) {
		        $telepules=$value->name;
			break;			
			}
	}
 
$vars['content'].=$node->field_iranyitoszam[0]['value']." ".$telepules." ".$field_postacim[0]['value'];
}

Tehát végül is nem a content taxonomy mezőt címeztem meg, hanem konkrétan a taxonomy tömb egy elemét.

A gond csak az, hogy ezzel a módszerrel a sor a tartalom végére kerül. Nem lehet valahogy úgy beszúrni a meglévő tartalom egy adott helyére, hogy ne kelljen újra építeni az egész content tartalmat?

0
0
lili_ képe

case 'admin/build/workflow/actions':
      $help = t('Use this page to set actions to happen when transitions occur. To <a href="@link">configure actions</a>, use the actions module.', array('@link' => url('admin/actions')));
      break;
 
ezt találtam sietve ezzel tudsz valamit kezdeni?
 
kiszedtem a user.modul hook_helpjéből, az oldaladon ha megnézed az "admin/user/roles" oldalt akkor ott van egy súgó szövegrész, és ebben van két link 
 
--"jogosultsági körrel" és a "neveit"
 
 
a case 'admin/user/roles':
      return t('<p>Roles allow you to fine tune the security and administration of Drupal. A role defines a group of users that have certain privileges as defined in 
 
<a ref="@permissions">user permissions</a>./*lehet ez?*/
 
 Examples of roles include: anonymous user, authenticated user, moderator, administrator and so on. In this area you will define the <em>role names</em> of the various roles. To delete a role choose "edit".</p><p>By default, Drupal comes with two user roles:</p>
      <ul>
      <li>Anonymous user: this role is used for users that don\'t have a user account or that are not authenticated.</li>
      <li>Authenticated user: this role is automatically granted to all logged in users.</li>
      </ul>', array('@permissions' => url('admin/user/access')));
0
0

mini