Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Bewertung kürzen + "weiter lesen"

    robertko

    • Schreiberling
    • Beiträge: 271
    Bewertung kürzen + "weiter lesen"
    am: 22. Dezember 2011, 17:47:52
    Hi leute.
    Folgendes Problem:
    Ich möchte den Bewertungstext kürzen, am Ende ein "..." einfügen und ein "weiter lesen" dranhängen. Wenn man auf "weiter lesen" klickt, soll der Text fortgesetzt werden.

    Bisher habe ich mit "|truncate" den Text auf eine Wortanzahl gekürzt und ein "..." dran gehängt, aber wie machen ich das mit den "weiter lesen" Button?
    Wie gesagt, der Text soll weitergeführt werden, KEIN neues Fenster oder ähnliches.

    Ich danke euch.

    Linkback: https://www.modified-shop.org/forum/index.php?topic=17521.0

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #1 am: 22. Dezember 2011, 23:53:27
    Hallo robertko,

    ich könnte mir vorstellen das Du sowas meinst: mootools demos - Fx.Slide Demo

    ...was dann aber über Javascript gemacht wird mit mootools oder jQuery...

    Oder doch ein neues Fenster wenn man auf "weiter lesen" klickt?  :glaskugel:

    Viele Grüße

    Franky

    robertko

    • Schreiberling
    • Beiträge: 271
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #2 am: 23. Dezember 2011, 15:11:18
    Hi franky.
    Das sieht schonmal ziemlich cool aus.
    Ob ich das hin bekomme?!
    Dann mal ran an die Arbeit.
    Falls ich Fragen hab, melde ich mich.

    Danke erstmal!

    robertko

    • Schreiberling
    • Beiträge: 271
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #3 am: 23. Dezember 2011, 16:02:20
    Hi nochmal.
    Schon hab ich ein Problem.

    Im Moment sieht es so aus, dass der Bewertungstext angezeigt wird, und direkt darüber die Buttons "slideout", "slidein", "toggle", "hide".
    Die Ansicht ist also wir erwartet, allerdings funktionieren die Buttons nicht.
    Egal welchen ich drücke, ich gelange über diese immer auf die Startseite des Shops.
    Müssen die links angepasst werden?

    Ich poste euch mal den code.

    Die "products_reviews.html" sieht so aus:

    Code: PHP  [Auswählen]
    {config_load file="$language/lang_$language.conf" section="reviews"}
    <h1>{#heading_reviews#}</h1>
    {foreach name=aussen item=module_data from=$module_content}
    <p><strong>{#text_author#}</strong>&nbsp;{$module_data.AUTHOR}&nbsp;am&nbsp;{$module_data.DATE}<br /><strong>{#text_rating#}</strong>{$module_data.RATING}</p>

    <script src="reviewslide.js"></script>
    <h3 class="section">Fx.Slide Vertical</h3>
     
    <a id="slideout" href="#">slideout</a> | <a id="slidein" href="#">slidein</a> | <a id="toggle" href="#">toggle</a> | <a id="hide" href="#">hide</a>
     
    <div id="test">
    {$module_data.TEXT}
    </div>

    {/foreach}
    <p style="padding-bottom:20px">{$BUTTON_WRITE}</p>
    <div class="hrlightgrey"></div>

    Den Javascript-Code hab ich in eine eigene Datei ausgelagert:

    Code: Javascript  [Auswählen]
    var mySlide = new Fx.Slide('test');
     
    $('slidein').addEvent('click', function(e){
            e = new Event(e);
            mySlide.slideIn();
            e.stop();
    });
     
    $('slideout').addEvent('click', function(e){
            e = new Event(e);
            mySlide.slideOut();
            e.stop();
    });
     
    $('toggle').addEvent('click', function(e){
            e = new Event(e);
            mySlide.toggle();
            e.stop();
    });
     
    $('hide').addEvent('click', function(e){
            e = new Event(e);
            mySlide.hide();
            e.stop();
    });

    Wo liegt der Fehler?
    Ich bin auf diesem Gebiet völliger Anfänger.
    Ich danke euch.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.990
    • Geschlecht:
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #4 am: 23. Dezember 2011, 16:11:57
    Hi robertko.

    Als Schnellschuß vermute ich mal da muß ein
    Code: Javascript  [Auswählen]
    e.preventDefault();
    rein oder ein
    return false;

    Zumindest bei jQuery.

    Warum nutzt du nicht jQuery, das ist doch schon bei modified eCommerce Shopsoftware dabei ?

    Gruß,
    noRiddle

    P.S.
    Warum implementierst du eigentlich alle Möglichkeiten ?
    hide, toggle, slidein usw.
    Das ist doch nur eine Demo gewesen auf die dich franky_n gelinkt hat.
    Da soll man eins von auswählen.
    Entweder toggle,
    oder slidein, slideout
    oder hide, show

    robertko

    • Schreiberling
    • Beiträge: 271
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #5 am: 23. Dezember 2011, 16:14:23
    Wie gesagt, kaum plan von der Materie. Habe quasi nur den Quelltext von der Seite kopiert und eingefügt.
    Ob Jquery, Java oder wie das auch alles heißt, kein Plan. ;-)
    Danek erstmal, werds probieren.

    robertko

    • Schreiberling
    • Beiträge: 271
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #6 am: 23. Dezember 2011, 16:16:48
    Code: Javascript  [Auswählen]
    e.preventDefault();
     

    Also das hat schonmal nicht funktioniert.
    Weitere Vorschläge

    Edit:

    Mit den Buttons hast du recht, das werd ich auch noch ändern, Ich brauche ja tatsächlich nur einen, aber erstmal soll es überhaubt funktionieren.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.990
    • Geschlecht:
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #7 am: 23. Dezember 2011, 16:32:15
    Hast du mal 'ne URL ?
    So kann ich nicht mal sagen ob du alles korrekt implementiert hast.
    Z.B.: Hast du die mootools-Bibliothek überhaupt auf deinen Server geladen und in den <head>-Bereich den Bezug eingefügt ?

    Wie gesagt, nimm lieber die jQuery-Bibliothek, das ist schon im Shopsystem drin und eine neue Bibliothek bläht nur die Ladezeiten auf.

    noRiddle

    robertko

    • Schreiberling
    • Beiträge: 271
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #8 am: 23. Dezember 2011, 16:38:46
    Aha Aha.

    Ich habe keine Bibliothek geladen.
    Eine Url hab ich leider nicht. alles noch auf "localhost".

    Muss ich jetzt irgendwas umschreiben wegen jQuery??
    Ich danke dir, das wird sicher sein.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.990
    • Geschlecht:
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #9 am: 23. Dezember 2011, 17:01:16
    So geht das leider nicht, da wird der Aufwand dir zu helfen zu groß.
    Da müsste man ein halbes Buch schreiben.
    Einsteigerwissen sollte man schon haben.

    Wenn du gar keine Ahnung hast, musst du dir wohl Einen suchen der dir hilft.

    Zum Abschluß vielleicht noch folgendes:

    Im head-Bereich des Shops wird die jQuery-Bibliothek geladen (siehe Quelltext).
    Das sieht dann so aus:

    Code: PHP  [Auswählen]
    <script src="templates/DEIN_TEMPLATE/javascript/jquery.js" type="text/javascript"></script>

    An dem Pfad siehst du wo die Datei auf dem Server liegt.
    Mit jQuery könnte es dann so gehen:

    Code: Javascript  [Auswählen]
    $(document).ready(function(){
    $('toggle').click(function(){
    $("#text").slideToggle(3000);
    });
    });

    Die Zahl 3000 gibt in Millisekunden an wie lange das slide dauern soll und kann natürlcih angepasst werden.
    Natürlich muß noch die id text im CSS auf display:none gesetzt werden oder was immer du machen willst.

    Die ausgelagerte Datei muß dann auch im head-Bereich aufgerufen werden.
    Je nachdem wo du sie auf den Server geladen hast also in "/templates/DEIN_TEMPLATE/javascript/general.js.php" so einfügen:

    Code: PHP  [Auswählen]
    <script src="PFAD_ZUR_DATEI/jquery.js" type="text/javascript"></script>

    Mehr kann man von hier aus leider nicht helfen.

    Gruß,
    noRiddle

    robertko

    • Schreiberling
    • Beiträge: 271
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #10 am: 23. Dezember 2011, 17:50:04
    mhh...
    Ich kann dir leider nicht ganz folgen.

    Also die Bibliothek wird in head-Bereich des Shops geladen.
    Wird sie bereits geladen, oder muss ich sie noch laden??
    wenn ja, wo finde ich den head-Bereich des Shops?
    Mag 'ne dumme Frage sein, aber da so gut wie alles hier in .php geschrieben ist, hab ich keinen Plan.

    Dies hier...

    Code: Javascript  [Auswählen]
    $(document).ready(function(){
    $('toggle').click(function(){
    $("#text").slideToggle(3000);
    });
    });

    lagere ich also in eigene ".js" Datei aus, ja?

    und wo, soll das hier rein...

    Code: PHP  [Auswählen]
    <script src="PFAD_ZUR_DATEI/jquery.js" type="text/javascript"></script>

    und was meinst du mit "PFAD_ZUR_DATEI"?
    Ich benutze das xtc5 Template.
    Die "jquery.js" ist im standard Verzeichnis.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.990
    • Geschlecht:
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #11 am: 23. Dezember 2011, 18:36:29
    Was head-Bereich betrifft schau in den Quelltext (Firefox, rechte Maustaste => Seitenquelltext anzeigen).
    Alles was innerhalb

    Code: PHP  [Auswählen]
    <head></head>

    steht ist der head-Bereich, so hab' ich ihn mal genannt.
    jQuery ist da bereits eingebunden.

    Du sagtest doch "Den Javascript-Code hab ich in eine eigene Datei ausgelagert:"
    Das machst du eben mit dem von mir vorgeschlagenen Code nun auch.
    "PFAD_ZUR_DATEI" ist dein Pfad zu dieser ausgelagerten Datei, weiß ich ja nicht wo du die hin lädst.

    Aber ich merke schon, daß das, wie bereits gesagt, zu weit führt.
    Du hast, mit Verlaub, einfach zu wenig Ahnung.
    Bitte suche dir jemanden der dir hilft.

    Eine genaue Anleitung was du machen musst ist
    1. ohne Link auf deine Seite nicht möglich
    2. wäre sie so umfangreich, daß
    a) es den Rahmen dieses Forums sprengen würde
    b) so zeitaufwändig ist, daß du über eine Jobanfrage nachdenken solltest

    Gruß,
    noRiddle

    hedon02

    • Viel Schreiber
    • Beiträge: 618
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #12 am: 23. Dezember 2011, 19:33:37
    Google mal nach "jquery truncate". Es gibt dutzende plugins, die Deine gewünschte Funktion zur Verfügung stellen.

    Gruss

    hedon02

    • Viel Schreiber
    • Beiträge: 618
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #13 am: 23. Dezember 2011, 21:05:13
    jTruncate - Text Truncation for jQuery

    z.B. sieht doch sehr vielversprechend aus. Das Plugin brauchst Du lediglich in die
    "/templates/<dein Template>/javascript/general.js.php" einbinden (analog der Einbindung der "jquery.js") und den entsprechenden Funktionsaufruf dazu schreibst Du ebenfalls in die "general.js.php".

    Gruss

    robertko

    • Schreiberling
    • Beiträge: 271
    Re: Bewertung kürzen + "weiter lesen"
    Antwort #14 am: 23. Dezember 2011, 22:29:09
    Hammer.
    Mit "jtruncate" funktioniert das einwandfrei.

    Ein Problem gibt's aber dennoch.
    Momentan, habe ich testweise 5 Bewertungen in einem Produkt. (Alle von mir, nur zum testen)
    Es wird allerdings nur die erste Bewertung "getruncated" lol. An den anderen tut sich gar nichts.
    Wie löse ich das Problem?