URL des Hauptshops und des Subshops

Hallo allseits,

in Shop Backend in Grundeinstellungen/Stammdaten des EE 5.2 Subshops gibt es das Feld URL. Meine Frage ist, kann man den Inhalt dieses Feldes in Smarty auslesen?
Was wäre die Methode dazu?

Danke sehr,

marsium

probier mal

[{ $shop->oxshops__oxurl->value }]

[QUOTE=ProudCommerce;155857]probier mal

[{ $shop->oxshops__oxurl->value }][/QUOTE]

Hallo.
Danke, aber gibt null zurück.
Die Sache ist - ich möchte alle Inhalte der Tabelle oxshops in Smarty auslesen können,
es gibt ja nur zwei Einträge- für Hauptshop und Subshop.

ist in $shop überhaupt etwas enthalten?

[{ $shop|print_r }]

[QUOTE=ProudCommerce;155863]ist in $shop überhaupt etwas enthalten?

[{ $shop|print_r }][/QUOTE]

Nein, ist leer :slight_smile:

Hallo,
versuch mal [{ $oxcmp_shop->oxshops__oxurl->value }]
Mit oxcmp_shop kannst in den Templates auf das Shop-Objekt zugreifen.

Grüße
Fabian

[QUOTE=Alpha-Sys;155873]Hallo,
versuch mal [{ $oxcmp_shop->oxshops__oxurl->value }]
Mit oxcmp_shop kannst in den Templates auf das Shop-Objekt zugreifen.

Grüße
Fabian[/QUOTE]

Hallo, Danke.
Das habe ich schon probiert. Aber das ist nicht die Lösung.
ich bräuchte den Zugriff zu ALLEN Einträgen aus oxshops, oxcmp_shop gibt mir nur den aktuellen.

Hallo,
ah ok, du willst alle URLs. Da gibt es meines Wissens keine Methode fürs Frontend.
Hier müsstest du ein kleines Modul schreiben. Dort kannst du dann zum Beispiel ein neues oxshoplist Objekt erzeugen und dort die Methode getAll() aufrufen. Dann erhälst du alle Shop-Objekte und kannst dann auf die URLs zugreifen.
Alternativ kannst du im Modul auch einfach per SQL die Daten ziehen.

Grüße
Fabian

[QUOTE=Alpha-Sys;155875]Hallo,
ah ok, du willst alle URLs. Da gibt es meines Wissens keine Methode fürs Frontend.
Hier müsstest du ein kleines Modul schreiben. Dort kannst du dann zum Beispiel ein neues oxshoplist Objekt erzeugen und dort die Methode getAll() aufrufen. Dann erhälst du alle Shop-Objekte und kannst dann auf die URLs zugreifen.
Alternativ kannst du im Modul auch einfach per SQL die Daten ziehen.

Grüße
Fabian[/QUOTE]

Danke Fabian, bin gerade dabei ein Modul zu implementieren.
Folgenden Tipp haben mir die netten OXIDler in Skype OXID dev-general-de channel
gegeben:

[16:59:46 | Bearbeitet 17:00:04] thomasda: du musst dir das aus der view von mallstart.tpl rauskopieren und in ein eigenes Modul

[17:00:38] thomasda: ich mein natürlich “controller”

[17:01:16] suabo.de: am besten oxviewconfig überlagern, wenn du es im header auf allen seiten brauchst :slight_smile:
ich: ja, das soll switcher sein
ich: zwischen Hauptshop und Subshop
ich: ist überall im Header zu sein
[17:01:55] thomasda: richtig, da ne neue Methode getShopLinks() anlegen und mit dem Inhalt vom controller mallstart derselben methode füllen
[17:01:56] thomasda: fertig

Meinst Du auch sowas?

ja meint er :wink:

Hallo,
ich habe das Modul angelegt, komme leider nicht weiter.

Nochmal - [B]Ziel des Moduls ist das ich in header.tpl via Smarty
die Methoden getShopLinkis(), getDefaultLangs() und getShopList() zugreifen kann[/B]

So sieht meine metadata.php aus:

<?php
/**
 * Module information
 */
$aModule = array(
	'id' 			=> 'shop_switcher',
	'title' 		        => 'Shop Switcher (V.1.0)',
	'description' 	=> 'Schaltet zwischen B2B (Hauptshop) und B2C (Subshop) im Header',
	'thumbnail' 	=> 'picture.jpg',
	'version' 		=> '1.0',
	'author' 		=> XX GmbH',
	'url' 			=> 'http://www',
	'email' 		=> '[email protected]',
	'extend' => array(
		'mallstart' => 'nfc_shop_switcher/application/controllers/nfcShopSwitcher_mallstart'
	),
	'files' => array(

	),
	'blocks' => array(
		array('template' => 'layout/header.tpl', 'block'=>'layout_header_top', 'file'=>'views/blocks/nfcShopSwitcher_layout_header_top.tpl'),
	),
	'events' 		=> array(
		'onActivate'		=> 'nfShopSwitcher_events::onActivate',
		'onDeactivate'		=> 'nfcShopSwitcher_events::onDeactivate'
	),
);


Hallo,
du erweiterst die falsche Klasse.
Erweiter am besten die oxviewconfig. Die kannst du aus allen Templates aufrufen. In der Mallstart kannst du dir nur die Methoden abschauen, die verwendet werden um die Shop-Liste zu ziehen.

In der Erweiterung der oxviewconfig brauchst du ne eigene Methode, die du dann aus dem Template aus aufrufst. Die Methode liefert dir dann die Shop-Liste zurück.

Grüße
Fabian

schau dir mal den link an: http://qrella.com/oxid-modul-erstellen/

[QUOTE=ProudCommerce;155923]schau dir mal den link an: http://qrella.com/oxid-modul-erstellen/[/QUOTE]

Danke, das Prinzip ist längst klar.
Es geht mir darum, welche Klassenmethoden ich zu überschreiben habe.

[QUOTE=Alpha-Sys;155917]Hallo,
du erweiterst die falsche Klasse.
Erweiter am besten die oxviewconfig. Die kannst du aus allen Templates aufrufen. In der Mallstart kannst du dir nur die Methoden abschauen, die verwendet werden um die Shop-Liste zu ziehen.

In der Erweiterung der oxviewconfig brauchst du ne eigene Methode, die du dann aus dem Template aus aufrufst. Die Methode liefert dir dann die Shop-Liste zurück.

Grüße
Fabian[/QUOTE]

Danke Fabian,
ich habe Dich verstanden.
Ich setze es entsprechend um und melde mich hier danach.
Besten Dank.

[QUOTE=ProudCommerce;155923]schau dir mal den link an: http://qrella.com/oxid-modul-erstellen/[/QUOTE]

Hallo Tobias, Danke im Nachhinein für den Link. Hat doch sehr weitergeholfen, war etwas voreilig mit meinem Urteil :slight_smile:

Hallo!
Ich habe das Modul fertigbekommen und es funktioniert.
Herzlichen Dank an alle, die mir geholfen haben, sprich an Fabian und an Tobias!
Gruss,
marsium

vielleicht willst du es ja auf github allen zur verfügung stellen?

[QUOTE=ProudCommerce;156018]vielleicht willst du es ja auf github allen zur verfügung stellen?[/QUOTE]

Ja, das wär der Hammer! @marsium, sag Bescheid, wenn Du da Hilfe brauchst und wenn es nur an der technischen Umsetzung klemmt.

Gruß

Hallo Marco, Tobias!
Das werde ich sehr gerne machen,
ich machs und poste danach einen Link!

LG,
marsium