Author Topic: [Tutorial] DROPLETS in Backend (DE)  (Read 5849 times)

Offline Stefek

  • Posts: 6177
  • Gender: Male
  • ("ړ)
[Tutorial] DROPLETS in Backend (DE)
« on: September 15, 2011, 04:36:49 PM »
Hallo,
vor längerer Zeit hat WebBird ein Hack veröffentlicht, um Tutorials DROPLETS im Backend einzusetzen.

Weil ich sie aktuell brauche, um mit der Short_URL Lösung von Ruud zu arbeiten und dass mir dadurch auch im Backend die richtigen (umgeschriebenen) URLs angezeigt werden, habe ich den früheren Hack aufgegriffen und für die aktuelle Version von WB (2.8.2) angepasst.
Ich habe es auch so abgeändert, dass es keinerlei Kollisionen mit Droplets gibt, die fürs Frontend gedacht sind.

ANWENDUNG nach der Inbetriebnahme:
Nachdem der Hack "drin" ist, verwendet man dreifache Brackets '[[[' und ']]]' um das Droplet im Backend auszugeben.
Es ist hauptsächlich für die Verwendung in den Templates der Backend Themes gedacht.
Man könnte jedes existierende Droplet dann auf diese Weise im Backend verwenden, solage es Sinn ergibt.
Z.B. [[[meinDroplet]]]

Wichtig zu bemerken ist, dass nicht jedes Droplet Sinn macht, wie z.B. LoginBox oder nextPage.
Es ist also für spezielle Droplets gedacht, die man als Seitenadmin im Backend ausgeben möchte.

Inbetriebnahme (Hack):
1) lade die angehängte Datei backend_droplets.php.txt herunter, bennene sie in  backend_droplets.php um und füge sie in das Droplets Modulverzeichniss ein. [root]/modules/droplets

2) öffne die Datei [root]/framework/class.admin.php ein und mache die folgenden Änderungen:

