Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

Display Suite custom Layout (footer outside of the wrapper div)

Eingetragen von Globetrotter (19)
am 29.03.2014 - 20:45 Uhr in
  • Module
  • Drupal 7.x oder neuer

Hallo zusammen

Ich versuche gerade ein eigenes Layout für Display Suite zu generieren das zwingt aber meine Installation jedes mal in die Knie.
Vorne weg ich bin kein php master ... verstehe gerade mal so viel wie man mit HTML/CSS Kenntnissen aus dem Code herauserkennen kann und ansatzweise interpretieren.

Ich hab mir das "ds_2col_stacked_fluid" aus dem "ds" Ordner raus kopiert und den footer nach ausserhalb des " layout_wrapper-div's" verschoben, bin nicht sicher ob drupal das nicht mag oder ob das Problem bei der .inc Datei liegt?

Kan mir da jemand weiter helfen?

Bei der ganzen Aktion gehts darum das ich im footer meines teasers, social-media links platziert habe und da das ganze div als link zum Inhalt funktioniert gibts da ein Problem, und zwar wen immer jemand ein "share-bottom" druckt dan wird er auch gleichzeitig zum Inhalt weitergeleitet (onclick -> node) daher wäre das super wen ich den footer ausserhalb platzieren könnte.

Sollte es ev. eine noch bessere Lösung geben wäre ich natürlich auch Glücklich!

Dies ist das tpl.php (original) ich hab dan die 4 footer Zeilen auserhalb des layout_wrapper divs platziert und die .inc datei zusammen geschnippselt ...

<?php

/**
* @file
* Display Suite fluid 2 column stacked template.
*/

  // Add sidebar classes so that we can apply the correct width in css.
 
if (($left && !$right) || ($right && !$left)) {
   
$classes .= ' group-one-column';
  }
?>

<<?php print $layout_wrapper; print $layout_attributes; ?> class="ds-2col-stacked-fluid <?php print $classes;?> clearfix">

  <?php if (isset($title_suffix['contextual_links'])): ?>
  <?php print render($title_suffix['contextual_links']); ?>
  <?php endif; ?>

  <<?php print $header_wrapper ?> class="group-header<?php print $header_classes; ?>">
    <?php print $header; ?>
  </<?php print $header_wrapper ?>>

  <?php if ($left): ?>
    <<?php print $left_wrapper ?> class="group-left<?php print $left_classes; ?>">
      <?php print $left; ?>
    </<?php print $left_wrapper ?>>
  <?php endif; ?>

  <?php if ($right): ?>
    <<?php print $right_wrapper ?> class="group-right<?php print $right_classes; ?>">
      <?php print $right; ?>
    </<?php print $right_wrapper ?>>
  <?php endif; ?>

  <<?php print $footer_wrapper ?> class="group-footer<?php print $footer_classes; ?>">
    <?php print $footer; ?>
  </<?php print $footer_wrapper ?>>

</<?php print $layout_wrapper ?>>

<?php if (!empty($drupal_render_children)): ?>
  <?php print $drupal_render_children ?>
<?php endif; ?>

.inc Datei

<?php
<?php
function ds_2col_stacked_fluid_ex_footer() {
  return array(
   
'label' => t('2col stacked fluid ex footer'),
   
'regions' => array(
     
'header' => t('header'),
     
'left' => t('Left'),
     
'right' => t('Right'),
     
'footer' => t('footer'),
    ),
   
// Add this line if there is a default css file.
   
'css' => TRUE,
   
// Add this line if you're using DS 2.x for icon preview
   
'image' => TRUE,
  );
}
?>

‹ TinyMCE 4.0.21 und Wysiwyg Display Suite custom Layout (footer outside of the wrapper div) ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Niemand keine Idee?

Eingetragen von Globetrotter (19)
am 02.04.2014 - 07:46 Uhr

Niemand keine Idee?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Die Änderungen im .inc File

Eingetragen von landvogt512 (89)
am 02.04.2014 - 08:55 Uhr

Die Änderungen im .inc File sind nicht notwendig. Was ich hier sehe werden lediglich die Regionen und andere Parameter definiert. Deine Änderungen im tpl.php file sollten ausreichend sein. Überschreibst du das File oder verwendest du eine Kopie in dem templates Verzeichnis deines Themes?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Vielen Dank fur die

Eingetragen von Globetrotter (19)
am 02.04.2014 - 09:57 Uhr

--

  • Anmelden oder Registrieren um Kommentare zu schreiben

Vielen Dank fur die

Eingetragen von Globetrotter (19)
am 02.04.2014 - 09:56 Uhr

Vielen Dank fur die Aufmerksamkeit

Ich habe das neue layout in ...meinTheme/ds _layouts, wie es in der doku beschrieben wird.
Das tpl.php da oben ist das original, die version die ich in meinem Verzeichniss habe ist manipuliert ... wie gesagt den footer div habe ich auserhalb des layout_wrappers plaziert.
Wen ich drupal dan starte bekomme ich einen error....

