Notify Authors Plugin umschreiben->Postauthor benachrichtigen

  • Hi :p

    ich würde gerne das Plugin Notify Authors extended so umschreiben, dass es anstatt alle User ausser dem Author, keinen User und NUR den Author des jeweiligen Posts benachrichtigt der gerade veröffentlicht wurde.

    Nu bin ich aber nicht gerade ein .php Profi und dachte da dass hier sicherlich noch andere brauchen könnten, weils einfach praktisch für den User bzw. Author ist, hilft mir wer ^^


    Würd mich über jede Antwort und Hilfestellung freuen...:rolleyes:

    P.S Ich poste den Code für das Plugin mal im zweiten Post da es sonst zulang wird.

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • mhhh

    ok gleich austesten, aber sehe ich dass richtig dass dann zusätzlich auch der Author informiert wird, aber auch alle anderen Authoren ? :D

  • Also ich habe zusätzlich noch folgendes geändert:

    PHP
    $user_data = get_userdatabylogin( $user->ID );

    und

    PHP
    $authordata = get_userdatabylogin( $post->post_author );


    Weil ich jetzt erst gemerkt habe dass es mit WP 2.0 ja garnicht kompatibel ist

    Nur klappen tuts immer noch nicht leider. Was ist denn der Unterschied zwischen wp 1.5 und wp 2.0 kompatiblen Plugs? Sind es die Datenbankabfragen oder was ist es?

  • Zitat

    aber sehe ich dass richtig dass dann zusätzlich auch der Author informiert wird, aber auch alle anderen Authoren ? :D

    Nein, das dreht eigentlich die Abfrage genau um, so wie oben gewünscht:

    Zitat

    anstatt alle User ausser dem Author, keinen User und NUR den Author des jeweiligen Posts

    Zitat

    Was ist denn der Unterschied zwischen wp 1.5 und wp 2.0 kompatiblen Plugs?

    :confused:

    Zitat

    Nur klappen tuts immer noch nicht leider.

    Was genau klappt nicht? Gar keine Mail? Mail an den falschen?

  • Hi,

    nein leider garkeine Mail.

    Plugin ordnungsgemäß installiert, einmal im abgeänderten Zustand getestet und dann im Originalzustand, beide Male wurde garkeine Mail gesendet.

    Die Frage ist, warum nicht ^^ Das es nicht mit 2.0.2 kompatibel ist, ist dann ja klar...Ich würds gerne anpassen, aber bin wirklich noch absoluter .php Anfänger, die Abfragen die ich oben abgeändert habe, hab ich mir aus kompatiblen plugs abgeguggt, aber ob's richtig ist?

  • Könnte an den Servereinstellungen liegen. Bei Hosteurope z.B. muss man erst eine Standard-Mail-Adresse als Absender einstellen (s. z. B. diesen Thread). Kannst du ansonsten mit PHP Mails verschicken?

    Einfacher Test:

    In eine beliebige php-Datei auf dem Server, z.B. deine index.php, die folgende Zeile einfügen (deine E-Mail-Adresse einsetzen):

    PHP
    <?php mail('deine@e-mail-adresse.de','Testmail','Es klappt'); ?>

    und die Datei einmal aufrufen (die Zeile wieder entfernen, sonst kriegst du die Mail jetzt bei jedem Seitenaufruf). Binnen kurzer Zeit solltest du eine Mail erhalten. Wenn ja, ist serverseitig alles in Ordnung.

    Einmal editiert, zuletzt von spickzettel (19. April 2006 um 18:23)

  • Ne Servereinstellungen sinds denke ich nicht, da alle anderen Mails auch funktionieren...

    Es liegt einfach daran das dass Plugin in Wordpress 2.0+ net funzt, dass meine ich ja worin unterscheiden sich kompatible und nicht kompatible Plugins für 2.0+ ?

    Irgendwas scheint da ja falsch deklariert zu sein im Script, denn ich bin nicht der einzige bei dem es so nicht funzt wie ich jetzt heraufgefunden habe

  • Ja hat geklappt, habe die Testmail bekommen :p

    Aber das Plugin tut leider garnichts wie bisher auch.

    Irgendwie muss man das Ding doch zum laufen kriegen...?!

    Einmal editiert, zuletzt von MarcMokka (19. April 2006 um 19:31)

  • Hat mir natürlich keine Ruhe gelassen :D

    Zwei Änderungen sind nötig:

    PHP
    function notify_users() {
        global $wpdb, $post_ID;

    ändern in:

    PHP
    function notify_users($post_ID) {
        global $wpdb;

    und

    PHP
    $users = $wpdb->get_results( "SELECT ID FROM $wpdb->users WHERE user_level >".$userlevel );

    ändern in:

    PHP
    $users = $wpdb->get_results( "SELECT ID FROM $wpdb->users" );

    (User level gibt in dieser Form in 2.0 nicht mehr, stattdessen Roles und Capabilities. Das noch umzusetzen ist mir jetzt aber zu kompliziert. ;))


    Bei mir läuft's jedenfalls jetzt so.

  • Zitat von spickzettel

    Hat mir natürlich keine Ruhe gelassen :D


    Natürlich nicht ;)


    Mhhhhh, du bist ja ein ganz geiler...Es funktioniert :D DANKE!

    Ok, etwas verfeinern noch das ganze, es hat mir 8 E-Mails geschickt, aber dass Prinzip geht =) Ich glaube Userlevel sind eh egal oder, weil dass Ding soll ja nur dem Author eines Posts eine Mitteilung senden wenn sein Post veröffentlicht wurde.

    Also darum brauchste dir keine gedanken zu machen, würd ich nie verlangen von dir jetzt auch noch die Userlevel zu machen ;)

    Aber könntest mir evtl. sagen wie ich verhindere das die E-Mail so oft abgesendet wird? ^^ Habs eben nochmal getestet und wieder 4 stck. bekommen...also immer 4 E-Mails pro Artikel den ich veröffentliche.

    Kann es sein weil ich ein paar Google Ads und andere Sachen in den Header per include gesteckt habe und eine Browsererennung eingebaut hab, dass deswegen die Seite öfter geladen wird und demzufolge die Mail auch öfter versendet wird?

    gibs da sowas?

    Code
    if($user->ID = $post->post_author) {
                $user_data = get_userdata( $user->ID );
                
                mail( $user_data->user_email,
    [B]SEND EINMAL Oo[/B]
    $subject,
                      $text,
                      "From: " . $fromName . " <" .$fromEmail. ">" );

    Einmal editiert, zuletzt von MarcMokka (20. April 2006 um 22:23)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!