BJS1977 Posted July 14, 2005 Report Share Posted July 14, 2005 Hallo zusammen! Da die Docs/FAQ nicht erreichbar ist, brauche ich eure Hilfe. Ich versuche gerade verzweifelt eine Box herzustellen, in der nur ein Bild angezeigt wird, welches zu gleich ein Link ist. Nur soll das Bild, wie bei den Buttons sich ?ndern, wenn die Sprache ge?ndert wird. Heisst also in der Box soll eine Anzeige stehen auf Einglish z.B. und wenn man die Sprache auf Spanish ?ndert, soll die gleiche Anzeige nur in spanisch da stehen. oder z.B. f?r das Logo. Das gibt einmal in English und einmal in spanisch. Ich hoffe Ihr versteht wie es meine. Ich hab jetzt schon versucht mit Vorlagen es hinzubekommen, aber es klappt leider nicht. K?nnte mir eventuell einer den Code f?r die php-Datei posten. Ich denk mal nicht, dass man da viel reinschreiben muss. Die Datei heisst z.B. left_ad also dann left_ad.php usw.! Das Bild soll halt auch gleichzeitig ein Link zu einem Produkt sein. Vielen Dank f?r eure Hilfe. BJS1977 Link to comment Share on other sites More sharing options...
BJS1977 Posted July 14, 2005 Author Report Share Posted July 14, 2005 So hier habe ich noch den code, den ich mir da zusammengebastelt habe. Es kommt zwar keine Fehlermeldung, aber es wird auch kein Bild angezeigt und im Link soll z:b: eine URL stehen wie http usw. und nicht, das was jetzt da steht. Hier der Code <?php /* ----------------------------------------------------------------------------------------- $Id: loginbox.php,v 1.2 2004/02/17 16:20:07 fanta2k Exp $ XT-Commerce - community made shopping http://www.xt-commerce.com Copyright (c) 2003 XT-Commerce ----------------------------------------------------------------------------------------- based on: (c) 2000-2001 The Exchange Project (earlier name of osCommerce) (c) 2002-2003 osCommercebased on original files from OSCommerce CVS 2.2 2002/08/28 02:14:35 [url]www.oscommerce.com[/url] (c) 2003 nextcommerce (loginbox.php,v 1.10 2003/08/17); [url]www.nextcommerce.org[/url] Released under the GNU General Public License ----------------------------------------------------------------------------------------- Third Party contributions: Loginbox V1.0 Aubrey Kilian <[email protected]> Released under the GNU General Public License ---------------------------------------------------------------------------------------*/ $box_smarty = new smarty; $box_smarty->assign('tpl_path','templates/'.CURRENT_TEMPLATE.'/'); $box_content=''; require_once(DIR_FS_INC . 'xtc_image_button.inc.php'); $smarty->assign('BUTTON_TOPLEFT','<a href="' . xtc_href_link(FILENAME_CREATE_ACCOUNT, '', 'SSL') . '">' . xtc_image_button('topleft.jpg', IMAGE_TOPLEFT) . '</a>'); $box_smarty->assign('BOX_CONTENT', $image_topleft); $box_smarty->caching = 0; $box_smarty->assign('language', $_SESSION['language']); $box_top_logo= $box_smarty->fetch(CURRENT_TEMPLATE.'/boxes/top_logo.html'); $smarty->assign('top_LOGO',$box_top_logo); ?> Link to comment Share on other sites More sharing options...
hp Posted July 14, 2005 Report Share Posted July 14, 2005 Hallo BJS1977, eine URL stehen wie http usw. und nicht, das was jetzt da steht. Wohin willst Du verlinken? Auf ein bestimmtes Produkt? Hast Du eine Sprachdatei f?r spanisch im Verzeichnis /lang/ erstellt? Gruss Hanspeter Link to comment Share on other sites More sharing options...
BJS1977 Posted July 14, 2005 Author Report Share Posted July 14, 2005 HallO! Nein die muss ich noch erstellen. Nur will ich den Shop gleich so aufbauen, damit er so l?uft, wenn ich die Sprachdatei Spansich habe. Ja z.B. auf ein produkt. Den Link muss ich nach bedarf dann in der php-Datei ?ndern, ausser es ist halt das Logo. damus ja nicht unbedingt ein Link dabei sein. Nur wenn ich z.B. eine Werbebild f?r ein bestimmtes Produkt habe und die Sprache der texte im Bild sind auf English, so will ich dass das Bild bei Spanischer Sprachwahl auf Spanisch erscheint. Ich wollte die Werbebilder als "Button" unter der jeweiligen Sprache speichern. Die Boxen brauchen keine ?berschrift oder so. wenn das Bild z.B. 260x400 pixel ist, so soll die Box auch nur so gross sein. Und noch ne Frage k?nnte man anstatt der Bilder (.jpg, .gif) auch Flash Animationen einbinden. W?re echt cool wenn mir dabei hlefen k?nntest. Sonst habe ich alles zusammen f?r den Shop. Danke BJS Link to comment Share on other sites More sharing options...
hp Posted July 14, 2005 Report Share Posted July 14, 2005 Hallo BJS1977 Mein Vorschlag: In die Index.html Deines Template soetwas einbauen{#link_anfang#}{$tpl_path}{#link_ende#} dann in die lang/german/lang_german.conf in section index [index] soetwas einbauenlink_anfang = '<TD width="102" valign="top"><A href="http://www.csszengarden.com"><IMG SRC="' link_ende = 'img/top_logo.jpg" border=0 ALT="deutsches-Bild"></a></TD>' dann in die lang/spanisch/lang_spanisch.conf in section index [index] soetwas einbauenlink_anfang = '<TD width="102" valign="top"><A href="http://www.csszengarden.com"><IMG SRC="' link_ende = 'img/top_logo.jpg" border=0 ALT="spanisches-Bild"></a></TD>'wobei Du nat?rlich die Sprachdateien f?r spanisch noch erstellen musst. Das top_logo.jpg musst Du dann in den jeweiligen Sprachdateien nat?rlich ersetzen und sie im Ordner img unterbringen. PS Auch die Links kannst Du noch unterschiedlich w?hlen. Gruss Hanspeter Link to comment Share on other sites More sharing options...
BJS1977 Posted July 15, 2005 Author Report Share Posted July 15, 2005 Super geht soweit. Noch eine Frage: Und wie muss ich das schreiben, wenn ich jetzt ein Flash-Movie (swf) einbinden m?chte??? Gruss Bj?rn Link to comment Share on other sites More sharing options...
hp Posted July 17, 2005 Report Share Posted July 17, 2005 Hallo Bj?rn Also wenn Du ein Flash-Movie einbinden willst musst Du einfach das durch<object width="XXX" height="XXX" data="/verzeichnis/dein_movie.swf" type="application/x-shockwave-flash"><param name="movie" value="/verzeichnis/dein_movie.swf"></object> erstzen. (Das darin enthaltene Bild wird ben?tigt, wenn der Browser kein Flash-Plugin hat.) Aber ein Problem stellt der Link dar, denn der TAG funktioniert nicht auf Objecte. Du musst also den Link aus dem Flash-Movie selbst heraus machen. PS In einem Forum habe ich gelesen, das ein Flash-Movie einen ihn umgebenden Link auslesen k?nne und man ihn dann im Movie zur Verlinkung einsetzen kann, aber wie das geht hatte dann der Beitragschreiber nicht mitgeteilt und ich verstehe leider von Flash gar nichts. Gruss Hanspeter Link to comment Share on other sites More sharing options...
hp Posted July 18, 2005 Report Share Posted July 18, 2005 Hallo Bj?rn Wie Du mir geschrieben hast m?chtest Die Bilder ?ffters ?ndern und die Verlinkung im Content Manager zum Main-Content haben. Daf?r ist nat?rlich meine obige L?sung etwas unhandlich, desshalb hab ich mir eine einfachere L?sung ?berlegt. Hier ist nun mein neuer Vorschlag mit diesem kannst Du dann alles ?ber den Content Manager einpflegen und angezeigt wird es in der Box {$box_INFORMATION} und im {$main_content}. 1. In templates/xtc2/source/boxes/information.php etfernst Du den rot eingef?rbten Teil.$content_string .= ' ) . '"]' . $content_data['content_title'] . ' '; 2. In includes/classes/breadcrumb.php ersetzt Du den Code abfor ($i=0, $n=sizeof($this->_trail); $i<$n; $i++) { ? ? ? ?if (isset($this->_trail[$i]['link']) && xtc_not_null($this->_trail[$i]['link'])) { ? ? ? ? ?$trail_string .= '<a href="' . $this->_trail[$i]['link'] . '" class="headerNavigation">' . $this->_trail[$i]['title'] . '</a>'; ? ? ? ?} else { ? ? ? ? ?$trail_string .= $this->_trail[$i]['title']; ? ? ? ?} ? ? ? ?if (($i+1) < $n) $trail_string .= $separator; ? ? ?} ? ? ?return $trail_string; ? ?} ?} ?> mit diesem Codefor ($i=0, $n=sizeof($this->_trail); $i<$n; $i++) { ? ? if ((strpos($this->_trail[$i]['title'],'alt="')) === false){ ? ? ?if (isset($this->_trail[$i]['link']) && xtc_not_null($this->_trail[$i]['link'])) { ? ? ? ? ?$trail_string .= '<a href="' . $this->_trail[$i]['link'] . '" class="headerNavigation">' . str_replace("","",(strip_tags($this->_trail[$i]['title']))) . '</a>'; ? ? ? ?} else { ? ? ? ? ?$trail_string .= str_replace("","",(strip_tags($this->_trail[$i]['title']))); ? ? ? ?} ? ? }else { ? ? ? $title = explode('"',(stristr($this->_trail[$i]['title'],'alt="'))); ? ? ? if (isset($this->_trail[$i]['link']) && xtc_not_null($this->_trail[$i]['link'])) { ? ? ? ? ?$trail_string .= '<a href="' . $this->_trail[$i]['link'] . '" class="headerNavigation">' . $title[1] . '</a>'; ? ? ? ?} else { ? ? ? ? ?$trail_string .= $title[1]; ? ? ? ?} ? ? } ? ? ? ?if (($i+1) < $n) $trail_string .= $separator; ? } ? ? ?return $trail_string; ? ?} ?} ?>dies ist n?tig damit in der {$navtrail} Deines Template nicht Bilder angezeigt werden. Das sind eigentlich schon alle ?nderungen die Du im Code machen must, alles Andere machst Du nun im Content Manager. Und das geht so: Im Content Manager -> klick auf Neuer Content Sprache: -> w?hlen Sprachgruppe: -> ID vergeben (gleiche Nummern f?r korespondierende Inhalte in verschiedenen Sprachen) Box: -> Information w?hlen Sichtbar: -> anklicken Titel: -> hier f?gst Du jetzt Deine Bildquelle als HTML-Code ein also sodabei gibst Du f?r src="/...." einen relativen Pfad zu Deinem Bild ein (achte auf den / am Anfang Deiner Pfadangabe sonst kannst Du es im Content Manager nicht sehen). Im (alt=". . .") Attribut tr?gst Du den Titel f?r Deinen Content ein, dieser ist dann in der {$navtrail} zu sehen. M?chtest Du ein Flash-Movie anzeigen setzt Du einfach soetwas ein<object width="XXX" height="XXX" data="/verzeichnis/dein_movie.swf" type="application/x-shockwave-flash"><param name="movie" value="/verzeichnis/dein_movie.swf"></object> Wichtig: Damit der Titel in der breadcrumb-Navigation ({$navtrail}) richtig angezeigt wird musst Du unbedingt darauf achten das Du im (alt=". . .") Attribut keine Leerschl?ge machst also nicht so (alt = ". . ."); zwischen den Anf?hrungszeichen sind aber Leerschl?ge erlaubt. So das ist eigentlich schon alles, im Textbereich f?gst Du einfach noch deinen Main-Content ein und fertig. PS Soltest Du die Box Informationen bereits anderweitig verwenden kannst Du einen Klon machen, nachfolgend findest Du die Anleitung dazu. Erstellen einer neuen Box f?r XT-Commerce RC 1.2 (Version 1.0) 1. Eine bestehende Box kopieren und anpassen: Gehen Sie in das Verzeichniss: /template/ihrtemplate/source/boxes Dort kopieren Sie z.b.: box_information.php in box_links.php Das gleiche machen Sie im Verzeichniss: /template/ihrtemplate/boxes Hier kopieren Sie die box_information.html in box_links.html 2. ?ndern der Bezeichnungen in den beiden Files: In der .php Datei ersetzen Sie alle Eintr?ge die "information" lauten, mit "links". Achten Sie darauf das folgender Code gro? geschrieben werden mu?: $smarty->assign('box_INFORMATION',$box_information); Hier also das INFORMATION in LINKS ?ndern 3. Neue Box in der boxes.php einbinden: ?ffnen Sie die Datei: /template/ihrtemplate/source/boxes.php Und f?gen Sie unter: require(DIR_WS_BOXES . 'information.php'); folgendes ein: require(DIR_WS_BOXES . 'links.php'); 4. Smarty Tag in die Index.html einf?gen: ?ffnen sie die Datei "index.html" im Verzeichniss: /template/ihrtemplate/ F?gen Sie {$box_LINKS} entweder in die Linke oder in die Rechte Navigationsleiste ein. <td>{$box_CART} {$box_LOGIN} {$box_INFOBOX} {$box_ADMIN} {$box_BESTSELLERS} {$box_CURRENCIES} {$box_LANGUAGES} {$box_MANUFACTURERS_INFO} {$box_MANUFACTURERS} {$box_NOTIFICATIONS} {$box_TELL_FRIEND} {$box_LINKS} </td> 5. ?ndern des file_flag in der links.php: $content_query=xtc_db_query("SELECT content_id, categories_id, parent_id, content_title, content_group FROM ".TABLE_CONTENT_MANAGER." WHERE languages_id='".(int)$_SESSION['languages_id']."' and file_flag=3 and content_status=1"); Hier ?ndern Sie bitte file_flag=0 auf file_flag=3 6. ?nderung in der Datenbank: Gehen Sie in Ihre Datenbank. Dort finden Sie die Tabelle: cm_file_flags Erzeugen Sie einen neuen Eintrag und schreiben Sie f?r file_flag = 3 Und geben Sie der Box noch den Namen: links Dieser Name wird dann in der Auswahlbox des Content-Managers stehen. 7. ?ndern der Sprachdatei: Gehen Sie in des Verzeichniss: lang/german/ ?ffnen Sie die Datei: lang_german.conf F?gen Sie im Abschnitt [boxes] (ziemlich weit unten) folgendes ein: heading_linkbox = 'Spielelinks' (K?nnen Sie nat?rlich Ihren Begebenheiten anpassen) ?ffnen Sie Ihre links.html Datei und ?ndern Sie: den Smarty Tag: {#heading_infobox#} in {#heading_linkbox#} 8. Content erzeugen: Melden Sie sich als Admin an, gehen Sie zum Content-Manager. Erstellen Sie einen neuen Content. Jetzt sollten Sie bei "Box" die neue Box "links" ausw?hlen k?nnen und der Box den neuen Content zuweisen. Achten Sie darauf auch das K?stchen "Sichtbar" anzuklicken, da sonst Ihre neue Box erst garnicht erscheint. Mit verspielten Gr??en Peter Uphoff Gruss Hanspeter Link to comment Share on other sites More sharing options...
gagaduxy Posted November 29, 2005 Report Share Posted November 29, 2005 Hallo Peter, ich habe soweit alles befolgt. Aber mit dem folgenden Punkt habe ich Schwierigkeiten: 6. ?nderung in der Datenbank: Gehen Sie in Ihre Datenbank. Dort finden Sie die Tabelle: cm_file_flags Erzeugen Sie einen neuen Eintrag und schreiben Sie f?r file_flag = 3 Und geben Sie der Box noch den Namen: links Dieser Name wird dann in der Auswahlbox des Content-Managers stehen. Frage: Ich habe f?r den Eintrag mit vorkonfiguriertes php-myadmin (bei 1&1) folgende Tabellenfelder: - Feld, - Typ (z.B. VARCHAR, TEXT, INT, etc.), - L?nge/Set, - Attribute, - Null (not_null, null), - Standard, - Extra Ich habe eine neue dritte Zeile angelegt (zwei waren bereits vorhanden, siehe unten). Was muss nun wo eingetragen werden? Einfach die Ziffer "3" in "Feld" eintragen?? Welcher "Typ" und welche "L?nge" muss angegeben werden? Wo muss der Name "links" eingetragen werden? Unter cms_file_flags waren, wie gesagt, bereits zwei Zeilen vorhanden: Feld: file_flag, Typ: INT, L?nge/Set: 11, Attribute: leer, Null: not_null, Standard: 0, Extras: leer Feld: file_flag_name, Typ: VARCHAR, L?nge/Set: 32, Attribute: leer, Null: not_null, Standard: leer, Extras: leer M?ssen diese beiden Zeilen irgendwie ge?ndert werden?? Vielen Dank f?r die dringend ben?tigte Hilfe, komme einfach nicht weiter. Zusatzfrage: Gibt es eine Referenz f?r Beginers wo man sowas und anderes auch nachlesen und verstehen kann? Danke an alle!!! XTC ist ein tolles Projekt das ich unterst?tze!!! Gr?sse aus GT Link to comment Share on other sites More sharing options...
ostap Posted December 8, 2005 Report Share Posted December 8, 2005 hi, du muss auf Anzeigen klicken, dann Neue Zeile einf?gen als wert bei file_flag 3 file_flag_name box name Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.