0
4

1 に答える 1

1

フックを使用してこれを行うための純粋な PHP の方法をかなり探しましたが、そうではないと思います。コメント テーブル内の HTML のほとんどは、簡単に拡張できるファイル内の echo を介して出力さwp-admin/includes/class-wp-comments-list-table.phpれますが、拡張されたクラスをロードするように Wordpress に指示する方法がわかりませんでした。

とにかく、admin_footerこれは、表示されているページがedit-comments.php.

.phpこれをファイルに入れて、wp-content/pluginsフォルダーに追加できます。WP Admin に移動し、プラグインを有効にします。私はそれを呼んだComment IP Address Blacklist Lookup

これがコードです。何もするつもりはないので、GPL コードとしてリリースします。助けを求めたり、改善点を提案したりしてください。

<?php
/*
Plugin Name: Comment IP Address Blacklist Lookup
Plugin URI: http://example.com
Description: Changes the IP address link in the comment list to MXToolbox.com's blacklist check
Author: Drew Phillips
Version: 0.1
Author URI: https://www.drew.co.il
*/

/*  Copyright (C) 2012 Drew Phillips

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
*/

require_once ABSPATH . '/wp-includes/pluggable.php';

// Admin menu and admin functions below...

add_action('admin_footer', 'replace_admin_footer');

function replace_admin_footer()
{
    if (basename($_SERVER['SCRIPT_FILENAME']) == 'edit-comments.php') {
        echo <<<EOD
<script type="text/javascript">
<!--
    function replace_comments()
    {
        var links = document.getElementsByTagName('a');
        var i, link, match;

        for (i in links) {
            link = links[i];

            if ( null != (match = link.href.match(/edit-comments\.php\?s=(\d+\.\d+\.\d+\.\d+)&mode=detail/))) {
                link.href = "http://www.mxtoolbox.com/SuperTool.aspx?action=blacklist:" + match[1];
                link.target = "_blank";
            }
        }

    }

    replace_comments();
-->
EOD;
    }
}
于 2012-07-16T23:43:27.073 に答える