1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Beitrag im Loop abfangen und verändern

Dieses Thema im Forum "Allgemeines" wurde erstellt von kieselsteine, 3. November 2013.

Schlagworte:
  1. kieselsteine

    kieselsteine Member

    Registriert seit:
    3. November 2013
    Beiträge:
    19
    Zustimmungen:
    0
    Hallo

    Mein Anliegen ist etwas speziell.
    Ich habe ein php script gemacht, dass mir eine eigene Schrift aus .png Bildern erstellt.
    Die jetzige Version ist noch etwas gross geraten.
    Hier wie es aussehen könnte;
    http://www.kieselsteine.ch/1buchstaben/schreib3.php
    Der Sinn der Schrift ist, dass sie pro Zeichen fünf verschiedene Zeichen hat zur Auswahl mit Rand()
    Ich möchte eine Schrift, die nicht nur ein "a" hat, sondern eben 5.
    Solche Schriften gibt es nicht.
    Daher habe ich es selber gebastelt.
    Hier kannst Du ein zip herunter laden mit dem Script und den Buchstaben.
    http://kieselsteine.ch/1buchstaben/Schrift.zip
    Funktionieren tut das aber nur auf einem Server, da php eine Serversprache ist.
    Also einfach hochladen, den Ordner mit dem Buchstaben in gleichen Ordner wie die schrift3.php
    Dann funktioniert es.
    Auf Zeile 86 ist die Variable „abuchst“
    Dort kannst Du Dein eigenen Text eingeben.
    Abschnitte werden richtig umgesetzt.
    Wenn der Browser zusammen gezogen wird, wird ein Wort nicht getrennt.
    Das kommt, weil ich jedes Leerzeichen mit einem /span Leerzeichen span ersetzt habe. So steht jedes Wort in einer span Klammer im CSS heisst es dann span:white-space: nowrap;

    Nun spiele ich mit dem Gedanken, diese Schrift auch in meinem Blog zu verwenden.
    Dazu müsste ich im Loop den String abfangen der aus meiner Datenbank kommt und durch meinen Script filtern. Dabei werden alle Buchstaben durch meine Bilderbuchstaben ersetzt.
    Im Loop finde ich nun die function the_content().
    Diese Funktion müsste ich aber ändern können.
    Aber ich finde sie nicht.
    Zusätzlich möchte ich mir die Option offen lassen, dass der Artikelinhalt konventionell verarbeitet wird. Ich dachte dass ich das mit einem Code Zeichen lösen könnte. Wenn ich zum Beispiel am Anfang meines Beitrages ein "&" setze soll es in durch meinen Schriftscript gehen sonst nicht.
    Ich weiß, das ist alles nicht ganz einfach.
    Aber wer weiß vielleicht habe ich einen langen Atmen....
    Oder ich finde sogar Jemand der mir helfen möchte Wordpress das von Hand schreiben bei zu bringen.:)


    Liebe Grüsse
    kieselsteine
     
  2. Nevery

    Nevery Well-Known Member

    Registriert seit:
    15. Oktober 2013
    Beiträge:
    404
    Zustimmungen:
    0
    Über get_the_content bekommst Du den Inhalt zurückgegeben, so dass Du ihn in einer Variable speichern und dann bearbeiten kannst. Wenn Du Dir dann per substr den ersten Buchstaben zur Kontrolle holst sollte der Rest auch durchführbar sein.

    In den wordpresseigenen Funktionen etwas zu ändern würde ich nicht empfehlen, das müsstest Du nach jedem Update wiederholen.
     
  3. kieselsteine

    kieselsteine Member

    Registriert seit:
    3. November 2013
    Beiträge:
    19
    Zustimmungen:
    0
    Vielen Dank Nevery

    get_the_content ist sicher der Schlüssel zu meinen Plänen.
    Wenn ich das richtig verstanden habe hat Wordpress fast so etwas wie eine eigene Scriptsprache.
    Ich bin nun durch Deinen Anstoss auf diese Seite gestossen;
    http://codex.wordpress.org/Function_Reference#Post.2C_Custom_Post_Type.2C_Page.2C_Attachment_and_Bookmarks_Functions

    Wie ich in einem ersten Test bemerkt habe, ist das,
    wie immer in solchen Angelegenheiten,
    nicht so einfach, wie zuerst gedacht.
    Einmal sehen.
    Vielleicht werde ich in den nächsten Monaten der Lösung näher kommen

    liebe Grüsse
    kieselsteine
     
  4. Nevery

    Nevery Well-Known Member

    Registriert seit:
    15. Oktober 2013
    Beiträge:
    404
    Zustimmungen:
    0
    Das hast Du richtig verstanden - aber Du hast schon die richtige Seite gefunden, um das nachzulesen.

    Woran hängt es denn aktuell noch?
     
  5. alchymyth

    alchymyth Well-Known Member

    Registriert seit:
    7. Juni 2009
    Beiträge:
    3.959
    Zustimmungen:
    1
  6. kieselsteine

    kieselsteine Member

    Registriert seit:
    3. November 2013
    Beiträge:
    19
    Zustimmungen:
    0
    Hallo Nevery

    Das Problem ist das meine (noch nicht) function eine switch case Schleife durchläuft. Wenn ich aber normaler Text oder auch Bilder oder Videos posten möchte, soll das ja nicht der Fall sein. Sonst kommt kein Bild nur mein von Hand geschriebenes HTML. Ich habe einfach noch keine rechte Vorstellung davon, wie ich eine Weiche einbauen kann. Die Weiche soll ja so sein, dass zum Beispiel ein Bild kommt, dann die von Hand geschriebene Bilderklärung dann wieder ein Bild u.s.w Da müsste er ständig wechseln. Ich bin ein extrem langsamer Programmierer. Im Moment biltzen einzelne Ideen auf aus dem Dunkeln, verschwinden aber sofort wieder sobald ich an einen Hacken stosse. Das braucht alles einfach viel viel Zeit bei mir.
    Dazu kommt noch, dass meine Schrift viel zu gross wurde.
    Nun möchte ich ohne die zu grosse Schrift zu verlieren eine Schrift zeichnen, die nur ein drittel so gross ist. Dann muss ich wechseln können zwischen normal Zustand, Grossschrift und Kleinschrift, das verdichtet in meinem Kopf vorerst den Nebel noch mehr.
    Natürlich habe ich schon etwas darauf hin vorbereitet. Das ganze ist in einem Ordner. Dann nochmals in einem Ordner, mit dem Namen hu. Hu wäre dann so zu sagen der Name der Grossschrift. Hi oder he oder hö wäre dann der Name der Kleinschrift, die ich zuerst noch zeichnen muss. Nun könnte ich in den Arrys statt /hu schreiben eine Variable ausgeben, die ich dann mittels Codezeichen in /hi umstellen könnte.
    Dann ginge er in das andere Verzeichniss und holte statt den grossen Bilderbuchstaben die kleinen.
    Doch das ist alles noch sehr theoretisch noch weit weg von der PHP Realität entfernt im dicken Wunsch und Vorstellungsnebel.
    Aber ich bleibe vorerst daran es zu lichten.

    Hallo Alchymyth

    Genau das ist eine gute Idee aus meinem Script eine function zu machen.
    Eine gute Idee weiter auf dem Weg der Realisation.

    Vielen Dank Euch
    Ich dachte zuerst meine kryptischen Vorstellungen versteht niemand
    Aber da habe ich mich gehörig getäuscht.
    Super
    Gefällt mir gut das Forum

    liebe Grüsse
    kieselsteine
     
  7. Melewo

    Melewo Well-Known Member

    Registriert seit:
    8. Juli 2013
    Beiträge:
    3.097
    Zustimmungen:
    0
    Du kannst doch die Elemente und Bereiche einer Seite unterschiedlich behandeln. Einfaches Beispiel, was sich kombinieren lassen sollte, statt nur "<pre>" Bereiche zu suchen.

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Und um Bereiche einzugrenzen, bietet sich doch notfalls auch RegEx an, falls Du damit nur einzelne Seiten durchläufst und nicht alle. Und aussuchen kannst Du Dir die Seiten zum Beispiel mit:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
    #7 Melewo, 3. November 2013
    Zuletzt bearbeitet: 3. November 2013
  8. kieselsteine

    kieselsteine Member

    Registriert seit:
    3. November 2013
    Beiträge:
    19
    Zustimmungen:
    0
    Hallo Melewo

    hi,
    strpos ist cool
    Was es nicht alles gibt in PHP!
    Ich glaube strpos könnte mir auch weiter helfen.
    http://php.net/manual/de/function.strpos.php

    dann wüsste ich wo im String ich stecken geblieben bin.;)

    liebe Grüsse
    kieselsteine
     
  9. Melewo

    Melewo Well-Known Member

    Registriert seit:
    8. Juli 2013
    Beiträge:
    3.097
    Zustimmungen:
    0
    Nehme lieber etwas anderes statt "&", denn daraus macht ein Editor oder die eine oder andere PHP-Funktion bei der ersten Gelegenheit ein "&amp;" und Du suchst dann nach dem Fehler. Für so etwas verwende ich oft [BBC] und da gibt es kaum Missverständnisse.

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  10. kieselsteine

    kieselsteine Member

    Registriert seit:
    3. November 2013
    Beiträge:
    19
    Zustimmungen:
    0
    Wie ich richtig voraus gesehen habe, geht das alles etwas länger.
    Nun habe ich zumindest einmel alles in meine Schrift umwandeln können
    grosse Probleme gab, die Tatsache, dass die Ausgabe der Artikel in einem <div> ist
    Da hat mein Trick mit <span> white-space: nowrap nicht mehr funktioniert.
    Ich musste es bei jedem speace mit einem style separat eingeben.
    Noch grössere Probleme gab es mit der Pfadangabe. Im gleichen Ordner wie die index.php Datei geht nicht. Ausgegeben wird das scheinbar ganz wo anders. Nun habe ich die Buchstaben ausserhalb von meinem Wordpressordner abgelegt und eine absoluten Pfad eingegeben. Dann fand er sie.
    Noch grösserer Probleme gab es wie fast nicht anders zu erwarten mit ä ö und ü
    Das Zauberwort, dass ich nach tausenden von Fehlversuchen schliesslich fand heisst;
    utf8_decode();
    Zurerst hatte ich diese Seite durchgelesen;
    http://www.herr-rau.de/wordpress/2011/09/iso-8859-1-utf-8-und-wordpress.htm
    Sehr gut beschrieben
    Nur für mich mindestens 37 Klassen zu hoch....
    später bin ich dann über das oben geschriebene Zauberwort gestolpert.
    Und oh Wunder es geht! keine Ahnung wieso
    Ist aber sekundär

    Im Moment ist noch gar nichts zu sehen auf meinem Blog
    Nach Versuchen, nehme ich jeweils den Durchgang durch meine function wieder heraus.
    Es sieht einfach schlimm aus wenn alles in der noch viel zu grossen Schrift kommt
    Auch mein HTML Videoeinbindcode, u.s.w

    Das Weichenproblem steht nun dicht vor der Bearbeitung
    wird aber fast ganz sicher länger dauern als befürchtet.
     
    #10 kieselsteine, 5. November 2013
    Zuletzt bearbeitet: 5. November 2013
  11. Melewo

    Melewo Well-Known Member

    Registriert seit:
    8. Juli 2013
    Beiträge:
    3.097
    Zustimmungen:
    0
    Einige Probleme lassen sich vermeiden, in dem Du eine fertig bearbeitete Datei im Editor nach UTF-8 konvertierst und speicherst. Deine Demo-Seite

    http://www.kieselsteine.ch/1buchstaben/schreib3.php

    wird mit

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    ausgeliefert, da benötigst Du dann utf8_decode, ist richtig. Wenn Du die aber mit UTF-8 speichern und ausliefern würdest, so sollte sich utf8_decode erübrigen. Ist ja kein Fehler, außerhalb von WP benutze ich bislang ebenfalls ISO-8859-1 oder Windows-1252. Wenn es aber ein Script für WP werden soll, dann halt UTF-8.
     
  12. Nevery

    Nevery Well-Known Member

    Registriert seit:
    15. Oktober 2013
    Beiträge:
    404
    Zustimmungen:
    0
    Wie hast Du den Pfad denn angegeben? Relative Pfade in dem Sinne nimmt Wordpress leider nicht, da könntest Du es - wenn Du nicht bei der jetztigen Variante bleiben willst - mal mit bloginfo('template_url'); probieren.
    Zu dem Rest kann ich leider nicht viel sagen.
     
  13. Melewo

    Melewo Well-Known Member

    Registriert seit:
    8. Juli 2013
    Beiträge:
    3.097
    Zustimmungen:
    0
    Neben bloginfo gibt es dann noch weitere, wie home_url("/seite/") oder site_url("/seite/"), für Plugins plugins_url("/datei.php", __FILE__) oder für Arbeitsverzeichnisse dirname(__FILE__).DIRECTORY_SEPARATOR."datei.php" und noch ein paar, die ich bisher noch nicht ausprobierte.

    Lasse Dir Zeit, wenn Dich niemand treibt, doch schaue Dir unterschiedliche Varianten mal an, auch wenn es dann zwischendurch Weihnachten wird. Der Thread lässt sich ja immer mal wieder auffrischen.
     
  14. kieselsteine

    kieselsteine Member

    Registriert seit:
    3. November 2013
    Beiträge:
    19
    Zustimmungen:
    0
    Hallo miteinander!

    Ich habe es geschafft!
    http://kieselsteine.ch/wordpress/wordpress/?p=107
    Ich danke Euch für Eure grosse Hilfe.
    Ich hatte ja am Anfang eine viel zu grosse Schrift gezeichnet in GIMP
    mit insgesammt 430 verschiedenen Zeichen, da jedes Zeichen fünf verschiedene Varianten hat zur random Auswahl.
    Nun dachte ich zuerst ich muss das alles noch einmal zeichen....
    Bis mir in den Sinn kam, dass ich früher einmal ein Videotutorial gemacht hatte, wie man in Photoshop Stapelverarbeitung macht. Ich wusste natürlich überhaupt nicht mehr wie das geht, konnte es aber in meinem eigenen Videotutorial easy wieder lernen. So konnte ich aus der zu grossen Schrift im Eilschritt fünf kleine Schriften machen und erst noch mit verschiedenen Farben und verschiedenen Grössen!
    Das war cool!
    Ich weiss das ginge in GIMP auch, es gibt dazu ein Adons, ich weiss jetzt leider den Namen nicht mehr. Matlap oder so.
    Aber für das einarbeiten in dieses Adons fehlte mir dank Vorfreude auf meine neuen Schriften die Geduld.
    Na ja zur Not tut es auch einmal der Photoshop...;)
    Das Anlegen der Weiche war für mich noch knackig. Mit meinen Hobby PHP Kenntniss kam ich ganz schön ins schwimmen. Gestern Abend dann der Durchbruch.
    Jetzt sind meine Schriften in mein selber gemachtes Themes eingebaut.
    Ich muss nur mein Codezeichen setzen und dann eine Zahl zwischen 1 und fünf, und er wählt die richtige Schrift. wenn ich nach dem Codezeichen eine 0 schreibe, schreibt er bis zum nächsten Codezeichen alles normal. So kann ich auch weiter hin HTML implementieren!
    Ich kann nun HTML auch mit meinen Schriften schreiben.
    Dann führt er das nicht aus sondern schreibt es.
    Das war bis jetzt immer sehr mühsam mit den ganzen Quot und & Zaubercoden, damit er das nicht umsetzt, sondern schreibt.
    Wenn nun der Leser allerdings den Code kopieren möchte denn ich schreibe, hat er etwas mehr arbeit. Er muss ihn nähmlich abschreiben. Doch Code abschreiben ist das A und O um Scriptsprachen zu lernen, also auch nicht wirklich schlimm.
    Ich fliege gerade auf einem kleinen Zwischenhoch.
    Von jetzt an kann ich die Schriften in allen meinen Beiträgen einsetzen und mit Codezeichen und 0 davor sogar mit HTML platzieren wie ich will
    Danke nochmals allen für die Hilfen.

    liebe Grüsse
    patrick

    PS;
    Falls jemand sehen möchte wie ich dass zusammengebastelt habe, habe ich ich hier mein Themes noch in ein .zip gepackt und zum download hochgelden.
    Natürlich könnte das eine PHP Spezialistin viel eleganter und besser lösen...
    Das Themes darf auch gebraucht werden. Open source ist die Zukunft.
    Nur müsste man halt in der Sidebar.php meine Seitenelemente herauslöschen
    http://kieselsteine.ch/eigenes2.zip
    Die Buchstaben muss ich nicht hochladen, da Wordpress nur absulute Pfade akzeptiert, wird die function die Buchstaben auf meinem Server suchen.
    Da ich grosse Freude habe an meiner Schrift, ist auch Garantie, dass die Buchstaben dort sicher nie gelöscht werden
     
    #14 kieselsteine, 9. November 2013
    Zuletzt bearbeitet: 9. November 2013
  15. kieselsteine

    kieselsteine Member

    Registriert seit:
    3. November 2013
    Beiträge:
    19
    Zustimmungen:
    0
    Ach so
    Das Codezeichen ist bis jetzt noch das grosse X
    Ich wollte eigentlich underline nehmen, doch da hat er irgendwie trotz Backslash gebockt.
    Ein grosses X steht somit auch in der Schrift nicht mehr zur Verfügung.
    Ich denke aber damit kann man leben.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden