web-dev-qa-db-ja.com

Disqusのコメントとpingbackスクリプト - 順序を変更する方法?

Disqusのコメントの横にトラックバックとpingbackを表示するには、 " wp_list_comments() なしのモジュラーデモソリューション"を使用しています。

そして、私は出力の順序を変える方法を知りたいですか?これらのスクリプトでは、トラックバック/ pingbackはコメントの上に配置されています。コメントの下に配置したいのですが。

誰かが私を助けてくれる?

宜しくお願いします

マヌエル

1
marowi

ああ、それは私がそのスクリプトを書いたように見えます、それで私はあなたに答えようとしましょう;-)

たとえば、

  • テンプレートに独自のアクションフックを追加してください。
  • javascriptを使ってpingをDisqusのコメントの下に移動します。
  • Disqusプラグインのdisqus_language_filterフィルタをハイジャックする。

最後のオプションを選択した場合は、代わりにPingsListクラスのこの変更を使用できます。

/**
 * Modified version of PingsList to display the pings below the Disqus comments.
 * @see http://wordpress.stackexchange.com/a/174468/26350
 */

class PingsList
{
    protected $pd;
    protected $pw;

    public function __construct( IPingsView $pw, IPingsData $pd )
    {
        $this->pw = $pw;
        $this->pd = $pd;
    }
    public function init()
    {
        $this->pd->init();
        add_filter( 'disqus_language_filter', array( $this, 'disqus_language_filter' ) );
    }

    public function disqus_language_filter( $lang )
    {
        $this->pw->template( $this->pd->get_data() );
        return $lang;
    }

} // end class

これは、Disqusのコメントの下にpingを表示します。

1
birgire