2016-12-05 1 views
1

Ich habe ein Guest-Posting-Plugin auf meiner Wordpress-Website und möchte die Verwendung von Shortcodes für bestimmte Benutzerrollen (Abonnenten zum Beispiel) deaktivieren. Ich brauche das meistens aus Sicherheitsgründen.Deaktiviere Shortcode-Nutzung für bestimmte Benutzerrollen

+0

Zur Klarstellung: Möchten Sie verhindern, dass diese Benutzer Shortcodes in Beiträge/Seiten einfügen, die sie schreiben? Oder möchten Sie verhindern, dass diese Shortcodes beim Rendern von Posts/Seiten, die sie anzeigen, verwendet werden? –

+0

Ich bin mir nicht ganz sicher .. Ich denke zweitens - verhindern, dass Shortcodes extrahieren. So kann der Benutzer einen Shortcode oder einen Shortcode wie [some_text] schreiben, aber er wird nicht ausgeführt. Also wird Shortcode wie nur Text sein. – Ted

Antwort

0

Angenommen, Sie Shortcode haben,

function myshortcode(){ 

$user = wp_get_current_user(); 
if (!in_array('author', (array) $user->roles)) { 
    //Run shortcode 
} 

} 

add_shortcode('myshortcode','myshortcode'); 
+0

Entschuldigung, wenn ich dich nur falsch verstehe, aber bist du sicher, dass dies der richtige Code ist, den ich brauche? Denn wenn man es anschaut, scheint es nicht so. – Ted

+0

dann was genau tun möchten ?? –

+0

ja, wie ich diese Benutzerrolle überprüfen, wenn es nicht in der Rolle dann –

0

Sie die strip_shortcodes() Funktion nutzen zu können, müssen Sie es als Filter verwenden können Kurzwahlnummern von Ihrem gewünschten Inhalt strippen:

function example_remove_shortcode($content) { 
    $content = strip_shortcodes($content); 
    return $content; 
} 
add_filter('the_content', 'example_remove_shortcode'); 

oder

echo strip_shortcodes($my_customly_created_content); 

in denen Sie den Inhalt anzeigen möchten.

+0

Wenn Sie Ihre zweite Zeile in eine Bedingung einschließen, die die aktuelle Benutzerrolle überprüft, würde das wahrscheinlich die Frage des OP beantworten. – Dre

+0

@Dre das ist richtig, aber ich war nicht ganz sicher, wo er das verwenden möchte. Ich werde die Antwort bearbeiten – Amin

Verwandte Themen