it-swarm.com.de

Permalink/View "Custom Post Type" Bereiche entfernen

Ich habe versucht, einige Funktionen, die ich bereits bei einigen anderen Themen gesehen habe, zu replizieren, möchte sie jedoch für meine Zwecke kennen/verstehen.

Ich habe einen benutzerdefinierten Beitragstyp mit dem Namen "Testimonials" erstellt. Ich glaube, ich habe einen ziemlich guten Teil des Setups ausgeknockt, indem ich Justin Tadlocks großartigen Beitrag zu Custom Post Types verwendet habe. Ich habe auch seinen Beitrag zum Entfernen von Meta-Boxen gesehen, was großartig ist. Wenn Sie in der Regel einen Titel auf einem Beitrag/einer Seite eingeben und darauf klicken, wird ein Bereich zum Bearbeiten von Permalinks angezeigt. Normalerweise ist dies eine nützliche Sache, aber in meinem Fall kann dies bei "Testimonials" oder "Diashow-Dias" den Benutzer tatsächlich verwirren. Wenn Sie ein "Testimonial" oder eine "Folie" gespeichert haben, möchten Sie möglicherweise nicht, dass es tatsächlich eine "Einzelansicht" gibt. Ich bin nicht sicher, wie es normalerweise gemacht wird (stöberte in WooThemes herum - aber ich bin immer noch verloren). Ich könnte das mit CSS machen, aber wenn ich mir zum Beispiel den eigentlichen Quellcode der Seite für Woothemes anschaue ... ist es einfach weg (was ich bevorzuge). Jede Hilfe wäre sehr dankbar. Vielen Dank!

2
Zach

Es gibt einen Filter get_sample_permalink_html, der diesen Bereich als Zeichenfolge zurückgibt. So können Sie es verwenden:

<?php
    add_filter('get_sample_permalink_html', 'perm', '',4);

    function perm($return, $id, $new_title, $new_slug){
        global $post;
        if($post->post_type == 'testimonials')
        {
            $ret2 = preg_replace('/<span id="edit-slug-buttons">.*<\/span>|<span id=\'view-post-btn\'>.*<\/span>/i', '', $return);
        }

        return $ret2;
    }
?>

Aktualisiert der Code. Bitte prüfen Sie das.

Aktualisiert Die doppelten Anführungszeichen wurden bei View-Post-BTN in einfache Anführungszeichen geändert. Getestet bis 3.2

9

Wenn Sie CSS verwenden:

#edit-slug-box {
display: none;
}
0
KeepMove

Sie können es auch mit CSS ausblenden, basierend auf der Rolle Ihres Kunden. Wenn Sie interessiert sind, kann ich Ihnen ein Codebeispiel geben.

0
Jonathan Wold