Hallo!
Ich habe das Problem, dass der Benutzer in meinem Blog -nach der Eintragung eines Kommentars zu einer Seite- zu einer Post-Übersicht weitergeleitet wird, anstatt bei der Seite zu bleiben. Kennt jemand eine Lösung dafür? Ich finde die Funktion irgendwie nicht in den *.php's.
MfG
Problem: Nach Kommentar folgt falsche Seite
-
-
- Gerade eben
- 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)
-
Ist das auch beim Standardtheme so?
Mal alle Plugins deaktiviert? -
Leider ja. Ich benutze folgendes theme:
http://www.spaceperson.net/2010/03/19/under-the-influence/
Das Problem tritt aber auch bei anderen themes auf.
Daraus habe ich geschlossen, das es vielleicht an meiner "wp-comments-post.php" liegt. So gut bin ich in PHP aber nicht, dass ich die Datei durchschaue.PHP
Alles anzeigen<?php /** * Handles Comment Post to WordPress and prevents duplicate comment posting. * * @package WordPress */ if ( 'POST' != $_SERVER['REQUEST_METHOD'] ) { header('Allow: POST'); header('HTTP/1.1 405 Method Not Allowed'); header('Content-Type: text/plain'); exit; } /** Sets up the WordPress Environment. */ require( dirname(__FILE__) . '/wp-load.php' ); nocache_headers(); $comment_post_ID = isset($_POST['comment_post_ID']) ? (int) $_POST['comment_post_ID'] : 0; $status = $wpdb->get_row( $wpdb->prepare("SELECT post_status, comment_status FROM $wpdb->posts WHERE ID = %d", $comment_post_ID) ); if ( empty($status->comment_status) ) { do_action('comment_id_not_found', $comment_post_ID); exit; } elseif ( !comments_open($comment_post_ID) ) { do_action('comment_closed', $comment_post_ID); wp_die( __('Sorry, comments are closed for this item.') ); } elseif ( in_array($status->post_status, array('draft', 'future', 'pending') ) ) { do_action('comment_on_draft', $comment_post_ID); exit; } elseif ( 'trash' == $status->post_status ) { do_action('comment_on_trash', $comment_post_ID); exit; } elseif ( post_password_required($comment_post_ID) ) { do_action('comment_on_password_protected', $comment_post_ID); exit; } else { do_action('pre_comment_on_post', $comment_post_ID); } $comment_author = ( isset($_POST['author']) ) ? trim(strip_tags($_POST['author'])) : null; $comment_author_email = ( isset($_POST['email']) ) ? trim($_POST['email']) : null; $comment_author_url = ( isset($_POST['url']) ) ? trim($_POST['url']) : null; $comment_content = ( isset($_POST['comment']) ) ? trim($_POST['comment']) : null; // If the user is logged in $user = wp_get_current_user(); if ( $user->ID ) { if ( empty( $user->display_name ) ) $user->display_name=$user->user_login; $comment_author = $wpdb->escape($user->display_name); $comment_author_email = $wpdb->escape($user->user_email); $comment_author_url = $wpdb->escape($user->user_url); if ( current_user_can('unfiltered_html') ) { if ( wp_create_nonce('unfiltered-html-comment_' . $comment_post_ID) != $_POST['_wp_unfiltered_html_comment'] ) { kses_remove_filters(); // start with a clean slate kses_init_filters(); // set up the filters } } } else { if ( get_option('comment_registration') || 'private' == $status->post_status ) wp_die( __('Sorry, you must be logged in to post a comment.') ); } $comment_type = ''; if ( get_option('require_name_email') && !$user->ID ) { if ( 6 > strlen($comment_author_email) || '' == $comment_author ) wp_die( __('Error: please fill the required fields (name, email).') ); elseif ( !is_email($comment_author_email)) wp_die( __('Error: please enter a valid email address.') ); } if ( '' == $comment_content ) wp_die( __('Error: please type a comment.') ); $comment_parent = isset($_POST['comment_parent']) ? absint($_POST['comment_parent']) : 0; $commentdata = compact('comment_post_ID', 'comment_author', 'comment_author_email', 'comment_author_url', 'comment_content', 'comment_type', 'comment_parent', 'user_ID'); $comment_id = wp_new_comment( $commentdata ); $comment = get_comment($comment_id); if ( !$user->ID ) { $comment_cookie_lifetime = apply_filters('comment_cookie_lifetime', 30000000); setcookie('comment_author_' . COOKIEHASH, $comment->comment_author, time() + $comment_cookie_lifetime, COOKIEPATH, COOKIE_DOMAIN); setcookie('comment_author_email_' . COOKIEHASH, $comment->comment_author_email, time() + $comment_cookie_lifetime, COOKIEPATH, COOKIE_DOMAIN); setcookie('comment_author_url_' . COOKIEHASH, esc_url($comment->comment_author_url), time() + $comment_cookie_lifetime, COOKIEPATH, COOKIE_DOMAIN); } $location = empty($_POST['redirect_to']) ? get_comment_link($comment_id) : $_POST['redirect_to'] . '#comment-' . $comment_id; $location = apply_filters('comment_post_redirect', $location, $comment); wp_redirect($location); ?> -
an den plugins liegt es auch nicht.
-
Code bitte demnächst auch entsprechend formatieren. Vereinfacht das Lesen ungemein...
Gibt's nen Link wo man sich das mal ansehen kann?
-
sorry für die Formatierung. Ich benutze immer den Notepad++-Editor, der formatiert automatisch; ist mir überhaupt nicht aufgefallen.
"Gibt's nen Link wo man sich das mal ansehen kann?"
Geht leider nicht; ist eine passwortgeschützte Familien- und Freundehomepage -
Ich meinte eigentlich die Formatierung beim Posten in diesem Forum. Der Editor hier bietet extra 3 Buttons um Code auch als solchen zu kennzeichnen ;-)
Nutzt Du für den "internen Bereich" Plugins, die entsprechende Bereiche sperren, oder eine .htaccess Datei, in der die Weiterleitung drinstecken könnte?
-
Ich habe das Verzeichnis mit htaccess geschützt. (Die gesamte Installation ist in dem Verzeichnis). Das Problem tritt auch ohne Passwortschutz auf.
Danke für Eure Hilfe.
@jottlieb: Danke fürs Formatieren. Kommt nicht wieder vor.
-
Fehler konkret
Ich kann den Fehler nun genauer beschreiben. Er tritt unabhängig von Passwortschutz und (de-)aktivierten Plugins und bei jedem Theme auf.
Also:
Wenn eine Seite als Startseite deklariert wird, so landet man nach dem Verfassen eines Kommentars auf eben dieser Seite in der obersten Beitragsketegorie mit der Betragsübersicht.
Ebenso, wenn man auf Links wie "XXX at Startseite" in der Sidebar klickt.
Das Problem tritt nicht bei anderen Seiten auf.
MfG registriert.
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!