Page 1 of 1

Vorhandene Dareien verwenden.

Posted: Sat Oct 26, 2013 8:10 pm
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

Re: Vorhandene Dareien verwenden.

Posted: Sat Oct 26, 2013 8:23 pm
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?

Re: Vorhandene Dareien verwenden.

Posted: Sun Oct 27, 2013 3:49 am
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

Re: Vorhandene Dareien verwenden.

Posted: Mon Oct 28, 2013 12:13 am
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ß

Re: Vorhandene Dareien verwenden.

Posted: Mon Oct 28, 2013 5:32 am
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

Re: Vorhandene Dareien verwenden.

Posted: Mon Oct 28, 2013 10:23 am
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).

Re: Vorhandene Dareien verwenden.

Posted: Mon Oct 28, 2013 10:49 am
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

Re: Vorhandene Dareien verwenden.

Posted: Mon Oct 28, 2013 11:19 am
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".

Re: Vorhandene Dareien verwenden.

Posted: Mon Oct 28, 2013 12:09 pm
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

Re: Vorhandene Dareien verwenden.

Posted: Mon Oct 28, 2013 1:33 pm
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. :)

Re: Vorhandene Dareien verwenden.

Posted: Tue Oct 29, 2013 3:17 pm
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...)

Re: Vorhandene Dareien verwenden.

Posted: Mon Jan 06, 2014 8:35 am
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