Vorhandene Dareien verwenden.

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
sabine_baer
Regular
Posts: 6
Joined: Fri Oct 25, 2013 11:52 am

Vorhandene Dareien verwenden.

Post by sabine_baer »

Hallo,
Ich bin Serendipity-Neuling und habe eine Frage zum Erstellen von Entries:
Kann ich vorhandene Dateien als Body verwenden, so in etwa mit einem Befehl "kpire den Inhalt von Datei X als Body in Entry Y"?

Ich habe eine Datei in die Mediendatenbank hochgeladen, aber es wird nur ein Link auf diese Datei erzeugt, wenn sich sie in einem Entry verwende.

Sabine
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Vorhandene Dareien verwenden.

Post by Timbalu »

Hallo und Willkommen!

Nein, das geht so leider nicht! :)

Sicher könnte man dafür ein Plugin schreiben, aber das würde mindestens in genauso viele Arbeitsschritte ausarten, wie den Inhalt selber zu kopieren und in ein entryform Feld zu werfen.

Allerdings würde es mich auch nicht wundern, wenn es solches schon irgendwo gäbe und ich nichts davon wüsste...
Getreu dem Motto: „Sicher ist, dass nichts sicher ist. Selbst das nicht.“ (Joachim Ringelnatz)

Edit:
Natürlich ginge das, wenn die Datei ein Bild ist, aber dann wird natürlich nur das Bild angezeigt - aber so herum war das wahrscheinlich auch nicht gefragt - oder?
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
sabine_baer
Regular
Posts: 6
Joined: Fri Oct 25, 2013 11:52 am

Re: Vorhandene Dareien verwenden.

Post by sabine_baer »

Danke fuer die Antwort.
Nein, es geht nicht um Bilder, sondern um schlichte *.txt, die auf dem Rechner bereits vorhanden sind.

Sabine
Dergln
Regular
Posts: 54
Joined: Thu Jun 23, 2011 8:18 pm
Location: Hessen
Contact:

Re: Vorhandene Dareien verwenden.

Post by Dergln »

Hi,

wozu den Umweg über eine Datei, die hochgeladen werden muss ?

Einfach den WYSIWYG-Editor in den Profileinstellungen aktivieren und dann wird auch jeder Umbruch von Notepad problemlos übernommen.

Gruß
sabine_baer
Regular
Posts: 6
Joined: Fri Oct 25, 2013 11:52 am

Re: Vorhandene Dareien verwenden.

Post by sabine_baer »

[quote="Dergln"]Hi,

> wozu den Umweg über eine Datei, die hochgeladen werden muss ?

Das ist fuer mich kein "Umweg", da ich nicht immer vor dem Monitor sitze, an dem ich ein seredipity_entry produzieren kann. Eher selten sogar.

> Einfach den WYSIWYG-Editor in den Profileinstellungen aktivieren und dann wird auch jeder Umbruch von
> Notepad problemlos übernommen.

Das verstehe ich nicht.

Sabine
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Vorhandene Dareien verwenden.

Post by Timbalu »

sabine_baer wrote:Das ist fuer mich kein "Umweg", da ich nicht immer vor dem Monitor sitze, an dem ich ein seredipity_entry produzieren kann. Eher selten sogar.
Nur, der Punkt ist doch der, du musst die text Datei ja doch in der Media Library oder wo auch immer hochladen.
Diese paar Klicks sind nicht mehr oder weniger aufwendig, als den Text-Inhalt zu markieren und in das vorbereitete entryform Feld zu werfen.

Wenn es sich darum drehen würde, dass du viele alte herumliegende text Dateien auf einmal gerne als einzelne Entries in deinem Blog (automatisiert abgearbeitet) posten würdest, dann könnte man mit ein wenig Programmierung solches sicher bewerkstelligen (wenn sich jemand oder du dafür die Zeit nimmt).
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
sabine_baer
Regular
Posts: 6
Joined: Fri Oct 25, 2013 11:52 am

Re: Vorhandene Dareien verwenden.

Post by sabine_baer »

Timbalu wrote:
sabine_baer wrote:Das ist fuer mich kein "Umweg", da ich nicht immer vor dem Monitor sitze, an dem ich ein seredipity_entry produzieren kann. Eher selten sogar.
Nur, der Punkt ist doch der, du musst die text Datei ja doch in der Media Library oder wo auch immer hochladen.
Diese paar Klicks sind nicht mehr oder weniger aufwendig, als den Text-Inhalt zu markieren und in das vorbereitete entryform Feld zu werfen.

Ja, das ist mir klar bzw. ich weiss gar nicht, wie ich das machen sollte.

Wenn es sich darum drehen würde, dass du viele alte herumliegende text Dateien auf einmal gerne als einzelne Entries in deinem Blog (automatisiert abgearbeitet) posten würdest, dann könnte man mit ein wenig Programmierung solches sicher bewerkstelligen (wenn sich jemand oder du dafür die Zeit nimmt).
Nein, nicht viele, nur einzelne, die ich anderenorts erstellt habe, mit einem Editor.

Aber ich weiss ja nun definitiv, dass das - jedenfalls nicht einfach - geht.

Also, nochmals danke für die Antworten,

Sabine
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Vorhandene Dareien verwenden.

Post by Timbalu »

sabine_baer wrote:Ja, das ist mir klar bzw. ich weiss gar nicht, wie ich das machen sollte.
Widerspricht sich irgendwie... :roll: ist das dein Ernst?

1. Öffne die txt-Datei, markiere alles, kopiere mit [Strg]+[C],
2. Öffne Browser, dein Blog, dein Backend, logge ein, öffne Seitenleisten Link "Neuer Eintrag",
3. Befülle das entryform mit [Strg]+[V] im Eintrags-Feld, oder verteilt auf beide textareas.
4. Erstelle Titel, überprüfe Kategorie, und Veröffentlichung und dann ab damit mit "Speichern".
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
sabine_baer
Regular
Posts: 6
Joined: Fri Oct 25, 2013 11:52 am

Re: Vorhandene Dareien verwenden.

Post by sabine_baer »

Timbalu wrote:
sabine_baer wrote:Ja, das ist mir klar bzw. ich weiss gar nicht, wie ich das machen sollte.
Widerspricht sich irgendwie... :roll: ist das dein Ernst?

1. Öffne die txt-Datei, markiere alles, kopiere mit [Strg]+[C],
2. Öffne Browser, dein Blog, dein Backend, logge ein, öffne Seitenleisten Link "Neuer Eintrag",
3. Befülle das entryform mit [Strg]+[V] im Eintrags-Feld, oder verteilt auf beide textareas.
4. Erstelle Titel, überprüfe Kategorie, und Veröffentlichung und dann ab damit mit "Speichern".
Ich meinte, den Body zu erstellen _ohne_ das Fenster im Browser. Das einzige, was mir einfiele (aber ich werde es nicht weiter verfolgen), ist ein "insert into serendipity_entries…", also, direkt in die Datenbank einlesen. Aber da ist Kopieren und Einfügen doch allemal einfacher.

Sabine
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Vorhandene Dareien verwenden.

Post by Timbalu »

Da ist gut - ich dachte schon, das bezöge sich eventuell auf
Timbalu wrote:Diese paar Klicks sind nicht mehr oder weniger aufwendig, als den Text-Inhalt zu markieren und in das vorbereitete entryform Feld zu werfen.
sabine_baer wrote:Ja, das ist mir klar bzw. ich weiss gar nicht, wie ich das machen sollte.
sabine_baer wrote:also, direkt in die Datenbank einlesen. Aber da ist Kopieren und Einfügen doch allemal einfacher.
Ja. Und sicherer! Da du dafür wissen müsstest, wie Serendipity Einträge intern für den Datenbankeintrag aufbereitet. :)
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Vorhandene Dareien verwenden.