//suche nach
Code: (/framework/class.admin.php) [Select]
<?php //
function print_header($body_tags = &#39;&#39;) 
{
      
//nach dieser Zeile füge ein
Code: [Select]
<?php //
#DROPLETS HACK ---------------------------------------------------------------
$backend_droplets_file WB_PATH .&#39;/modules/droplets/backend_droplets.php&#39;;
if (file_exists($backend_droplets_file))
{
require_once($backend_droplets_file);
ob_start();
}
# ----------------------------------------------------------------------------
      
      
// und dann suche nach
Code: (/framework/class.admin.php) [Select]
<?php //
$footer_template->pparse(&#39;output&#39;, &#39;page&#39;);
      
// und nach dieser Zeile füge ein..
Code: [Select]
<?php

#DROPLETS HACK ---------------------------------------------------------------
if(function_exists(&#39;evalDroplets&#39;)) { 
$output ob_get_clean();
$output evalDroplets($output); 
echo $output;
}
# ----------------------------------------------------------------------------

Die Verwendung der Droplets im Backend erfordert dreier Brackets wie hier: ---> [[[dropletName]]]

Viel Spaß damit. Manchmal sind Droplets sinnvoll im Backend.
Ich hoffe, dass es irgendwann eine Möglichkeit geben wird, die ohne diesem Hack funktioniert.

Gruß,
Stefek


[gelöscht durch Administrator]
« Last Edit: September 15, 2011, 08:06:24 PM by Stefek »
"Gemeinsam schafft man mehr."

gemeinsam
1. mehreren Personen oder Dingen in gleicher Weise gehörend, eigen
2. in Gemeinschaft [unternommen, zu bewältigen]; zusammen, miteinander
#Duden

Offline pcwacht

  • Posts: 2923
  • Gender: Male
    • Dutch ICT info
Re: [Tutorial] DROPLETS in Backend (DE)
« Reply #1 on: September 15, 2011, 08:03:21 PM »
Schlau!

John
http://www.ictwacht.nl = Dutch ICT info
http://www.pcwacht.nl = My first
both still work in progress, since years.....

Offline Stefek

  • Posts: 6177
  • Gender: Male
  • ("ړ)
Re: [Tutorial] DROPLETS in Backend (DE)
« Reply #2 on: September 15, 2011, 08:08:10 PM »
Danke.
 
Die backend_droplets.php ist die gleiche wie droplets.php aber die Delimiter sind nicht ' [[ ' sondern ' [[[ '.
Dadurch gibt es keine Kollision mit Droplets in WYSIWYG und anderen Stellen  :wink:

Gruß,
Stefek
"Gemeinsam schafft man mehr."

gemeinsam
1. mehreren Personen oder Dingen in gleicher Weise gehörend, eigen
2. in Gemeinschaft [unternommen, zu bewältigen]; zusammen, miteinander
#Duden

Offline pcwacht

  • Posts: 2923
  • Gender: Male
    • Dutch ICT info
Re: [Tutorial] DROPLETS in Backend (DE)
« Reply #3 on: September 15, 2011, 08:22:34 PM »
Ich hatte mir sowas gedacht - aber auf die gedanken kommen um es zu tun.

Sie hatte vielleicht auch {{...}} brauchen konnen. Ich mochte die 3 auch aber vielleicht gibt's irgendwo ins zukunft ein mochligkeit um backend files in frontend zu verwenden, Dan werd die backend methode auch ins frontend ausgefurht ..... weil [[[dropletname]]] auch [[dropletname]] enthalt.

John
http://www.ictwacht.nl = Dutch ICT info
http://www.pcwacht.nl = My first
both still work in progress, since years.....

Offline Stefek

  • Posts: 6177
  • Gender: Male
  • ("ړ)
Re: [Tutorial] DROPLETS in Backend (DE)
« Reply #4 on: September 15, 2011, 08:27:22 PM »
Sie hatte vielleicht auch {{...}} brauchen konnen. ..... weil [[[dropletname]]] auch [[dropletname]] enthalt.

Hallo John,
Du hast recht.
Aber erstmal reicht das, glaube ich.
In Zukunft gibt es vielleicht und hoffentlich auch eine andere Möglichkeit, um Droplets für Backend zu machen.

{{}} kann ich nicht nehmen, weil PMF das verwendet. Das kann dann eine Kollision geben.
Ich bin erstmal zufrieden mit [[[-]]].
Wenn es später probleme gibt, kann man sich noch was anderes ausdenken. ;-)

Gruß,
Stefek
"Gemeinsam schafft man mehr."

gemeinsam
1. mehreren Personen oder Dingen in gleicher Weise gehörend, eigen
2. in Gemeinschaft [unternommen, zu bewältigen]; zusammen, miteinander
#Duden

Offline pcwacht

  • Posts: 2923
  • Gender: Male
    • Dutch ICT info
Re: [Tutorial] DROPLETS in Backend (DE)
« Reply #5 on: September 15, 2011, 09:34:42 PM »
stimmt.
http://www.ictwacht.nl = Dutch ICT info
http://www.pcwacht.nl = My first
both still work in progress, since years.....

jacobi22

  • Guest
Re: [Tutorial] DROPLETS in Backend (DE)
« Reply #6 on: September 16, 2011, 08:25:04 PM »
Funktioniert soweit - Danke dafür!!!

Hab allerdings das Problem mit den Umlauten noch nicht zufriedenstellend lösen können.
Wären nicht zwei neue, zusätzliche Felder in der Tabelle _pages für "seo_link" und ggf auch für "subtitle" eine Möglichkeit?
"seo_link" könnte der "bereinigte" Menü-Link sein, analog dem Dateinamen

Offline Stefek

  • Posts: 6177
  • Gender: Male
  • ("ړ)
Re: [Tutorial] DROPLETS in Backend (DE)
« Reply #7 on: September 16, 2011, 08:45:18 PM »
Hallo,
Du beziehst Dich jetzt auf das Script von Ruud, richtig?

Nun, Du kannst Dir das auf jeden Fall so präparieren, dass Du die DB erweiterst. Musste ich auch vorübergehend machen.

Allerdings, wie die Coreentwickler schon seit längerem bekannt gegeben haben, wird es in der nächsten Version mehr Felder in der DB geben, die dies "aus der box heraus" ermöglichen.

Ich möchte hier nur ungern HACKS veröffentlichen, die die DB Struktur demolieren.
Das kann nämlich früher oder später zu Inkonsistenz führen und Upgrades verunmöglichen.

Gruß,
Stefek
"Gemeinsam schafft man mehr."

gemeinsam
1. mehreren Personen oder Dingen in gleicher Weise gehörend, eigen
2. in Gemeinschaft [unternommen, zu bewältigen]; zusammen, miteinander
#Duden