• 解決済 muro

    (@muromuro)


    普段、記事投稿の機能を作る際は、標準の投稿タイプ(post_typeがpostの投稿)ではなく、カスタム投稿タイプを使用しています。
    よって、標準の投稿タイプは使用しないので無効化したいと考えているのですが、その方法がわかりません。

    // サイドバー
    function new_admin_menu() {
    	remove_menu_page("edit.php");
    }
    add_action("admin_menu", "new_admin_menu");
    
    // 上部のバー
    function remove_admin_bar_menu($wp_admin_bar) {
    	$wp_admin_bar->remove_node("new-content");
    }
    add_action("admin_bar_menu", "remove_admin_bar_menu", 99);

    上記のような関数を記述して、管理画面のサイドバーおよび上部のバーから標準の投稿タイプへのリンクを非表示にすることはできました。
    しかしリンクを非表示にしたところで、下記のようにURLを直接入力されると、標準の投稿タイプの投稿画面へ移動できてしまいます。
    http://example.com/wp-admin/edit.php

    標準の投稿タイプを無効化し、上記のようなURLからもアクセスできなくするような関数などはないでしょうか?

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • Stack Exchangeにコードが書いてありました。
    http://wordpress.stackexchange.com/questions/3820/deregister-custom-post-types

    add_action( 'admin_init', 'deregister_post_type_post' );
    function deregister_post_type_post() {
    	global $wp_post_types;
    	unset( $wp_post_types['post'] );
    }

    管理画面に限定した処理なので、すでに投稿がある場合、フロントエンド上でそれらの投稿は表示されます。

    しかし、他の部分への影響が大きいと思われるので慎重にカスタマイズしたほうが良さそうですね。

    トピック投稿者 muro

    (@muromuro)

    申し訳ありません、返信が遅くなってしまいました。

    回答ありがとうございました。
    提示して頂いたコードで、標準の投稿タイプを無効化することができました。

    しかし、影響が大きいと思われるということなので、標準の投稿タイプへと入るリンクだけを非表示にする程度に留めておくことにします。
    せっかくコードを教えていただいたのに、申し訳ありません。

3件の返信を表示中 - 1 - 3件目 (全3件中)

トピック「標準の投稿タイプを無効化したい」には新たに返信することはできません。