Post by garvinhicking »

Hi!

Evtl ist es praktikabler eine der "externen" Inhaltspflege-Möglichkeiten zu nutzen: POPFetcher oder mail2s9y Script, um Mails als Blogeinträge zu erstellen, oder das "XMLRPC"-Plugin, mit dem man z.b. Windows Live Writer o.ä. nutzen kann?

Alternativ kann man natürlich auch ein recht simples Plugin basteln dass einfach ein per FTP gepflegtes Verzeichnis via cronjob regelmäßig ausliest, und aus der Textdatei dann via serendipity_updertEntry() den Blogeintrag erstellt und danach die .txt Datie umbenennt/löscht:

Code: Select all

<?php
// s9y api:
include 'serendipity_config.php';

// Paar variablen faken:
$serendipity['POST']['properties']['dummy'] = 'dummy';
$_SESSION['serendipityRightPublish'] = true;

// Verzeichnis auslesen
$dh = opendir('txtverzeichnis');
while($file = readdir($dh)) {
  if (preg_match('@\.txt$@i', $file)) {
    $body = file_get_contents($file);
    $entry = array(
      'body' => $body,
      'isdraft' => 'false',
      'title' => $file,
      'authorid' => 1
    )
    $id = serendipity_updertEntry($entry);
    echo $file . " als #" . $id . " gespeichert.\n";
    rename($file, $file . '.saved');
  }
}
(nicht getestet...)
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
sabine_baer
Regular
Posts: 6
Joined: Fri Oct 25, 2013 11:52 am

Re: Vorhandene Dareien verwenden.

Post by sabine_baer »

garvinhicking wrote:Hi!

Evtl ist es praktikabler eine der "externen" Inhaltspflege-Möglichkeiten zu nutzen: POPFetcher oder mail2s9y Script, um Mails als Blogeinträge zu erstellen, oder das "XMLRPC"-Plugin, mit dem man z.b. Windows Live Writer o.ä. nutzen kann?

Alternativ kann man natürlich auch ein recht simples Plugin basteln dass einfach ein per FTP gepflegtes Verzeichnis via cronjob regelmäßig ausliest, und aus der Textdatei dann via serendipity_updertEntry() den Blogeintrag erstellt und danach die .txt Datie umbenennt/löscht:

Code: Select all

<?php
// s9y api:
include 'serendipity_config.php';

// Paar variablen faken:
$serendipity['POST']['properties']['dummy'] = 'dummy';
$_SESSION['serendipityRightPublish'] = true;

// Verzeichnis auslesen
$dh = opendir('txtverzeichnis');
while($file = readdir($dh)) {
  if (preg_match('@\.txt$@i', $file)) {
    $body = file_get_contents($file);
    $entry = array(
      'body' => $body,
      'isdraft' => 'false',
      'title' => $file,
      'authorid' => 1
    )
    $id = serendipity_updertEntry($entry);
    echo $file . " als #" . $id . " gespeichert.\n";
    rename($file, $file . '.saved');
  }
}
(nicht getestet...)

Sorry, dass ich erst jetzt antworte und mich bedanke. Da ich kein PHP "spreche", konnte ich mit Deinem Code nicht so viel anfangen, aber ich habe jetzt einen Weg gefunden. Damit kann ich kein neues Entry produzieren, aber ein vorhandenes aendern, naemlich mit - in der Datenbank -
\i $FILE
wobei $FILE = eine Datei mit dem Inhalt
UPDATE serendipity_entries set body='$TEXT' where id=[$ID-des-vorhandenen-entry];

$TEXT ist der mit den Moeglichkeiten des normalen Editors, mit dem der $FILE erstellt wird, hereinkopierte text der Originaldatei. Ich musste die Zeilenenden noch durch <BR> ersetzten und das wars.

Sabine
Post Reply