Comentarios personalizados - Respuesta principal / anidada

4

Estoy creando un tema personalizado y he editado comments.php, pero no puedo hacer que los comentarios se guarden como respuesta a otro comentario. He logrado mostrar el ID de los padres del comentario para mostrarlo como un valor oculto en el código fuente, pero no lo guarda en consecuencia en la base de datos (en cambio, siempre guarda el comment_parent como 0). Además, la dirección IP del comentarista tampoco se guarda por algún motivo (comment_author_IP aparece como ":: 1"). Aquí está el código que tengo hasta ahora:

    <?php
    if ( post_password_required() )
        return;
?>

    <div id="comments" class="comments-area">

    <?php // You can start editing here -- including this comment!

    $fields = array(
    'author'               => '<p class="comment-form-author"><label for="author">' . __( 'Name', 'domainreference' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) . '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' /></p>',
    'email'                => '<p class="comment-form-email"><label for="email">' . __( 'Email', 'domainreference' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) . '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . ' /></p>'
    );

    $defaults = array(
    'fields'               => apply_filters( 'comment_form_default_fields', $fields ),
    'comment_field'        => '<p class="comment-form-comment"><label for="comment">' . _x( 'Comment', 'noun' ) . '</label><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea></p><p class="comment-form-math"><label for="math">' . __( 'five plus two', 'domainreference' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) . '<input id="math" name="math" type="text" value="' . esc_attr( $commenter['math'] ) . '" size="30"' . $aria_req . ' /></p></p><input type=\'hidden\' name=\'comment_post_ID\' value=\'\' id=\'comment_post_ID\' /><input type=\'hidden\' name=\'comment_parent\' id=\'comment_parent\' value=\''.$comment_parent.'\' />',
    'must_log_in'          => '<p class="must-log-in">' .  sprintf( __( 'You must be <a href="%s">logged in</a> to post a comment.' ), wp_login_url( apply_filters( 'the_permalink', get_permalink( ) ) ) ) . '</p>',
    'logged_in_as'         => '<p class="logged-in-as">' . sprintf( __( 'Logged in as <a href="%1$s">%2$s</a>. <a href="%3$s" title="Log out of this account">Log out?</a>' ), admin_url( 'profile.php' ), $user_identity, wp_logout_url( apply_filters( 'the_permalink', get_permalink( ) ) ) ) . '</p>',
    'comment_notes_before' => '<p class="comment-notes">' . __( 'Your email address will not be published. Required fields are marked *' ) . ( $req ? $required_text : '' ) . '</p>',
    'comment_notes_after'  => '',
    'id_submit'            => 'submit',
    'title_reply'          => __( 'Leave a Reply' ),
    'title_reply_to'       => __( 'Leave a Reply to %s' ),
    'comment_form_title'       => __( 'Leave a Reply', 'Leave a Reply to %s' ),
    'cancel_reply_link'    => __( 'Cancel reply' ),
    'label_submit'         => __( 'Post Comment' )
    );

    comment_form($defaults);
    ?>

</div><!-- #comments .comments-area -->
    
pregunta Pamela 11.03.2013 - 01:53

1 respuesta

1

Si su problema de IP se resolvió, está bien. ¿Probó la opción en WordPress?

configuración- > discusión- > ¿Habilitar comentarios en subprocesos (anidados)?

Podría resolver su problema de base de datos también si funciona.

    
respondido por el Cid Ubaid 04.06.2013 - 21:34

Lea otras preguntas en las etiquetas