extension platzierung
Forumsregeln
Bei Fragen zu einer bestimmten Extension sind Extension-Name und die Downloadquelle der Extension erforderlich. Letztere in Form der URL zum Download.
Bei Fragen zu einer bestimmten Extension sind Extension-Name und die Downloadquelle der Extension erforderlich. Letztere in Form der URL zum Download.
extension platzierung
Hallo Ich habe eine Extension Gebastel die einen Textausgabe an einer Bestimmten Stelle im Forum platzieren soll.
Im moment sieht es so aus.
[ externes Bild ]
Das einzige Problem ist das der Text der im Roten Kasten steht nicht dort auftaucht wo ich im Bild die blaue Linie gezogen habe.
Wie muss ich das Event dafür benennen?
Im Moment Heist das Event: overall_footer_page_body_after.html
PS: Die Extension macht ansonsten genau das was sie soll. Fehlt nur noch die Richtige Ausgabestelle im Forum.
Im moment sieht es so aus.
[ externes Bild ]
Das einzige Problem ist das der Text der im Roten Kasten steht nicht dort auftaucht wo ich im Bild die blaue Linie gezogen habe.
Wie muss ich das Event dafür benennen?
Im Moment Heist das Event: overall_footer_page_body_after.html
PS: Die Extension macht ansonsten genau das was sie soll. Fehlt nur noch die Richtige Ausgabestelle im Forum.
Re: extension platzierung
Probiere es mal mit
overall_footer_copyright_prepend
.Handle nur nach derjenigen Maxime, durch die du zugleich wollen kannst, dass sie ein allgemeines Gesetz werde.
(Immanuel Kant)
(Immanuel Kant)
Re: extension platzierung
Passt. Danke
Re: extension platzierung
Ein Blick in die, in diesem Fall, 
overall_footer.html
genügt: dort gibt es für diese Position nur ein einziges Event 
Handle nur nach derjenigen Maxime, durch die du zugleich wollen kannst, dass sie ein allgemeines Gesetz werde.
(Immanuel Kant)
(Immanuel Kant)
Re: extension platzierung
Alles klar Melmac hab gesehen was du meintest.
Frage Gibt es irgendwo eine ausführliche Anleitung zum erstellen von Extension auf Deustch.
Ich hab da noch ein Problem.
Die ext. die ich baue funktioniert soweit.
meine Verzeichnisstruktur sieht folgendermassen aus:
/root/ext/minipom/mz/(extension root Composer.joan)
Darin enthalten sind :
-Language-de/de_x_sie/en
Hier in den jeweiligen Sprach ordnern liegt die common.php mit sprachvariabeln
-Styles-all-template-event
In diesem liegen 2 event dateien:
1. overall_footer_copyright_prepend
2. overall_header_head_append (für laden der eigenen css datei)
und dann noch im Styles ordner all-theme die minipom.css
Die Dateien sehen im moment so aus.
/Language/(sprachcode)/common.php
/styles/all/theme/minipom.css
/styles/all/template/event/overall_footer_copyright_prepend
/styles/all/template/event/overall_header_head_append
Und Natürlich die composer.json
Problem ist das Sieht dann mit den Sprachvariabeln so aus:
[ externes Bild ]
Wenn ich jetzt hingehe und schreibe anstelle der Sprachvariabel den Textr in die overall_footer_copyright_prepend.html
Dann schaut das so aus wie es eigentlich sein sollte:
[ externes Bild ]
Ich weis allerdings nicht was ich jetzt vergessen habe.
Evtl. Kann mir noch einer sagen wie ich die schriftart anpasse Grösse hab ich gefunden.
Frage Gibt es irgendwo eine ausführliche Anleitung zum erstellen von Extension auf Deustch.
Ich hab da noch ein Problem.
Die ext. die ich baue funktioniert soweit.
meine Verzeichnisstruktur sieht folgendermassen aus:
/root/ext/minipom/mz/(extension root Composer.joan)
Darin enthalten sind :
-Language-de/de_x_sie/en
Hier in den jeweiligen Sprach ordnern liegt die common.php mit sprachvariabeln
-Styles-all-template-event
In diesem liegen 2 event dateien:
1. overall_footer_copyright_prepend
2. overall_header_head_append (für laden der eigenen css datei)
und dann noch im Styles ordner all-theme die minipom.css
Die Dateien sehen im moment so aus.
/Language/(sprachcode)/common.php
Code: Alles auswählen
<?php
if (!defined('IN_PHPBB'))
{
exit;
}
if (empty($lang) || !is_array($lang))
{
$lang = array();
}
$lang = array_merge($lang, array(
'MZ_INFO' => '*Minipom ist das eingetragene Markenzeichen von THE COCA-COLA COMPANY (n.d.Ges.d. Staates Delaware), Atlanta Ga., US',
));
Code: Alles auswählen
.minipom {
color: #555555;
}
.minipom {
padding: 5px;
text-align: center;
}
.minipom { font-size: 150%; }
Code: Alles auswählen
<div class="minipom">
<br />
<!-- IF MZ-INFO -->{MZ_INFO}<!-- ENDIF -->
<br /><br />
</div>
Code: Alles auswählen
<!-- INCLUDECSS @minipom_mz/minipom.css -->
Code: Alles auswählen
{
"name": "minipom/mz",
"type": "phpbb-extension",
"description": "Information Zu Eingetragenem Markenzeichen",
"homepage": "http://minipomforum.de",
"version": "1.0.0",
"time": "2017-11-11",
"license": "GPL-2.0",
"authors": [{
"name": "Minipomforum",
"email": "kommtnoch@ggg.de",
"homepage": "http://minipomforum.de",
"role": "Lead Developer"
}
],
"require": {
"php": ">=5.3.9"
},
"extra": {
"display-name": "Information zum Markenzeichen",
"soft-require": {
"phpbb/phpbb": ">=3.1.5,<3.2.*@dev"
}
}
}
[ externes Bild ]
Wenn ich jetzt hingehe und schreibe anstelle der Sprachvariabel den Textr in die overall_footer_copyright_prepend.html
Code: Alles auswählen
<div class="minipom">
<br />
*Minipom ist das eingetragene Markenzeichen von THE COCA-COLA COMPANY (n.d.Ges.d. Staates Delaware), Atlanta Ga., US
<br /><br />
</div>
[ externes Bild ]
Ich weis allerdings nicht was ich jetzt vergessen habe.
Evtl. Kann mir noch einer sagen wie ich die schriftart anpasse Grösse hab ich gefunden.
Re: extension platzierung
Mal eine Frage:
Was soll das
Ersetze mal das
durch
oder, im TWIG-Syntax
Zum CSS: warum nicht alles zusammenfassen? Du rufst 3x den gleichen Selektor auf, nur um ihm weitere Eigenschaften zuzuweisen, und ansonsten ist die Datei leer.
Außerdem würde ich dort nicht mit
Dies kannst Du z.B. auch über Paddings für die Container-DIV regeln.
Code: Alles auswählen
<div class="minipom">
<br />
<!-- IF MZ-INFO -->{MZ_INFO}<!-- ENDIF -->
<br /><br />
</div>
<!-- IF MZ-INFO -->
bewirken? Was wird da abgeprüft und wo wird das definiert?Ersetze mal das
Code: Alles auswählen
<!-- IF MZ-INFO -->{MZ_INFO}<!-- ENDIF -->
Code: Alles auswählen
{L_MZ_INFO}
Code: Alles auswählen
{{ lang('MZ_INFO') }}
Außerdem würde ich dort nicht mit
<br />
arbeiten, um die Abstände zu den jeweiligen Container-Rändern zu regeln.Dies kannst Du z.B. auch über Paddings für die Container-DIV regeln.
Handle nur nach derjenigen Maxime, durch die du zugleich wollen kannst, dass sie ein allgemeines Gesetz werde.
(Immanuel Kant)
(Immanuel Kant)
Re: extension platzierung
So, wie ich es lese, fehlt auch der "event"-Ordner mit der
listener.php
listener.php
listener.php
Code: Alles auswählen
<?php
/**
*
* @package phpBB Extension - (Name der Ext.)
* @copyright (c) 2017 (xxxx)
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/
namespace (Pfad zum "event"-Ordner);
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
/**
* Event listener
*/
class listener implements EventSubscriberInterface
{
/** @var string phpbb_root_path */
protected $root_path;
/** @var \phpbb\user */
protected $user;
/** @var \phpbb\template\template */
protected $template;
/**
* Constructor
*/
public function __construct($phpbb_root_path, \phpbb\user $user, \phpbb\template\template $template)
{
$this->root_path = $phpbb_root_path;
$this->user = $user;
$this->template = $template;
}
static public function getSubscribedEvents()
{
return array(
'core.user_setup' => 'load_language_on_setup',
);
}
/**
* Load language during user setup
*
* @param object $event The event object
* @return null
*/
public function load_language_on_setup($event)
{
$lang_set_ext = $event['lang_set_ext'];
$lang_set_ext[] = array(
'ext_name' => 'xxxxxx',
'lang_set' => 'yyyyyyy',
);
$event['lang_set_ext'] = $lang_set_ext;
}
}
Zuletzt geändert von vfrblue am 13.11.2017 21:33, insgesamt 1-mal geändert.
Re: extension platzierung
Also die css datei sieht jetzt so aus:
Denke das war das was du mit 3 mal gemeint hast-
Bei der anderen Änderung in der html datei sieht das dann so aus:
Leider immer noch nicht so wie gewünscht.
@vrfblue
wofür ist diese listener.php
Code: Alles auswählen
.minipom
{
color: #555555;
padding: 5px;
text-align: center;
font-size: 150%;
}
Bei der anderen Änderung in der html datei sieht das dann so aus:
Code: Alles auswählen
http://prntscr.com/ha1m5z
@vrfblue
wofür ist diese listener.php
Re: extension platzierung
Die brauchst du, um die Sprach-Dateien zuweisen zu können. Diese Datei gehört aber nicht in den "event"-Ordner des Styles. Schau dir den Aufbau in einer "einfachen" Erweiterung an, wo auch unterschiedliche Sprachen vorhanden sind.
So sieht z.B. die
So sieht z.B. die
listener.php
von meiner einfachen Erweiterung aus:
Code: Alles auswählen
<?php
/**
*
* @package phpBB Extension - Social-Media-Buttons
* @copyright (c) 2017 vfrblue
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/
namespace vfrocde\mediabutton\event;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
/**
* Event listener
*/
class listener implements EventSubscriberInterface
{
/** @var string phpbb_root_path */
protected $root_path;
/** @var \phpbb\user */
protected $user;
/** @var \phpbb\template\template */
protected $template;
/**
* Constructor
*/
public function __construct($phpbb_root_path, \phpbb\user $user, \phpbb\template\template $template)
{
$this->root_path = $phpbb_root_path;
$this->user = $user;
$this->template = $template;
}
static public function getSubscribedEvents()
{
return array(
'core.user_setup' => 'load_language_on_setup',
);
}
/**
* Load language during user setup
*
* @param object $event The event object
* @return null
*/
public function load_language_on_setup($event)
{
$lang_set_ext = $event['lang_set_ext'];
$lang_set_ext[] = array(
'ext_name' => 'vfrocde/mediabutton',
'lang_set' => 'mediabutton',
);
$event['lang_set_ext'] = $lang_set_ext;
}
}
Zuletzt geändert von vfrblue am 13.11.2017 21:42, insgesamt 1-mal geändert.
Re: extension platzierung
den ordner hab ich schon der mus dort liegen wo die composer.json ist
meine listener.php sieht so aus:
Und in der overall_footer_copyright_prepend.html steht jetzt folgendes:
resultat sieht so aus:
[ externes Bild ]
Ich habe in dem Ordner Lanaguage jeweils ordner de, de_x_sie und en und in diesen die jeweiligen sprachvariabeln in einer common.php gespeichert inhalt steht weiter oben.
meine listener.php sieht so aus:
Code: Alles auswählen
<?php
/**
*
* @package phpBB Extension - (Name der Ext.)
* @copyright (c) 2017 (xxxx)
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/
namespace minipom\mz\event;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
/**
* Event listener
*/
class listener implements EventSubscriberInterface
{
/** @var string phpbb_root_path */
protected $root_path;
/** @var \phpbb\user */
protected $user;
/** @var \phpbb\template\template */
protected $template;
/**
* Constructor
*/
public function __construct($phpbb_root_path, \phpbb\user $user, \phpbb\template\template $template)
{
$this->root_path = $phpbb_root_path;
$this->user = $user;
$this->template = $template;
}
static public function getSubscribedEvents()
{
return array(
'core.user_setup' => 'load_language_on_setup',
);
}
/**
* Load language during user setup
*
* @param object $event The event object
* @return null
*/
public function load_language_on_setup($event)
{
$lang_set_ext = $event['lang_set_ext'];
$lang_set_ext[] = array(
'ext_name' => 'minipom/mz',
'lang_set' => 'mz',
);
$event['lang_set_ext'] = $lang_set_ext;
}
}
Code: Alles auswählen
<div class="minipom">
{L_MZ_INFO}
</div>
[ externes Bild ]
Ich habe in dem Ordner Lanaguage jeweils ordner de, de_x_sie und en und in diesen die jeweiligen sprachvariabeln in einer common.php gespeichert inhalt steht weiter oben.