dan ist noch an zu merken das im original Layouts Verzeichniss des DS keine .inc fils vorhanden sind ich habe dieses veil von wo anders her kopiert und den header&footer bereich manuell eingefuegt, das war nur n'rechts/links layout, natuerlich auch noch die namen des layouts geandert usw.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Sorry habe gedacht du

Eingetragen von landvogt512 (89)
am 02.04.2014 - 10:21 Uhr

Sorry habe gedacht du mainpulierst einfach die tpl.php im modul-Verzeichnis (solltest du eh nicht).
Welche Fehlermeldung kommt denn?

Im Prinzip ist das eh sehr simpel:
die tpl.php Datei geht in ein Verzeichnis "ds_layouts" in den root deines Themes-Ordners
und die .inc Datei auch - hier gibts Beispiele wie die .inc aussehen muß: https://drupal.org/node/1098068 - in der .inc definierts du nur deine Regionen.

Passt die Syntax der .tpl.php?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das mit dem simpel hab ich

Eingetragen von Globetrotter (19)
am 02.04.2014 - 10:41 Uhr

Das mit dem simpel hab ich mir anfangs auch gedacht ... und warscheinlich ist es das auch, muss wider mal irgendwo was kleines sein.

Mal vorne weg ... denkst du das wirklich moeglich ist einen teil des codes auserhalb des layout_wrapper div's zu platzieren? Ev. ligt genau da schon das problem das DS das nicht akzeptiert...?

Ansonsten hier mal den genauen code wie er im meinTheme/ds_layouts liegt...

<?php

/**
* @file
* Display Suite fluid 2 column stacked template.
*/

  // Add sidebar classes so that we can apply the correct width in css.
 
if (($left && !$right) || ($right && !$left)) {
   
$classes .= ' group-one-column';
  }
?>

<<?php print $layout_wrapper; print $layout_attributes; ?> class="ds-2col-stacked-fluid <?php print $classes;?> clearfix">

  <?php if (isset($title_suffix['contextual_links'])): ?>
  <?php print render($title_suffix['contextual_links']); ?>
  <?php endif; ?>

  <<?php print $header_wrapper ?> class="group-header<?php print $header_classes; ?>">
    <?php print $header; ?>
  </<?php print $header_wrapper ?>>

  <?php if ($left): ?>
    <<?php print $left_wrapper ?> class="group-left<?php print $left_classes; ?>">
      <?php print $left; ?>
    </<?php print $left_wrapper ?>>
  <?php endif; ?>

  <?php if ($right): ?>
    <<?php print $right_wrapper ?> class="group-right<?php print $right_classes; ?>">
      <?php print $right; ?>
    </<?php print $right_wrapper ?>>
  <?php endif; ?>

</<?php print $layout_wrapper ?>>

<<?php print $footer_wrapper ?> class="group-footer<?php print $footer_classes; ?>">
    <?php print $footer; ?>
  </<?php print $footer_wrapper ?>>
 
<?php if (!empty($drupal_render_children)): ?>
  <?php print $drupal_render_children ?>
<?php endif; ?>

und...

<?php
function ds_2col_stacked_fluid_ex_footer() {
  return array(
    'label' => t('2col stacked fluid ex footer'),
    'regions' => array(
      'header' => t('header'),
      'left' => t('Left'),
      'right' => t('Right'),
      'footer' => t('footer'),
    ),
    // Add this line if there is a default css file.
    'css' => TRUE,
    // Add this line if you're using DS 2.x for icon preview
    'image' => TRUE,
  );
}

Fatal error: Call to undefined function ds_ds.ds_fields_info() in ...\meinTheme\sites\all\modules\ds\includes\ds.registry.inc on line 570

  • Anmelden oder Registrieren um Kommentare zu schreiben

... noch angemerkt wen ich

Eingetragen von Globetrotter (19)
am 02.04.2014 - 10:45 Uhr

... noch angemerkt wen ich die 4 zeilen wider in den layout_wrapper div rein kopiere habe ich immer noch das selbe problem also an dem sollte es erstmal nicht liegen ... der error kommt ja auch nicht aus meinem Theme directory sondern aus dem "modules\ds" ...

  • Anmelden oder Registrieren um Kommentare zu schreiben

In der linie 570 der

Eingetragen von Globetrotter (19)
am 02.04.2014 - 10:49 Uhr

In der linie 570 der ds.registry.inc ist folgender code:

$layouts[$values->name] = $function();

der ganze block (linie 565-573) ist...

function _ds_layouts_scan_theme($theme, &$layouts) {
  $theme_layouts = file_scan_directory(drupal_get_path('theme', $theme) . '/ds_layouts', '/inc$/');
  foreach ($theme_layouts as $file => $values) {
    include_once(DRUPAL_ROOT . '/' . $file);
    $function = 'ds_' . $values->name;
    $layouts[$values->name] = $function();
    $layouts[$values->name]['path'] = str_replace('/' . $values->filename, '', $file);
  }
}

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi ich habe das gerade mit

