Heben Sie die Registrierung des Post-Typs vom untergeordneten Thema auf

Ich versuche, einen Post-Typ aus einem Child-Theme zu entfernen, aber ich konnte das nicht, der Code in der Datei funcions.php auf dem übergeordneten Theme sieht ungefähr so ​​aus:

add_action( 'init', 'mc_projects' ); function mc_projects() { register_post_type( 'project', array( // Default options.... ) ); } 

Was ich in meinem Child-Theme versuchte, war, die mc_project-Aktion folgendermaßen aus dem init-Hook zu entfernen:

 remove_action('init', 'mc_projects', 11); 

Aber es hat nicht funktioniert, selbst wenn ich die Priorität auf einen höheren Wert setze, mache ich etwas falsch?

Solutions Collecting From Web of "Heben Sie die Registrierung des Post-Typs vom untergeordneten Thema auf"

Versuchen Sie Folgendes in Ihrer Child-Theme-functionsdatei.

 add_action( 'init', 'remove_mc_projects' ); function remove_mc_projects() { remove_action('init', 'mc_projects'); } 

Das hat mir geholfen.

 add_action( 'after_setup_theme','remove_project_custom_init', 100 ); function remove_project_custom_init() { remove_action( 'init', 'project_custom_init'); } 

Der Kredit geht an http://www.jasonpaul.net

Hier ist eine andere Lösung, abeit ein bisschen hackish –

In meinem übergeordneten Thema wird mein benutzerdefinierter Post-Typ wie folgt erstellt:

 if (!(function_exists('my_post_type'))) { function my_post_type() { ... } } 

Dann deklariere ich in meinem Child-Theme einfach die function als leer –

 function my_post_type() { } 

Hoffe das hilft! Dies ist mein erster Beitrag zu einem Forum wie diesem. Entschuldige bitte alle Formatierungsregeln, die ich gebrochen habe.

Das hat für mich funktioniert.

 function override_parent() { remove_action( 'init', 'mc_projects', 0 ); } add_action ('after_setup_theme','override_parent');