場合によっては、Disqusに切り替えた後にカスタム投稿タイプからコメントが消えることがあります。
私たちは過去にDisqusを使用していたため、ツールの癖には非常に精通しており、コメントが正しく移行されていない場合にこれが起こりうることを発見しました。
幸いなことに、迅速かつ簡単な解決策があります。
この記事では、WordPressのカスタム投稿タイプでDisqusコメントシステムを無効にする方法を説明します。いくつかの簡単な手順に従うことで、この問題を解決し、コメントを本来あるべき場所に戻すことができます。

Disqusから移行した理由
過去に、WPBeginnerでDisqusコメントシステムを使用することを実験しました。しかし、すぐにデフォルトのWordPressコメントに戻しました。
Disqusから移行した理由はいくつかありますが、初期の頃、Disqusに移行した後、カスタム投稿タイプにコメントが表示されないことに気づきました。
まだDisqusを使用してWordPressでコメントを管理およびモデレートしている場合、1つの解決策はこれらのコメントを手動でインポートすることです。ただし、特にカスタム投稿に多くのコメントがある場合、これには多くの時間と労力がかかる可能性があります。
幸いなことに、Disqusユーザーにはより高速な回避策があります。それを念頭に置いて、カスタム投稿タイプでDisqusをすばやく簡単に無効にする方法を見てみましょう。
WordPressのカスタム投稿タイプでDisqusを無効にする
開始する前に、DisqusとWordPressウェブサイトの間で同期が有効になっていることを確認する必要があります。
左側のメニューで Disqus を選択し、「同期」タブをクリックします。まだ有効になっていない場合は、「自動同期を有効にする」をクリックできます。

注意: この時点で、「この機能を使用するには、サイトのショートネーム、APIシークレットキー、およびAPIアクセストークンが設定されている必要があります。」というエラーが表示される場合があります。
これが発生した場合、投稿の最後にエラーを修正する方法を示します。
その後、WordPressサイトにコードを追加する必要があります。
多くの場合、チュートリアルではテーマの functions.php ファイルを直接編集するように求められますが、小さな間違いが多くの一般的なWordPressのエラーを引き起こしたり、サイトを完全に破損させたりする可能性があるため、このアプローチはお勧めしません。
それを踏まえて、代わりに無料のWPCodeプラグインを使用することをお勧めします。これは、WordPressにカスタムコードを追加する最も簡単で安全な方法です。
このツールは徹底的にテストされており、非常に信頼性が高いことがわかりました。詳細については、WPCodeのレビューをご覧ください。
注意: WPCodeのプロプランに切り替えることで、コードスニペットのクラウドライブラリ、カスタムブロック作成、スマート条件付きロジックなどを利用できるようになります。
有効化したら、WordPressダッシュボードの**Code Snippets »** **+ Add Snippet**ページにアクセスしてください。

ここでは、サイトに追加できるさまざまな既製のスニペットが表示されます。これには、WordPressでウィジェットブロックを無効にするスニペットや、WordPressのバージョン番号を削除するスニペットが含まれます。
独自のスニペットを追加するには、「カスタムコードの追加」にカーソルを合わせ、「スニペットを使用」をクリックします。

この画面で、カスタムコードスニペットのタイトルを入力します。これは、PHPスニペットを特定するのに役立つものであれば何でも構いません。
次に、「コードタイプ」ドロップダウンを開き、「PHPスニペット」を選択します。

その後、次のコードスニペットをエディタに貼り付けます。
function filter_dsq_can_load( $script_name ) {
if ( is_singular( 'custom_post_type_name' ) ) {
if ( 'count' === $script_name ) {
return false;
} elseif ( 'embed' === $script_name ) {
return false;
} else {
return true;
}
}
}
add_filter( 'dsq_can_load', 'filter_dsq_can_load' );
このコードは、特定のカスタム投稿タイプをチェックし、Disqusコメントテンプレートを無効にするフィルターを作成します。
これを踏まえて、Disqusを無効にしたいカスタム投稿タイプの名前にcustom_post_type_nameを置き換えるようにしてください。カスタム投稿タイプ
コードボックスの下に、挿入オプションが表示されます。「自動挿入」メソッドがまだ選択されていない場合は、スニペットがWordPressブログ全体に自動的に挿入および実行されるようにクリックしてください。
その後、「場所」ドロップダウンを開き、「すべてで実行」をクリックします。

次に、画面の上部までスクロールし、「非アクティブ」トグルをクリックして「アクティブ」に変更します。
最後に、「保存」をクリックしてDisqusスニペットをライブにします。

