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

Markieren, wenn Youtube-Video in Node

Eingetragen von Tim99@drupal.org (170)
am 09.03.2008 - 09:09 Uhr in
  • Themes & Theming

Hallo,

ich würde gerne schon im Anrisstext irgendwo deutlich machen, wenn eine Node ein eingebettetes Youtube-Video beinhaltet, zB durch ein Icon. Hat jemand eine Idee, wie ich das am besten überprüfen kann? Den gesamten $content nach dem String "youtube" parsen, ist glaub ich eine blöde Idee.

‹ Templates für Block/View Sidebar mit content von einer View ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich hab's jetzt so

Eingetragen von Tim99@drupal.org (170)
am 29.03.2008 - 07:27 Uhr

Ich hab's jetzt so gelöst:

<?php
if (substr_count($content, "http://www.youtube.com/v")>=1) {
   echo
"<span class="includes_youtube floatright">&nbsp;</span>";
}

?>

Blöderweise kann es aber sein, dass das Video nicht in den Teaser-Bereich fällt und dann wird nichts angezeigt. Weiss jemand eine Lösung? Dass ich zB nicht $content überprüfe, sondern etwas anderes?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wie kommt denn ein

Eingetragen von quiptime (4972)
am 29.03.2008 - 12:36 Uhr

Wie kommt denn ein Youtube-Video in den Inhalt einer Node? Wie genau fuegst Du das Video ein?

Wenn man das weiss kann man auch nach einer Loesung sehen um im Teaser was anzuzeigen.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich benutze TinyMCE mit

Eingetragen von Tim99@drupal.org (170)
am 29.03.2008 - 12:54 Uhr

Ich benutze TinyMCE mit einem Plugin. Im Inhalt der Node steht dann so was hier:

<object class="youtube" type="application/x-shockwave-flash" style="width: 425px; height:350px;" data="http://www.youtube.com/v/abcdefgh">
<br />
<param name="movie" value="http://www.youtube.com/v/abcdefgh" />
<param name="wmode" value="transparent" />
<!--<embed src="http://www.youtube.com/v/abcdefgh" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed>-->
</object>

Momentan überprüfe ich wie gesagt, ob der $content den substring http://www.youtube.com/v/ enthält. Aber wenn es nur ein Teaser ist, hilft das wohl nicht weiter.

  • Anmelden oder Registrieren um Kommentare zu schreiben

optionales Extrafeld zum Einfuegen von Videocode

Eingetragen von quiptime (4972)
am 29.03.2008 - 15:04 Uhr

Warum definierst nicht mit CCK ein optionales Extrafeld zum Einfuegen von Videocode. Dann kann man pruefen ob dieses Feld Inhalt hat. Wenn ja, gibst Du im Teaser den Zusatz aus.

Ausserdem koennte man mit CCK field permissions zusaetzlich steuern wer dieses Feld benutzen darf.

Bei dieser Vorgehensweise benoetigst Du allerdings einen separaten Inhaltstyp zum Erstellen von Inhalten mit youtube Videos. Weiterhin musst Du fuer diesen Inhaltstyp mit einem Template arbeiten.
Im Template gibst Du den Inhalt von Teaser und Body getrennt aus. Bei der Ausgabe des Teaserinhaltes pruefst Du ob das Feld mit dem Viedocode Inhalt hat. Wenn ja wird der Inhalt des Teaser entsprechend Deinen Vorstellungen erweitert.

Der Inhalt des Teaser steht im Nodeobjekt zur Verfuegung.

Wenn Du das Template fuer den Nodetyp erstellt hast mach mal folgendes:

print '<pre>';
print_r($node);
print </pre>';

Mit dieser Ausgabe kannst Du gut erkennen wie Du an den Teaserinhalt im Nodeobjekt herankommst um ihn zu aendern und veraendert auszugeben.

Mit $node->teaser und $node->body kann man im Template Teaser und Body direkt ansprechen.

Tipp:
Verwende eventuell check_markup($node->teaser); bzw. check_markup($node->body); um den Teaser bzw. den Body auszugeben.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke. Die Seite ist bereits

Eingetragen von Tim99@drupal.org (170)
am 29.03.2008 - 21:23 Uhr

Danke. Die Seite ist bereits im laufenden Betrieb und es sind auch schon Videos eingetragen. Ich möchte es so lassen und nur am Theme rumschrauben. Mein Problem ist also, dass ich nur den Teaser angezeigt kriege. Ich möchte aber überprüfen, ob in der Node (im Body) irgendwo der Youtube-String versteckt ist. Wenn ich auf der Teaser Seite dprint_r($node) ausgeben lasse, ist der Youtube-String in keiner Variable enthalten.

Hier sind mal 4 Varianten:

<?php
if (substr_count($content, "http://www.youtube.com/v")>=1)

if (
substr_count($node->body, "http://www.youtube.com/v")>=1)

if (
substr_count($node->body['content'], "http://www.youtube.com/v")>=1)

if (
substr_count($node->body['view'], "http://www.youtube.com/v")>=1)
?>

1. liefert das korrekte Ergebnis, wenn der Youtube-Link im Teaser-Bereich liegt, sonst nicht.

2. - 4. liefern gar nichts.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Mit $node->content['body']['#

Eingetragen von Tim99@drupal.org (170)
am 30.03.2008 - 06:00 Uhr

Mit
$node->content['body']['#value']
kann ich offensichtlich auf den Body-Inhalt zugreifen. Aber vom Teaser aus krieg ich auch da nichts angezeigt. Nur bei der Vollansicht. Muss ich da irgendwie den Umweg über die nid gehen?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich hol den Thread noch mal

Eingetragen von Tim99@drupal.org (170)
am 23.04.2008 - 06:40 Uhr

Ich hol den Thread noch mal hoch, weil ich immer noch keine Lösung gefunden habe. Ich möchte ja in der Teaser-Sicht schon überprüfen, ob in der Vollansicht der String "youtube/watch?v" oder so vorkommt.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • gepatchte PHP Version 7.4 für Windows
  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
Weiter

Neue Kommentare

  • Danke ich werde mir die
    vor 5 Wochen 4 Tagen
  • Vielen Dank für Ihren
    vor 6 Wochen 2 Stunden
  • Composer ist sehr ratsam
    vor 6 Wochen 2 Tagen
  • Vielen Dank für den
    vor 6 Wochen 4 Tagen
  • Die alten CMS Vergleiche von contentmanager.de
    vor 6 Wochen 5 Tagen
  • Gut gemacht
    vor 6 Wochen 5 Tagen
  • Layout Builder etc. z.B. für Landing Pages
    vor 6 Wochen 5 Tagen
  • Links
    vor 7 Wochen 15 Stunden
  • Moin,wow, sehr gutes
    vor 7 Wochen 1 Tag
  • Dass ist eine spannende
    vor 7 Wochen 1 Tag

Statistik

Beiträge im Forum: 250317
Registrierte User: 20567

Neue User:

  • Philiphelve
  • Robertspaft
  • drupalthemes

» Alle User anzeigen

User nach Punkten sortiert:
wla9466
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 11 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