Eingetragen von landvogt512 (89)
am 02.04.2014 - 11:20 Uhr

Hi ich habe das gerade mit deinen Codestücken getestet. Da gibts kein Problem.

Hast du die Dateien richtig benannt - die .inc - Datei muß mit Unterstrichen geschrieben sein. s.Screenshot
und in der .inc - Datei steht noch ein ds_ Prefix im Namen der Funktion.

AnhangGröße
Unbenannt-1.png 54.72 KB
  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich denke schon das ich die

Eingetragen von Globetrotter (19)
am 02.04.2014 - 11:37 Uhr

Ich denke schon das ich die richtig benannt habe...

Ortner Name im meinTheme/ds_layouts Verzeichniss

"ds_2col_stacked_fluid_ex_footer"

Dateien im Ortner:

ds_2col_stacked_fluid_ex_footer.inc
ds-2col-stacked-fluid-ex-footer.css
ds-2col-stacked-fluid-ex-footer.png
ds-2col-stacked-fluid-ex-footer.tpl.php

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du hast echt den code von da

Eingetragen von Globetrotter (19)
am 02.04.2014 - 11:40 Uhr

Du hast echt den code von da oben bei dir rein kopiert und das hatt funktioniert??? Dan bin ich platt!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ok, versuche mal die ganzen

Eingetragen von landvogt512 (89)
am 02.04.2014 - 11:42 Uhr

Ok, versuche mal die ganzen ds- (bzw. ds_) prefixes von den Datei- und Ordnernamen wegzunehmen.
Oder: setze noch ein zusätzliches "ds_" vor den Funktionsnamen.

Siehe hier: https://drupal.org/node/1098068: Die Files + Ordner werden ohne ds_ bzw. ds- angegeben, die funktion jedoch mit.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Globetrotter schrieb Du hast

Eingetragen von landvogt512 (89)
am 02.04.2014 - 11:44 Uhr
Globetrotter schrieb

Du hast echt den code von da oben bei dir rein kopiert und das hatt funktioniert??? Dan bin ich platt!

Ich habe nur
function ds_2col_stacked_fluid_ex_footer() {
umgeschrieben.
LG

  • Anmelden oder Registrieren um Kommentare zu schreiben

Here we are! Super ... VIELEN

Eingetragen von Globetrotter (19)
am 02.04.2014 - 12:14 Uhr

Here we are!

Super ... VIELEN DANK!

musste ja so einfach sein, sorry das ich deine Zeit in Anspruch genommen habe!
Funktioniert bestens ... dem ersten anschein nach ... hab zwar wider was neues zum kauen, haha, aber so ist das halt wen man lernt :)

Schoenen Tag noch....

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • PHP 8.1 - Deprecated function: rtrim()
  • Preloader / Spnner entfernen Menu Link Modal-Modul
  • Schriftgröße standard einstellen
  • Drupal Website gestalten
  • MariaDB 10.6
  • Entity Reference - Title Felder werden als Link angezeigt
  • Tokens werden in Viev als Link angezeigt
  • [bug entdeckt & workaround gefunden] benutzerdefinierte Felder vom Userprofil tauchen ungefragt auch in den Forumtopics auf...
  • [gelöst] Mass contact Empfängerliste nach Taxonomy Term statt Rolle
  • Update V. 9.3.12 auf V. 9.4 mit Fehler: Modul mySQL fehlt. Bitte Hilfe.
  • Sprachpfad, in Drupal Korrekt einstellen, auch bei den Meta-Tags
  • Update von Drupal 9.3 auf 9.4 oder bei 9.3 bleiben
Weiter

Neue Kommentare

  • Danke fürs Feedback. Gut dass
    vor 2 Tagen 3 Stunden
  • Patch angewandt
    vor 2 Tagen 6 Stunden
  • core_version_requirement: ^8
    vor 4 Tagen 8 Stunden
  • core_version_requirement: ^8
    vor 4 Tagen 8 Stunden
  • ok. Wenn ich das mache
    vor 4 Tagen 8 Stunden
  • Bei gleichem Namen hat das
    vor 4 Tagen 8 Stunden
  • Sorry, dass ich mich hier
    vor 4 Tagen 9 Stunden
  • Habe Patch versucht
    vor 4 Tagen 16 Stunden
  • Hier wird ein Patsch
    vor 4 Tagen 17 Stunden
  • Mit Drupal geht das um 150
    vor 5 Tagen 5 Stunden

Statistik

Beiträge im Forum: 247866
Registrierte User: 19592

Neue User:

  • Davidsnins
  • kudes
  • Tkakah

» Alle User anzeigen

User nach Punkten sortiert:
wla9213
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3845
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 4 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association