トラブルシューティング: サイトのショートネーム、APIシークレットキー、APIアクセストークンが必要です
Disqusの自動同期を有効にしようとすると、「この機能を有効にするには、サイトのショートネーム、APIシークレットキー、およびAPIアクセストークンを設定する必要があります。」というエラーが表示されることがあります。

これが発生した場合、DisqusのウェブサイトにアクセスしてDisqusアプリケーションを作成する必要があります。まだ作成していない場合は、メールアドレスを使用して無料アカウントを作成するか、FacebookやTwitterアカウントなどの別の Вアカウントでサインインしてください。
これが完了したら、「アプリケーションの登録」リンクをクリックします。

この画面では、アプリケーションの名前、組織、Disqusを使用する予定のウェブサイトなど、アプリケーションに関する情報を入力できます。
入力した情報に満足したら、「アプリケーションを登録」をクリックしてください。

これが完了したら、「デフォルトアクセス」セクションまでスクロールします。
ドロップダウンメニューから「フォーラムの読み取り、書き込み、管理」を選択できるようになりました。

その後、画面を一番下までスクロールし、「変更を保存」をクリックします。
これで「詳細」タブをクリックできるようになりました。

その後、「OAuth設定」セクションまでスクロールします。
ここで、APIキー、APIシークレット、およびアクセストークンを見つけることができます。この情報をDisqusプラグイン設定に追加する必要があります。

WordPressダッシュボードで、左側のメニューからDisqusを選択します。
次に、「サイト設定」タブをクリックします。

この画面で、「変更を加えるにはクリックしてください」リンクを選択する必要があります。
これで、APIキー、APIシークレット、アクセストークンをそれぞれのフィールドに入力できます。サイトのショートネームもまだ入力していない場合は、追加する必要があります。

これが完了したら、「保存」ボタンをクリックします。
これで、「同期」タブを選択すると、エラーの代わりに新しい「自動同期を有効にする」ボタンが表示されるはずです。

このチュートリアルが、WordPressのカスタム投稿タイプでDisqusを無効にする方法を学ぶのに役立ったことを願っています。また、WordPressのコメントを一括削除する方法や、WordPressコメントのモデレーションに関する初心者ガイドも参照してください。
この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterやFacebookでもフォローできます。


