Revamp Webshop: Automatische Kurzbeschreibung: Unterschied zwischen den Versionen

Aus revampedia
Zeile 29: Zeile 29:
 
Das Backend verwendet die sogenannte "isis" template.
 
Das Backend verwendet die sogenannte "isis" template.
  
Für die Produkt-Editier Ansicht wurde bereits ein "template override" erstellt:
+
Für die Produkt-Editier Ansicht wurde bereits ein "template override" erstellt.
 +
 
 +
Wo ist dieses ?
 +
 
 
<pre>caydin@rochen:/var/www/revamp/jodir_ut$ grep -r "neue Artikelnummer" *
 
<pre>caydin@rochen:/var/www/revamp/jodir_ut$ grep -r "neue Artikelnummer" *
administrator/templates/isis/html/com_virtuemart/product/product_edit_information.php: [\]
+
administrator/templates/isis/html/com_virtuemart/product/product_edit_information.php: [ \ ]
 
echo ' neue Artikelnummer: ';include '/var/www/revamp/shop2csv/next_sku.php';?>
 
echo ' neue Artikelnummer: ';include '/var/www/revamp/shop2csv/next_sku.php';?>
[...]
+
[ ... ]
 
</pre>
 
</pre>
  
BTW wo werden doch gleich im Joomla Adm. die Overrides erstellt ? Auf Anhieb nicht gefunden...<br />
+
''BTW/Bemerkung: Wo werden doch gleich im Joomla Adm. die Overrides erstellt ? Auf Anhieb nicht gefunden...''
--> Erweiterungen --> Template --> '''in der Spalte Template''' auf den Namen klicken
+
:''--> Erweiterungen --> Template --> '''in der Spalte Template''' auf den Namen klicken''
 +
 
 +
Die Kurzbeschreibung findet sich somit unter:
 +
 
 +
<pre>/var/www/revamp/jodir_ut/administrator/templates/isis/html/com_virtuemart/product</pre>
 +
 
 +
in der Datei: <code>product_edit_description.php</code>
 +
 
 +
Dort wird sie ausgelesen mittels:
 +
<source lang="php">
 +
<textarea class="inputbox" name="product_s_desc"
 +
id="product_s_desc" cols="65" rows="3" >
 +
    <?php echo $this->product->product_s_desc; ?>
 +
</textarea></source>
 +
 
 +
Das formular wird allerdings mittels Javascript übermittelt (z.B. der "Speichern" Button):
 +
 
 +
<source lang="html5">
 +
<button onclick="Joomla.submitbutton('save')" class="btn btn-small">
 +
<span class="icon-save"></span>
 +
Speichern &amp; Schließen</button>
 +
</source>
 +
 
 +
Wo findet sich die Funktion <code>Joomla.submitbutton</code> ?
 +
 
 +
<pre>rochen:/var/www/revamp/jodir_ut$ grep submitbutton `find . -name "*.js"`
 +
[ ... ]
 +
./media/system/js/core-uncompressed.js: Joomla.submitbutton = function( pressbutton ) {
 +
./media/system/js/core-uncompressed.js: * @deprecated  12.1 This function will be removed in a future version. Use Joomla.submitbutton() instead.
 +
./media/system/js/core-uncompressed.js: window.submitbutton = function ( pressbutton ) {
 +
./media/system/js/core-uncompressed.js: Joomla.submitbutton( pressbutton );
 +
[ ... ]</pre>

Version vom 3. Februar 2016, 18:36 Uhr

Die Kurzbeschreibung soll automatisch aus custom-fields erstellt werden.

Lösungsmöglichkeiten

V1.

Bei der Ausgabe generieren.

(+) Ausgabe wird dynamische/automatische generiert (aktuelle Daten)

(---) Serverzeit zum erstellen, viele DB Abfragen etc.

(---) Code muss an verschiedenen Orten angepasst werden

V2.

Bei der Eingabe generieren und in der Datenbank als Kurzbeschreibung speichern.

(+) Keine Anpassung der Ausgabe nötig, diese ist automatisch überall richtig (Produktliste, einzelne Produkte etc.)

(-) Was geschieht mit bereits erfassten Artikeln ? --> diese werden im Laufe der Zeit angepasst, wir müssen eh alle Artikel nochmals überprüfen

V2 ist besser.

Umsetzung

Innerhalb der Testumgebung: rochen:/var/www/revamp/jodir_ut/..

Das Backend verwendet die sogenannte "isis" template.

Für die Produkt-Editier Ansicht wurde bereits ein "template override" erstellt.

Wo ist dieses ?

caydin@rochen:/var/www/revamp/jodir_ut$ grep -r "neue Artikelnummer" *
administrator/templates/isis/html/com_virtuemart/product/product_edit_information.php:	[ \ ]
	echo ' neue Artikelnummer: ';include '/var/www/revamp/shop2csv/next_sku.php';?>
[ ... ]

BTW/Bemerkung: Wo werden doch gleich im Joomla Adm. die Overrides erstellt ? Auf Anhieb nicht gefunden...

--> Erweiterungen --> Template --> in der Spalte Template auf den Namen klicken

Die Kurzbeschreibung findet sich somit unter:

/var/www/revamp/jodir_ut/administrator/templates/isis/html/com_virtuemart/product

in der Datei: product_edit_description.php

Dort wird sie ausgelesen mittels:

<textarea class="inputbox" name="product_s_desc"
 id="product_s_desc" cols="65" rows="3" >
    <?php echo $this->product->product_s_desc; ?>
</textarea>

Das formular wird allerdings mittels Javascript übermittelt (z.B. der "Speichern" Button):

	<button onclick="Joomla.submitbutton('save')" class="btn btn-small">
	<span class="icon-save"></span>
	Speichern &amp; Schließen</button>

Wo findet sich die Funktion Joomla.submitbutton ?

rochen:/var/www/revamp/jodir_ut$ grep submitbutton `find . -name "*.js"`
[ ... ]
./media/system/js/core-uncompressed.js:	Joomla.submitbutton = function( pressbutton ) {
./media/system/js/core-uncompressed.js:	 * @deprecated  12.1 This function will be removed in a future version. Use Joomla.submitbutton() instead.
./media/system/js/core-uncompressed.js:	window.submitbutton = function ( pressbutton ) {
./media/system/js/core-uncompressed.js:		Joomla.submitbutton( pressbutton );
[ ... ]