template.php wird bei eigener Theme nicht benutzt
am 25.06.2011 - 17:08 Uhr in
Hallo zusammen,
ich verzweifle langsam und im Forum kann ich keine Antwort zu dem Thema finden.
Ich habe ein eigenes Theme erstellt und möchte nun ein Template "page-expose.tpl.php".
Um das zu realisieren habe ich eine template.php mit nachfolgendem Code erstellt. Das Problem, diese Funktion wird nie
aufgerufen. Da tut sich einfach gar nichts. Kopiere ich das Codesnippet bspw. in das template.php des Seven-Theme gibt
er die echo-Zeile direkt aus.
Weiß jemand Rat?
<?php
/**
* Override or insert variables into the page template.
*/
function meinthemename_preprocess_page(&$vars) {
echo "Funktionsaufruf erfolgt.";
if (isset($vars['node']->type)) { // We don't want to apply this on taxonomy or view pages
// Splice (2) is based on existing default suggestions. Change it if you need to.
array_splice($vars['theme_hook_suggestions'], -1, 0, 'page__'.$vars['node']->type);
// Get the url_alias and make each item part of an array
$url_alias = drupal_get_path_alias($_GET['q']);
$split_url = explode('/', $url_alias);
// Add the full path template pages
// Insert 2nd to last to allow page--node--[nid] to be last
$cumulative_path = '';
foreach ($split_url as $path) {
$cumulative_path .= '__' . $path;
$path_name = 'page' . $cumulative_path;
array_splice($vars['theme_hook_suggestions'], -1, 0, str_replace('-','_',$path_name));
}
// This does just the page name on its own & is considered more specific than the longest path
// (because sometimes those get too long)
// Also we don't want to do this if there were no paths on the URL
// Again, add 2nd to last to preserve page--node--[nid] if we do add it in
if (count($split_url) > 1) {
$page_name = end($split_url);
array_splice($vars['theme_hook_suggestions'], -1, 0, 'page__'.str_replace('-','_',$page_name));
}
}
}
?>- Anmelden oder Registrieren um Kommentare zu schreiben

Steht das wirklich so bei dir
am 25.06.2011 - 17:16 Uhr
Steht das wirklich so bei dir drin???
wie heisst denn Dein theme?
Die Theme heißt natürlich anders...
am 25.06.2011 - 17:51 Uhr
... Das Theme hat den Projektnamen, deshalb habe ich den im Snippet ersetzt durch "meinthemename"
Der Rest steht genauso drin, ansonsten ist die template.php leer.
Versuchs mal, indem Du ?> am
am 25.06.2011 - 18:12 Uhr
Versuchs mal, indem Du
?>am Ende der template.php weglässt.Das wars leider auch nicht...
am 25.06.2011 - 18:24 Uhr
... hab ich probiert, tut sich aber immer leider noch nichts... :o(
Ich hab die Datei in der root der Theme und die tpl-Files in nem Unterordner templates, kanns was damit zu tun haben?
ja, da gehört sie ja auch
am 25.06.2011 - 18:29 Uhr
ja, da gehört sie ja auch nicht hin!
In dem anderen theme, wo es funktioniert, liegt sie sicherlich nicht in einem unterordner ;-)
drupalino schrieb ja, da
am 25.06.2011 - 18:33 Uhr
ja, da gehört sie ja auch nicht hin!
In dem anderen theme, wo es funktioniert, liegt sie sicherlich nicht in einem unterordner ;-)
Hab mal probiert die Dateien alle in die root zu legen und den templates ordner aufzulösen. Leider auch ohne Erfolg. die templates.php wird
nicht benutzt. Die Struktur ist jetzt die gleiche wie bei der Seven-Theme.
cache geleert?
am 25.06.2011 - 18:35 Uhr
cache geleert?
Jepp!
am 25.06.2011 - 18:36 Uhr
cache geleert?
Jepp!
schau Dir mal die apache
am 25.06.2011 - 18:37 Uhr
schau Dir mal die apache error logs an.
wie heisst dein theme? ist da
am 25.06.2011 - 18:39 Uhr
wie heisst dein theme? ist da ein unterstrich drin enthalten (ich hatte mal so ein ähnliches Problem mit unterstrichen)
Da steht nix drin...
am 25.06.2011 - 18:42 Uhr
schau Dir mal die apache error logs an.
... was mit dem Thema zusammenhängt. Letzter Eintrag von 17:36 Uhr "Starting thread..."
sehr komisch, sehr komisch
am 25.06.2011 - 18:43 Uhr
sehr komisch, sehr komisch
Wem sagst du das...
am 25.06.2011 - 18:47 Uhr
sehr komisch, sehr komisch
Wem sagst du das... :o(
aber ansonsten funktioniert
am 25.06.2011 - 18:49 Uhr
aber ansonsten funktioniert dein theme? wie ist der name?
Ansonsten funktioniert das Theme...
am 25.06.2011 - 18:53 Uhr
... Warum brauchst du denn den Namen? Er besteht aus einem Wort ähnlich "cfcms". Nichts berauschendes.