Díky aplikačnímu rozhraní API (Application Programming Interface) nemusíte zasahovat do zdrojového kódu Drupalu a tudíž nebudete mít problémy při pozdější aktualizaci. API se hodí zejména při úpravách vzhledu a vývoji vlastních modulů.
Získá odkazy drobečkové navigace pro aktuální stránku.
drupal_get_breadcrumb()
includes/common.inc, line 95
Řetězec obsahující odkazy drobečkové navigace.
Vlastní úprava drobečkové navigace:
<?php // if ($breadcrumb) print $breadcrumb; if ($breadcrumb) { $subtheme_start_page = "<a href=\"/views/news\" title=\"Úvodní stránka novinek\">Novinky</a>"; $crumbs = drupal_get_breadcrumb(); $home_page = array_shift($crumbs); array_unshift($crumbs, $home_page, $subtheme_start_page); print theme_breadcrumb($crumbs); } ?>
Formátuje vnitřní odkaz.
Funkce l správně manipuluje s odkazy, které mohou mít vytvořené aliasy a umožňuje upravovat jejich vlastnosti. Všechny vnitřní odkazy výstupů modulů by měly být generovány touto funkcí.
l($text, $path, $options = array())
includes/common.inc, řádek 1534
Níže jsou uvedena data pro Drupal 5!
$text – text, který bude uzavřen v odkazu
Veškerý text, který může člověk přečíst a má být zobrazen na stránce by měl být zobrazován funkcí t().
$path – cesta odkazu
Může být externí nebo interní:
při zadání úplné cesty bude považována za externí
při zadání pouze cesty např. "admin/content/node" bude považována za interní
v tomto případě musí být systémovou cestou, aby mohl být generován případný alias pomocí funkce url()
$attributes – asociativní pole HTML atributů aplikovaných u elementu odkazu
fragment – vytváří za odkazem "#kotvu" na ID v html zdroji
$query – řetězec přidaný k odkazu za otazníkem (& parametr)
$fragment – identifikátor přidaný k odkazu (# kotva)
$absolute – vynutit absolutní odkaz začínající http:
Užitečné pro odkazy, které budou zobrazovány mimo web, jako například RSS kanály.
$html – podporovat HTML elementy
Hodnota TRUE je např. nutná pro správné zobrazení HTML tagů např. obrázků, jinak se místo obrázku zobrazí v odkazu prostý text (případně HTML entity).
<?php l(t('Home'), '<front>', array('title' => $site_name, 'class' => 'link', 'id' => 'home'), NULL, NULL, FALSE, FALSE); l('<span>' . t('My Node') . '</span>', 'node/1', array('html' => TRUE, 'fragment' => 'my-anchor', 'attributes' => array('title' => t('Hover Desciption')))); ?>
HTML řetězec obsahující odkaz na určenou cestu.
Zjišťuje existenci modulu.
module_exists($module)
$module – název modulu
<?php if(module_exists('themer')) print ' '. themer_body_class(); ?>
Logická hodnota TRUE, pokud je modul nainstalován a povolen.
Překládá řetězce do jazyka stránky nebo určeného jazyka.
Veškerý text, který může člověk přečíst a má být zobrazen na stránce by měl být zobrazován touto funkcí.
t($string, $args = array(), $langcode = NULL)
includes/common.inc, řádek 734
$string – řetězec obsahující anglický text k přeložení.
$args – asociativní pole náhrad vytvořených po překladu. Všechny výskyty každého klíče v tomto poli jsou nahrazeny odpovídající hodnotou.
Klíče se speciálním významem:
$langcode – volitelný kód jazyka překladu odlišný od jazyka stránky
Přeložený řetězec.
Vrací nastylovaný výstup.
<?php print theme('username', $node); ?>
Vrací nastylovanou drobečkovou navigaci.
theme_breadcrumb($breadcrumb)
includes/theme.inc, line 1226
$breadcrumb – pole obsahující odkazy drobečkové navigace
Řetězec obsahující drobečkovou navigaci.
Vlastní úprava drobečkové navigace:
<?php // if ($breadcrumb) print $breadcrumb; if ($breadcrumb) { $subtheme_start_page = "<a href=\"/views/news\" title=\"Úvodní stránka novinek\">Novinky</a>"; $crumbs = drupal_get_breadcrumb(); $home_page = array_shift($crumbs); array_unshift($crumbs, $home_page, $subtheme_start_page); print theme_breadcrumb($crumbs); } ?>
Funkce získá nastavení z aktuálního tématu, která byla zadána v administraci webu.
theme_get_setting($setting_name, $refresh = FALSE))
includes/theme.inc, řádek 900
$setting_name – název nastavení, které má být získáno.
$refresh - zda obnovit nastavení cache.
Hodnota požadovaného nastavení, NULL jestliže nastavení neexistuje.
Zobrazení poslání webu jako meta informace v hlavičce stránky:
<?php $my_description = theme_get_setting('mission', false); if ($my_description) { print '<meta name="description" content="'. $my_description .'" />'; } ?>