[gelöst] D8 - pdf erzeugen
am 05.05.2020 - 09:58 Uhr in
Hallo zusammen,
ich möchte in meinem D8 Projekt den usern ermöglichen, pdf's von Seiten zu erstellen. In D7 ist das alles sehr einfach gewesen. Weil das Projekt auch vertrauliche Inhalte (von Klientenfällen) beinhaltet, möchte ich von einer Lösung wie mit print_friendly absehen. Vorab: Leider kenne ich mich mit composer/drush nicht aus.
Habe es mit pdf_using_mpdf (Version 8x.-1.0) versucht und bin gescheitert. Es kommt beim Aktivieren die Fehlermeldung:
Check if Mpdf library exists (Aktuell wird Mpdf library in Version : Not Found verwendet)
Meine Fragen an euch:
- Lässt sich das ohne composer überhaupt machen?
- Wo genau muss die mpdf library gespeichert sein? Ich hab sie unter sites/all/libraries/ angelegt
- Kann es sein, dass mpdf Version und Version der library nicht zusammenpassen? Welche würden dann zusammenpassen?
- Es gibt auch eine mpdf -development Version, wäre die geeigneter?
Und hat wer einen anderen Weg dafür gefunden, der ohne Verwendung von composer installierbar ist?
Danke für jeden Hinweis,
Martin
- Anmelden oder Registrieren um Kommentare zu schreiben
Ich habe das mal probeweise
am 05.05.2020 - 20:57 Uhr
Ich habe das mal probeweise bei mir installiert, mit Composer. Drupal ist bei mir unter /httpdocs/web und die mpdf library wurde unter httpdocs/vendor/mpdf/mpdf installiert, also praktisch neben dem Drupal Verzeichnis. Vielleicht kannst du die da manuell hinkopieren.
Außerdem wurde dabei noch /httpdocs/vendor/setasign/fpdi und /httpdocs/vendor/myclabs/deep-copy mitinstalliert vom Composer.
Am besten wird wahrscheinlich sein, sich mit Composer anzufreunden, ich war auch anfangs skeptisch aber das geht wirklich viel einfacher dann.
Danke Sammelzwerg das ist ein guter Hinweis
am 06.05.2020 - 09:00 Uhr
Zweiter Versuch:
Nun hab ich es ausprobiert - erst das mpdf in das von dir genannte Verzeichnis kopiert und leider war der Versuch nicht erfolgreich. Dein Tipp mit dem "vendor" als Speicherort für mpdf scheint mir richtig zu sein. Nur ist die Lage viel komplexer. Es wirkt eher wie ein Ratespiel, was wohin kommt.
Denn es gibt eine vielschichtige Verzeichnisstruktur und ich weiß nicht, obs genügt, die "händisch" reinzukopieren, die müssen ja auch miteinander verlinkt sein, laienhaft gesagt.
In der beiligenden Grafik sieht man, dass mpdf auch einen eigene vendor "mitbringt" und dann erst drunter das eigentliche mpdf mit den Schriften etc. liegt. Und auch das von dir über composer gefundene installierte /setasign/fpdi sowie
/myclabs/deep-copy Aber ich weiß dann nicht, ob es der "unterste" mpdf Ordner sein soll, oder darüber noch einer liegen muss und wie die zusammenwirken.
Gerne würde ich mich doch mit composer schlau machen, ich hab hier im Forum keine durchgehende Anleitung gefunden. Vieles betrifft noch D6+7. Überhaupt scheint da im Forum die Zeit stehengeblieben zu sein. Wenn mir da wer hilfreiche Tipps dazugeben könnte. Der Wille ist jedenfalls da. Ich würde mich auch gerne an Übersetzungen etc. oder anderem beteiligen bzw. meine Erfahrungen teilen - und nicht nur Beratungswissen abzocken.
Hier ist eine Anleitung,
am 06.05.2020 - 20:40 Uhr
Hier ist eine Anleitung, Composer zu einer bestehenden Seite hinzuzufügen, allerdings englisch wie so oft.
https://www.drupal.org/docs/8/install/add-composer-to-an-existing-site
Wahrscheinlich wäre zum testen und üben auch eine Testinstallation nicht schlecht, parallel auf dem Server oder auch lokal zum Beispiel mit Virtualbox ein Linux installieren.
Ich habe mir Composer auf eine Website installiert, die ich extra zum testen habe, und bin dort dabei eine andere Seite von D7 auf D8 mit Composer zu updaten.
Danke für den composer Link
am 07.05.2020 - 16:34 Uhr
Diese Anleitungs hab ich schon gefunden und sie mir mit deepl übersetzen lassen. Soviel ich verstanden habe ist ab D8.8xxx der composer mit dabei und alles darauf ausgelegt, dass er auch verwendet wird. Egal ob Module neu oder aktualisieren oder core updates. Ok soweit so gut, ich hab 8.8.4 am Laufen. Composer also eh dabei.
Nur wo und wie komme ich in die Kommandozeilen-Abteilung, wo finde ich diese Befehle alle?
z.B.
cd /var/www/sites
composer create-project drupal/recommended-project:~8.8.0 new_html --stability dev --no-interactio
Gibt es dazu eine Liste der Befehle? Ist der Zugang zum Composer mittels Drush? Ist Drush ein Modul wie andere auch?
Du siehst, hineingeschnuppert hab ich, aber ich bin erst in der Vorschulklasse damit. Kann also das "Alphabet" dafür noch nicht.
Ich glaub es bräuchte eine Schritt für Schritt Anleitung. Also in etwas so: Mach eine Virtual box, setz Linux-Server auf, dann Experimental-D8 seite lokal, dann... so ähnlich. Oder eben am Server in einer Experimentalseite, wie du es machst.
Wie würdest du es einem echten Anfänger beschreiben oder wie bist du da reingekommen? Eine site von D7 auf 8 upzudaten steht mir auch noch in einem anderen Projekt bevor. Wobei da überlege ich eher, Seiteninhalte einfach in ein fertig laufendes Werkel mit neuem Design seitenweise zu kopieren. Sind großteils statische Seiten und ein Blog. Aber das ist ein anderes Kapitel. Dafür versuche ich jetzt bereits, mich mit D8 als Spielwiese anzufreunden, damit ichs dann gegen Ende de Jahres mit meinem beruflichen Projekt hinbekomme.
Denn beim neuen D8 stehen dann auch regelmäßige updates an. Von denen hatte ich eines schon erfolgreich geschafft - aber nicht mit composer sondern einfach durch Herumschieben von neue/gegen alte Dateien mit filezilla. Auch erst nach mehreren Anläufen.
Ok, schauen wir mal. Erst mal
am 07.05.2020 - 19:26 Uhr
Ok, schauen wir mal. Erst mal ein paar Fragen :
Was für ein Server oder webspace hast du?
Was für ein Betriebssystem nutzt du zuhause, wo dann die virtualbox geutzt werden soll?
Was für Kenntnisse hast du von linux Kommandozeile?
Wurde Drupal als 8.8.4 installiert, oder von vorversionen upgedatet?
Ich denke, virtualbox ist erstmal besser zum testen, wenn da was schieflaufen sollte, ist das kein Problem, und man kann da auch leicht Snapshots erstellen um zurückkehren zu können.
Weiter gehts
am 08.05.2020 - 16:43 Uhr
Danke schon im Voraus für die geduldige Anleitung!
Zu deinen Fragen:
1. Zuhause nutze ich windows 7 ultimate als Betriebsystem
2. In meinem Projekt bin ich mit D 8.8.3 eingestiegen und hab selbst auf 8.4 upgedatet, irgendwas composerlike ist also mit dabei. Siehe beiligende Grafik von meinem Verzeichnis am Server unten, da ist im vendor ein ordner composer mit dabei.
3. Linux Kommandozeile kann ich leider nixx, werde ich lernen.
4. Webspace habe ich bei alfahosting, business L, der spielt einige Stückeln - siehe: https://alfahosting.de/webhosting/ , ich weiß nicht worauf es hier ankommt, nur ein kleiner Ausschnitt: Verwendete Software auf diesem Server PHP-Version(en):4.4, 5.2 bis 5.6, 7.0 bis 7.4 Perl-Version:5.20 MySQL-Version:5.7, dazu jede Menge Datenbanken möglich, webspace, encrypt SSL . Mein D8.8.4 Projekt läuft ohne Probleme bereits, siehe https://koerperorientiert.at
5.Habe ich das recht verstanden: ein Testobjekt zu Hause am virtuellen Server zu laufen bringen - darum gehts. Und dort mit dem composer "spielen" lernen, vertraut machen. OK. Und später das Übungsobjekt per ftp in ein Verzeichnis am server hochladen? In meinen ganz frühen Begegnungen mit Drupal war das sowas wie LAMP, es war so ein Acronym für Linux und Apacheserver Ding?
Von diesem
am 08.05.2020 - 23:13 Uhr
Von diesem link
https://download.virtualbox.org/virtualbox/6.0.20/VirtualBox-6.0.20-137117-Win.exe kannst du dir virtualbox herunterladen.
Ein vorgefertigtes Image mit Linux versuche ich noch zu finden.
Nachtrag: Ich habe dir eine Nachricht geschickt
Danke Sammelzwerg
am 11.05.2020 - 16:41 Uhr
Ich hab alle Links und Sachen erhalten - es wird übers wochenende dauern bis ich mich wieder melde.
Danke einstweilen für deine Zeit!
Zwei Tage später: Hab die VirtualMachine 6.1 erfolgreich ins Laufen gebracht und das Serverabbild das du mir dankenswerterweise geschickt hast ist auch "drinn". Schwarzer Bildschirm mit kryptischen Befehlszeilen, erinnert an dos-Zeiten. Die Fachleute hier werden sich's Lachen nicht verkneifen können. Ok, jedenfalls bin ich nun bereit für weitere Lernschritte. Ist super, dass ich diese Neuland mit Hilfe Schritt für Schritt Anleitung betreten kann.
Hallo,am beste erstmal ein
am 11.05.2020 - 20:59 Uhr
Hallo,
am beste erstmal ein update, damit alles aktuell ist:
sudo apt update
und
sudo apt full-upgrade
Danach ein paar notwendige Pakete:
sudo apt install zip unzip php-cli php-mbstring php-xml php-gd php-curl php-zip
Den Benutzer zur Gruppe www-data hinzufügen:
sudo usermod -aG www-data tester
Webverzeichnis Besitzer ändern
sudo chown -R tester:www-data /var/www/html
Für lesbare URLs:
sudo a2enmod rewrite
Konfigurationsdatei zur Bearbeitung öffnen:
sudo nano /etc/apache2/apache2.conf
und nach dem Abschnitt mit den
<Directory
</Directory>
folgendes einfügen:
<Directory /var/www/html/drupal/web>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Dann mit STRG+X beenden, Frage nach dem speichern mit j beantworten und vorgeschlagenen Speicherort einfach mit ENTER bestätigen
Den Weberver neu starten:
sudo systemctl restart apache2
Ins webverzeichnis wechseln:
cd /var/www/html
Die Standard-Datei löschen:
rm index.html
Und dann endlich Composer installieren:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer
Drupal installieren im Unterordner drupal:
composer create-project drupal/recommended-project drupal
Danke Sammelzwerg
am 24.05.2020 - 17:00 Uhr
Danke für die grossartige Hilfstellung!
In ungefähr 30 Emails und damit verbundener 3 Stunden Begleitung hat mich Sammelzwerg geduldig durch die basics geführt,
vom ubuntu server, den dortigen kryptischen Befehlen, zu putty hin zum composer.
Drupal 8.8.4 auf 8.8.6 updaten, das übe ich nun lokal, so wie es mir in einem früheren posting geraten wurde.
Dann gehts an die live Seite. Wenn das geschafft ist werde ich die erforderlichen Schritte zusammenfassen.
Mit dem composer geht es tatsächlich viel leichter, die webprojekte zu pflegen.