Ludy Amano
新しいDisqusプラグイン(2018年)は、正しく機能するためにこのコードに変更が必要です。
function filter_dsq_can_load( $script_name ) {
// $script_name は ‘count’ または ’embed’ のいずれかです。
if ( ‘count’ === $script_name ) {
return false;
}
return true; } add_filter( ‘dsq_can_load’, ‘filter_dsq_can_load’ );
Priyanka
このブログで説明されているコードに加えて、このコードを追加する必要がありますか?
アルタ
気持ち悪い…。
Hemang Rindani
WordPressは、企業がウェブサイトを簡単に管理できる優れたエンタープライズWebコンテンツ管理サービスです。無制限の組み込みツールとその柔軟性・拡張性により、開発者はあらゆるビジネス要件に対応するウェブサイトをデザインできます。サイトを面白く保つことが推奨されており、コメントボックスの追加は重要な役割を果たします。Disqusはどのページにもコメントボックスを追加する最も簡単な方法の1つですが、読者の入力を必要としないセクションでは無効にすることが不可欠な場合があります。この記事で説明されている方法は的確であり、すぐに実装できました。共有ありがとうございます。
Jetpackは良い代替案だと感じています。読者があなたのウェブサイトに接続し、さまざまな方法でコメントを残すことができます。デフォルトのWordPressコメントオプションを使用したり、WordPress.comに接続したり、Facebook、G+、Twitter経由でログインできるようにしたりできます。Jetpackを優れたツールにしている他の多くの機能もあります。
Raunak Hajela
カスタム投稿タイプでDisqusを無効にする方法を教えていただきましたが、有効にする方法はどうですか?最近、私のインタビューカスタム投稿タイプにDisqusを追加しましたが、機能していません。なぜですか?インタビューとブログの2つのカスタム投稿タイプを作成しました。ブログ投稿タイプでは機能しますが、インタビュー投稿タイプでは機能しません。どのように修正すればよいか教えてください。
これは私のカスタム投稿タイプの両方のコードです。ここではGenesisテンプレートを使用しています –
//* インタビュー投稿タイプを登録 (NSSによる変更)
add_action( ‘init’, ‘create_interview_post_type’ );
function create_interview_post_type() {
$labels = array( 'name' => __('インタビュー'), 'singular_name' => __('インタビュー'), 'all_items' => __('すべてのインタビュー'), 'add_new' => _x('新規追加', 'インタビュー'), 'add_new_item' => __('新規追加'), 'edit_item' => __('インタビューの編集'), 'new_item' => __('新規インタビュー'), 'view_item' => __('インタビューの表示'), 'search_items' => __('インタビューの検索'), 'not_found' => __('インタビューが見つかりませんでした'), 'not_found_in_trash' => __('ゴミ箱にインタビューが見つかりませんでした'), 'parent_item_colon' => "" );
$args = array( ‘labels’ => $labels, ‘public’ => true, ‘has_archive’ => true, ‘rewrite’ => array(‘slug’ => ‘interviews’), ‘taxonomies’ => array( ‘category’, ‘post_tag’ ), ‘supports’ => array( ‘title’, ‘editor’, ‘author’, ‘thumbnail’ , ‘custom-fields’, ‘excerpt’, ‘comments’) );
register_post_type( ‘interview’, $args);
}
//* ブログ投稿タイプを登録 (NSSによる変更)
add_action( ‘init’, ‘create_nssblog_post_type’ );
function create_nssblog_post_type() {
$labels = array(
‘name’ => __( ‘ブログ’ ),
‘singular_name’ => __( ‘ブログ’ ),
‘all_items’ => __(‘すべての投稿’),
‘add_new’ => _x(‘新規追加’, ‘ブログ’),
‘add_new_item’ => __(‘新規追加’),
‘edit_item’ => __(‘投稿の編集’),
‘new_item’ => __(‘新規投稿’),
‘view_item’ => __(‘投稿の表示’),
‘search_items’ => __(‘投稿を検索’),
‘not_found’ => __(‘投稿が見つかりませんでした’),
‘not_found_in_trash’ => __(‘ゴミ箱に投稿が見つかりませんでした’),
‘parent_item_colon’ => ”
);
"$args = array( ‘labels’ => $labels, ‘public’ => true, ‘has_archive’ => true, ‘rewrite’ => array(‘slug’ => ‘blog’), ‘taxonomies’ => array( ‘category’, ‘post_tag’ ), ‘supports’ => array( ‘title’, ‘editor’, ‘author’, ‘thumbnail’ , ‘custom-fields’, ‘excerpt’, ‘comments’ ) );"
register_post_type( ‘nssblog’, $args);
Wakil Nikzad
この素晴らしい投稿をありがとうございます。
ウェブサイトにDisqusプラグインをインストールして設定しました。デフォルトのコメントオプションを除いて、すべてがほぼうまくいっています。デフォルトとしてゲストコメントを選択するオプションはありますか?
Disqusアカウントを持っている人はたくさんいますが、社会や国によって異なります。たとえば、アフガニスタンでは、インターネットユーザーのほとんどがDisqusについて知りません。
Travis Pflanz
Disqusシステムでコメントするには、Disqusアカウントは必要ありません。Facebook、Twitter、Google+、名前/メール、またはゲストを使用するオプションがあります。
常にログインしているため、これがケースであることを確認するためにログアウトする必要がありました。
ログアウトして確認してください。
danh
あなたが何をしているのか分かり、気に入っています。ロード順の問題が発生しているようです。カスタム投稿タイプが使用されているときにフィルターを追加しないようにDisqusプラグインのコードを操作すると、問題が解決します。
if ( ‘custom_post_type_name’ != get_post_type() ){ add_filter(‘comments_template’, ‘dsq_comments_template’); }
フィルターが追加されている場合にフィルターを削除するというあなたの提案を試しましたが、うまくいきませんでした。functions.php が disqus.php より先に実行されているため、削除が実行される時点では削除するフィルターが存在しないと推測されます。まだ修正方法を見つけられていません。
Piku
素晴らしい記事です
エリック
シェアしていただきありがとうございます。
Akash Agarwal
はい、そうです。ちょうど探していました。このような有用で情報満載の投稿を共有していただき、大変助かりました。ありがとうございます。
マヌエル・エドバーグ
わあ。興味深い記事ですね!それに気づいて、何かエラーだと思っていました。これが可能だとは知りませんでした。
エドゥアルディーニョ・テイシェイラ
OK、わかりました…カスタム投稿タイプでDisqusを無効にした場合、どうなりますか?その投稿はコメントが無効になったままになりますか?それとも、その場合、WPコメントがページに戻ってきますか?