web-dev-qa-db-fra.com

Comment exporter des commentaires dans WordPress?

Je souhaite exporter mes commentaires vers Excel, PDF ou Word. Le format n'a pas vraiment d'importance, je veux juste qu'ils soient exportés.

J'ai essayé le Export Comments plugin, le plugin standard, mais je n'ai pas réussi à le faire fonctionner, je dois le faire manuellement.

Tout le monde peut suggérer quelque chose sur ce sujet?

8
M3o

Option 1

Comme l'article lié par @ MikeMadern suggère:

  • dans le panneau de configuration de votre hôte Web, accédez à PHPMyAdmin

  • sélectionnez la table wp_comments

  • sélectionner Export, configurez le format

    export mysql

  • plus bas dans le même écran, sélectionnez le Save as file et Go

    enter image description here

Option 2

Ou , comme le même article le suggère, utilisez simplement un plugin:

Commentaires d'exportation

Extrait les commentaires de votre base de données WordPress pour des sauvegardes ou des analyses.

Si vous avez activé WP_DEBUG, le plug-in supprime quelques avertissements, mais ce n'est pas essentiel et cela fonctionne comme prévu.

Option 3

Vient de récupérer un ancien script et adapté à WordPress (en utilisant la requête de Export Comments comme exemple). Placez le fichier à la racine de WP installation et accédez-y directement, il exportera un fichier Excel avec les commentaires.

Ce serait beaucoup mieux d'avoir ceci comme plugin avec les contrôles de sécurité et tout.
Supprimer du serveur après avoir utilisé . Ou peut-être le mettre dans un dossier sous le nom index.php et définir un mot de passe .htaccess.

<?php
define( 'WP_USE_THEMES', false );
require( './wp-load.php' );

global $wpdb;
$query = "SELECT * FROM $wpdb->comments 
    WHERE 1 = 1 
    AND ( comment_approved = '1' OR comment_approved = '0' ) 
    ORDER BY comment_ID DESC";

$error = "Error: the query failed...
    <pre style='width:700px;Word-wrap:break-Word;white-space:normal;'>$query</pre>";

$result = $wpdb->get_results( $query, ARRAY_A ) or wp_die( $error );

$header = array_keys( $result[0] );
$html = array();
$html[] = "<tr><td>" .implode( "</td><td>", $header ) . "</td></tr>";

foreach( $result as $row )
{
    $html[] = "<tr><td>" .implode( "</td><td>", $row ) . "</td></tr>";
}

$html = "<table>" . implode( "\r\n", $html ) . "</table>";

$fileName = 'Comments_' . date("Ymd") . '.xls';
header( "Content-type: application/vnd.ms-Excel" ); 
header( "Content-Disposition: attachment; filename=$fileName" );

echo $html;
exit();
3
brasofilo