{"id":8073,"date":"2023-08-14T14:22:17","date_gmt":"2023-08-14T21:22:17","guid":{"rendered":"https:\/\/membermouse.com\/?post_type=ht_kb&#038;p=8073"},"modified":"2025-01-07T09:55:29","modified_gmt":"2025-01-07T14:55:29","slug":"mitgliedmaus-wordpress-filter","status":"publish","type":"ht_kb","link":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/","title":{"rendered":"MemberMouse WordPress-Filter"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Filter sind Funktionen, die WordPress an bestimmten Punkten der Ausf\u00fchrung durchl\u00e4uft, bevor eine Aktion mit den Daten durchgef\u00fchrt wird. MemberMouse definiert einen eigenen Satz von Filtern, die Sie verwenden k\u00f6nnen, um den Ablauf der Ausf\u00fchrung in MemberMouse zu steuern, bevor bestimmte Aktionen ausgef\u00fchrt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here&#8217;s a basic example:<\/p>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>function customContentProtection($data)\n{\n     return true;\n}\nadd_filter('mm_bypass_content_protection', 'customContentProtection');\n<\/code><\/pre>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">In this example, we&#8217;re using the&nbsp;<a href=\"http:\/\/codex.wordpress.org\/Function_Reference\/add_filter\" target=\"_blank\" rel=\"noreferrer noopener\"><em>add_filter()<\/em><\/a>&nbsp;Methode, um anzuzeigen, dass die&nbsp; <em>customContentProtection()<\/em>&nbsp;Methode sollte aufgerufen werden, wenn MemberMouse die&nbsp; <em>mm_Umgehung_des_Inhalt_Schutzes<\/em>&nbsp;Filter. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To learn more about working with WordPress&#8217; Action API&nbsp;<a href=\"http:\/\/codex.wordpress.org\/Plugin_API\" target=\"_blank\" rel=\"noreferrer noopener\">diesen Artikel lesen<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">MemberMouse-Filter-Referenz<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The following is a list of all of the MemberMouse filters, a description of when they&#8217;re executed, and information on the data that will be passed to any function hooked into the filter.<\/p>\n\n\n\n<div style=\"height:5px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Abrechnungs-Scan-Intervall<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>mm_abrechnung_scan_intervall<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em><mark style=\"background-color:#fcb900\" class=\"has-inline-color has-black-color\">MitgliedMaus 3.0+<\/mark><\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">MemberMouse f\u00fchrt periodisch eine <a href=\"https:\/\/developer.wordpress.org\/plugins\/cron\/\" target=\"_blank\" rel=\"noopener\" title=\"WP-Cron\">WP-Cron<\/a> Aufgabe, die nach Abonnements sucht, f\u00fcr die eine erneute Rechnungsstellung f\u00e4llig ist, und diese zur Verarbeitung durch das lokale Abrechnungssystem in die Warteschlange stellt. Standardm\u00e4\u00dfig werden die \u00dcberpr\u00fcfungen alle f\u00fcnfzehn Minuten durchgef\u00fchrt. Mit diesem Filter k\u00f6nnen Sie das Intervall zwischen den \u00dcberpr\u00fcfungen \u00e4ndern, was bei der Optimierung der Leistung Ihrer Website hilfreich sein kann. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Das Plugin \u00fcbergibt ein einziges Argument <code>$scanIntervall<\/code> an Ihre Funktion, eine ganze Zahl, die die Standardanzahl von Minuten zwischen den Scans angibt. Ihre Funktion sollte eine ganze Zahl zur\u00fcckgeben, die die gew\u00fcnschten Minuten zwischen den \u00dcberpr\u00fcfungen angibt. Die folgende Funktion sucht z. B. alle f\u00fcnf Minuten nach Abonnements, die f\u00fcr die Rechnungsstellung bereit sind:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function customBillingScanIntervall($scanIntervall)\n{\n   return 5;\n}\nadd_filter(\"mm_billing_scan_interval\", \"customBillingScanInterval\", 10, 2);\n<\/code><\/pre>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Abonnement Mahnungsintervall<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>mm_abrechnung_abonnement_mahnung_intervall<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em><mark style=\"background-color:#fcb900\" class=\"has-inline-color has-black-color\">MitgliedMaus 3.0+<\/mark><\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn ein Abonnement nicht zum geplanten Termin abgerechnet wird, unternimmt MemberMouse drei weitere Versuche, die Zahlung einzuziehen. Mit diesem Filter k\u00f6nnen Sie das Intervall zwischen den Versuchen steuern.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">MemberMouse \u00fcbergibt zwei Argumente an Ihre Funktion. Das erste ist eine ganze Zahl <code>$failureIntervall<\/code>&nbsp;die die Standardanzahl von Tagen vor dem n\u00e4chsten Versuch darstellt. Die zweite ist eine ganze Zahl <code>$failureState<\/code>&nbsp;der den jeweiligen Status der fehlgeschlagenen Rechnungsstellung angibt. Derzeit gibt es drei Fehlerzust\u00e4nde: 2, 3 und 4, die den zweiten, dritten bzw. letzten Versuch, die Zahlung einzuziehen, darstellen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Your function should return an integer representing the number of days that should be allowed to elapse before the next attempt. Here&#8217;s an example that replicates the default dunning intervals:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function customDunningInterval($failureInterval, $failureState)\n{\n   switch ($failureState)\n   {\n      Fall 2:\n         return 2; \/\/ Erster Wiederholungsversuch, zwei Tage nach der ersten fehlgeschlagenen R\u00fcckbuchung\n      \n      case 3:\n         return 3; \/\/ Zweiter Wiederholungsversuch, drei Tage nach dem ersten Wiederholungsversuch\n      \n      Fall 4:\n         return 2; \/\/ Dritter Wiederholungsversuch, zwei Tage nach dem zweiten Wiederholungsversuch\n      \n      Standard:\n         return $failureInterval;\n   }\n}\nadd_filter(\"mm_billing_subscription_dunning_interval\", \"customDunningInterval\", 10, 2);<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Um die Mahnungsintervalle anzupassen, k\u00f6nnen Sie einfach die in den drei Case-Anweisungen zur\u00fcckgegebenen Werte auf die gew\u00fcnschte L\u00e4nge in Tagen \u00e4ndern.<\/p>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Zugang blockieren<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>mm_block_access<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dieser Filter wird angewendet, nachdem MemberMouse festgestellt hat, dass der aktuelle Besucher Zugriff auf den Inhalt hat, und erm\u00f6glicht es Ihnen, den Zugriff auf gesch\u00fctzte Inhalte selektiv zu sperren.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">MemberMouse \u00fcbergibt einen booleschen Wert <code>$blockAccess<\/code> zu Ihrer Funktion hinzuf\u00fcgen, die angibt, ob der Zugriff auf den Inhalt standardm\u00e4\u00dfig blockiert wird. Ihre Funktion sollte einen booleschen Wert zur\u00fcckgeben, der angibt, ob MemberMouse den Zugriff auf den Inhalt blockieren sollte.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zum Beispiel, um allen Mitgliedern den Zugriff auf gesch\u00fctzte Inhalte zu verwehren:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function blockMemberAccess($blockAccess)\n{\n   return true;\n}\nadd_filter(\"mm_block_access\", \"blockMemberAccess\", 10, 2);\n<\/code><\/pre>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Umgehung des Inhaltsschutzes<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>mm_Umgehung_des_Inhalt_Schutzes<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This filter is applied after MemberMouse has determined the current visitor doesn&#8217;t have access to the content, and allows you to selectively bypass content protection. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">MemberMouse \u00fcbergibt einen booleschen Wert <code>$allowAccess<\/code> zu Ihrer Funktion hinzuf\u00fcgen, um anzugeben, ob der Zugriff auf den Inhalt standardm\u00e4\u00dfig gew\u00e4hrt wird. Ihre Funktion sollte einen Booleschen Wert zur\u00fcckgeben, der angibt, ob MemberMouse den Zugriff auf den Inhalt erlauben soll.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So k\u00f6nnen beispielsweise alle Mitglieder, denen das Recht zugewiesen wurde <em>Beitragende<\/em> Rollenzugriff auf alle gesch\u00fctzten Seiten und Beitr\u00e4ge: <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function allowAccessForContributors($allowAccess)\n{\n    if (current_user_can(\"contributor\"))\n    {\n        return true;\n    }\n    sonst\n    {\n        return $allowAccess;\n    }\n}\nadd_filter(\"mm_bypass_content_protection\", \"allowAccessForContributors\", 10, 2);\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Bitte beachten Sie, dass dieser Filter zwar den Zugang zu Seiten und Beitr\u00e4gen erm\u00f6glicht, die andernfalls unzug\u00e4nglich w\u00e4ren, dass er aber keinen Einfluss auf die Analyse von Decision SmartTags hat.<\/p>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Anmeldung umleiten<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>mm_login_redirect<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dieser Filter wird angewandt, bevor MemberMouse sein standardm\u00e4\u00dfiges Umleitungsverhalten f\u00fcr die Anmeldung ausf\u00fchrt, das lautet&nbsp;<a href=\"https:\/\/membermouse.com\/de\/docs\/einstellungen-der-mitglieder-homepage\/\" target=\"_blank\" rel=\"noreferrer noopener\">konfiguriert in den Einstellungen der Mitglieder-Homepage<\/a>. Geben Sie eine URL zur\u00fcck, um anzugeben, dass MemberMouse den Benutzer an diese URL weiterleiten soll. Geben Sie eine leere Zeichenkette zur\u00fcck, um anzugeben, dass MemberMouse seine eigenen internen Regeln verwenden soll, um zu bestimmen, wohin der Benutzer weitergeleitet werden soll.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The object passed to your function contains the URL MemberMouse will redirect the user to if you don&#8217;t return an override URL and a user object containing data about the logged in user.<br>Wenn der Name des Objekts in Ihrer Funktion&nbsp;<code>$infoObj<\/code>&nbsp;then you&#8217;ll access the two data elements as follows:<\/p>\n\n\n\n<div style=\"height:5px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>$infoObj-&gt;aktuelleUrl\n$infoObj-&gt;Benutzer<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Stripe Statement Deskriptor<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>mm_stripe_billing_statement_descriptor<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn MemberMouse eine R\u00fcckbuchung veranlasst, werden verschiedene beschreibende Daten \u00fcber die Belastung gesendet. Der Abrechnungsdeskriptor wird dem Kunden auf seiner Kreditkartenrechnung angezeigt und ist auch in Stripe sichtbar. Mit diesem Filter k\u00f6nnen Sie den Abrechnungsdeskriptor f\u00fcr Abrechnungstransaktionen anpassen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bitte beachten Sie, dass die maximale Gesamtl\u00e4nge des Anweisungsdeskriptors 22 Zeichen betr\u00e4gt und das Senden einer l\u00e4ngeren Zeichenfolge dazu f\u00fchrt, dass die Zahlung nicht verarbeitet werden kann. Au\u00dferdem k\u00f6nnen die von Ihnen gesendeten Daten abgeschnitten werden. Stripe erstellt schlie\u00dflich einen \"berechneten Abrechnungsdeskriptor\", indem es den von Ihnen gesendeten Deskriptor an den in der Option \"Verk\u00fcrzter Deskriptor\" angegebenen Deskriptor anh\u00e4ngt. <a href=\"https:\/\/dashboard.stripe.com\/settings\/public\" title=\"\">Stripe Dashboard \u00d6ffentliche Einstellungen<\/a>aber die maximale L\u00e4nge dieser berechneten Zeichenfolge betr\u00e4gt ebenfalls 22 Zeichen, und alles dar\u00fcber hinausgehende wird verworfen. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Um die maximale L\u00e4nge des angezeigten Inhalts zu berechnen, verwenden Sie die folgende Formel:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>max. angezeigte L\u00e4nge = 22 - (L\u00e4nge des gek\u00fcrzten Deskriptors + 2)<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">MemberMouse \u00fcbergibt zwei Parameter an Ihre Funktion. Der erste ist <code>$-Deskriptor<\/code> ist eine Zeichenkette, die die Informationen enth\u00e4lt, die MemberMouse sendet, wenn sie nicht ge\u00e4ndert wird. Die zweite ist <code>1TP4Bestellung<\/code> das ein Standardklassenobjekt ist, das MemberMouse-Bestelldaten enth\u00e4lt, die Sie bei der Konstruktion des Anweisungsdeskriptors verwenden k\u00f6nnen.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here&#8217;s an example:&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>add_filter(\"mm_stripe_billing_statement_descriptor\", function($descriptor, $order)\n{\n\n   $descriptor = \"Bestellung #: \" . $order-&gt;Bestellnummer;\n   $maxLengthDescriptor = substr($descriptor,0,22);\n   R\u00fcckgabe $maxLengthDescriptor;\n}, 1, 2);<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn Ihr gek\u00fcrzter Deskriptor lautet <em>ABC<\/em> Ihre Kunden sollten so etwas auf ihren Kreditkartenabrechnungen sehen:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>ABC* Bestellung #: 10043<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dieser Filter kann nur auf R\u00fccklastschriften wirken, nicht auf erste Zahlungen. <\/p>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Stripe PaymentIntent Beschreibung<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>mm_stripe_paymentintent_description<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein weiterer Teil der Daten, die mit den R\u00fcckrechnungen an Stripe gesendet werden, ist die Beschreibung, die Sie mit diesem Filter anpassen k\u00f6nnen. Die Beschreibung ist eine der Spalten, die angezeigt wird, wenn Sie die Option <em>Zahlungen<\/em> in Stripe Dashboard. Die maximale L\u00e4nge dieses Feldes betr\u00e4gt 350 Zeichen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">MemberMouse \u00fcbergibt zwei Parameter an Ihre Funktion. Der erste ist <code>$Beschreibung<\/code> ist eine Zeichenkette, die die Informationen enth\u00e4lt, die MemberMouse sendet, wenn sie nicht ge\u00e4ndert wird. Die zweite ist <code>1TP4Bestellung<\/code> das ein Standardklassenobjekt ist, das MemberMouse-Bestelldaten enth\u00e4lt, die Sie bei der Erstellung der Beschreibung verwenden k\u00f6nnen.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Um dieses Feld zum Beispiel auf&nbsp;<em>Bestellung# 1234, Artikel: Digitale Mitgliedschaft&nbsp;<\/em>k\u00f6nnten Sie die folgende Funktion in Ihrem Plugin verwenden:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>add_filter('mm_stripe_paymentintent_description', function($description, $order)\n{\n   $description = \"Order # \" . $order-&gt;orderNumber;\n   if (isset($order-&gt;orderProducts) &amp;&amp; is_array($order-&gt;orderProducts))\n   {\n      $description .= \", Item: \" . array_pop($order-&gt;orderProducts)-&gt;description;\n   }\n   return $description;\n}, 1, 2);<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This filter can only act on rebills, not initial payments. To see all the data that&#8217;s possible to access on the <code>1TP4Bestellung<\/code> Objekt, sehen Sie dieses\u00a0<a href=\"https:\/\/storage.googleapis.com\/wpgcbucket\/wp\/2025\/01\/8bb79f95-oder-object-example-membermouse.txt\" target=\"_blank\" rel=\"noopener\" title=\"\">Musterauftragsobjekt<\/a>.<\/p>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Standard-MemberMouse-Filter<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Diese Filter sind im Plugin enthalten und k\u00f6nnen in Ihrem eigenen Code \u00fcberschrieben werden, indem Sie&nbsp;<a rel=\"noreferrer noopener\" href=\"https:\/\/codex.wordpress.org\/Function_Reference\/remove_filter\" target=\"_blank\">entfernen_filter<\/a>&nbsp;um Ihre eigenen verwandten Filter zu implementieren.<\/p>\n\n\n\n<div style=\"height:10px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Passwortst\u00e4rke-Pr\u00fcfer<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>mm_password_strength_validator<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ab Version 2.2.9 unterst\u00fctzt MemberMouse die Hinzuf\u00fcgung eines benutzerdefinierten Passwort-Validierungsfilters. Dadurch kann das Kennwort auf der Grundlage benutzerdefinierter Anforderungen ausgewertet werden. Standardm\u00e4\u00dfig f\u00fcgt MemberMouse einen grundlegenden Filter hinzu, der sicherstellt, dass das Kennwort aus mindestens 8 Zeichen besteht. Entwickler haben die M\u00f6glichkeit, einen zus\u00e4tzlichen Filter hinzuzuf\u00fcgen, der zusammen mit dem Standardfilter angewendet wird, oder den Standardfilter zu entfernen und durch einen benutzerdefinierten Filter zu ersetzen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The example below shows the steps to remove the default filter and replace it with a custom filter. This can be added into the theme&#8217;s function.php file, but we recommended that if you take this route, you use a&nbsp;<a href=\"https:\/\/codex.wordpress.org\/Child_Themes\" target=\"_blank\" rel=\"noreferrer noopener\">Kind-Thema<\/a>&nbsp;um zu vermeiden, dass Ihr Code bei einem Theme-Update verloren geht.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/remove the default filter \nremove_filter('mm_password_strength_validator',array('MM_UserHooks',\"passwordStrengthValidator\"));\n\n\/\/add a filter that enforces that passwords are at least 8 characters and contain an uppercase letter, a number, and a special character \nadd_filter('mm_password_strength_validator', function($passwordData)\n{\n   if (is_object($passwordData) &amp;&amp; isset($passwordData-&gt;data) &amp;&amp; !preg_match('\/^(?=.*&#91;!@#$%^&amp;*-])(?=.*&#91;0-9])(?=.*&#91;A-Z]).{8,20}$\/', $passwordData-&gt;data))\n   {\n      $passwordData-&gt;type     = \"error\";\n      $passwordData-&gt;errors&#91;] = \"Password must contain an uppercase character, a special character, and a number\";\n   }\n   return $passwordData;\n}, 10, 1);<\/code><\/pre>","protected":false},"excerpt":{"rendered":"<p>Filter sind Funktionen, die WordPress an bestimmten Punkten der Ausf\u00fchrung durchl\u00e4uft, bevor es eine Aktion mit den Daten durchf\u00fchrt. MemberMouse definiert seinen eigenen Satz von Filtern, die Sie...<\/p>","protected":false},"author":21411,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"footnotes":""},"ht-kb-category":[188],"ht-kb-tag":[],"class_list":["post-8073","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-mm-wp-hooks-filters"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO Pro 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Filters are functions that WordPress passes data through, at certain points in execution, just before taking some action with the data. MemberMouse defines its own set of filters that you can utilize to control the flow of execution in MemberMouse prior to certain actions being taken. Here&#039;s a basic example: function customContentProtection($data) { return true;\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Curt Noble\"\/>\n\t<meta name=\"google-site-verification\" content=\"RIQFHn-t5QxsuMU4pLG9xaceb-mmGuRaOWAEU1Q078U\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO Pro (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"MemberMouse |\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"MemberMouse WordPress Filters | MemberMouse\" \/>\n\t\t<meta property=\"og:description\" content=\"Filters are functions that WordPress passes data through, at certain points in execution, just before taking some action with the data. MemberMouse defines its own set of filters that you can utilize to control the flow of execution in MemberMouse prior to certain actions being taken. Here&#039;s a basic example: function customContentProtection($data) { return true;\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2023-08-14T21:22:17+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-01-07T14:55:29+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/membermouse\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@MemberMouse\" \/>\n\t\t<meta name=\"twitter:title\" content=\"MemberMouse WordPress Filters | MemberMouse\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Filters are functions that WordPress passes data through, at certain points in execution, just before taking some action with the data. MemberMouse defines its own set of filters that you can utilize to control the flow of execution in MemberMouse prior to certain actions being taken. Here&#039;s a basic example: function customContentProtection($data) { return true;\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@MemberMouse\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/docs\\\/membermouse-wordpress-filters\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/membermouse.com\\\/de\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/article-categories\\\/developer-tools\\\/#listItem\",\"name\":\"Developer Tools\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/article-categories\\\/developer-tools\\\/#listItem\",\"position\":2,\"name\":\"Developer Tools\",\"item\":\"https:\\\/\\\/membermouse.com\\\/de\\\/article-categories\\\/developer-tools\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/article-categories\\\/mm-wp-hooks-filters\\\/#listItem\",\"name\":\"WordPress Hooks and Filters\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/article-categories\\\/mm-wp-hooks-filters\\\/#listItem\",\"position\":3,\"name\":\"WordPress Hooks and Filters\",\"item\":\"https:\\\/\\\/membermouse.com\\\/de\\\/article-categories\\\/mm-wp-hooks-filters\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/docs\\\/membermouse-wordpress-filters\\\/#listItem\",\"name\":\"MemberMouse WordPress Filters\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/article-categories\\\/developer-tools\\\/#listItem\",\"name\":\"Developer Tools\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/docs\\\/membermouse-wordpress-filters\\\/#listItem\",\"position\":4,\"name\":\"MemberMouse WordPress Filters\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/article-categories\\\/mm-wp-hooks-filters\\\/#listItem\",\"name\":\"WordPress Hooks and Filters\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/#organization\",\"name\":\"MemberMouse\",\"url\":\"https:\\\/\\\/membermouse.com\\\/de\\\/\",\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/membermouse\",\"https:\\\/\\\/twitter.com\\\/MemberMouse\",\"https:\\\/\\\/www.instagram.com\\\/membermouse\\\/\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/membermouse\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/membermouse\\\/\",\"https:\\\/\\\/soundcloud.com\\\/membermouse\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/author\\\/curtcaseproof-com\\\/#author\",\"url\":\"https:\\\/\\\/membermouse.com\\\/de\\\/author\\\/curtcaseproof-com\\\/\",\"name\":\"Curt Noble\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/docs\\\/membermouse-wordpress-filters\\\/#authorImage\",\"url\":\"https:\\\/\\\/membermouse.com\\\/wp-content\\\/litespeed\\\/avatar\\\/69cacd8325ef9810065b0b177318f497.jpg?ver=1789018807\",\"width\":96,\"height\":96,\"caption\":\"Curt Noble\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/docs\\\/membermouse-wordpress-filters\\\/#webpage\",\"url\":\"https:\\\/\\\/membermouse.com\\\/de\\\/docs\\\/membermouse-wordpress-filters\\\/\",\"name\":\"MemberMouse WordPress Filters | MemberMouse\",\"description\":\"Filters are functions that WordPress passes data through, at certain points in execution, just before taking some action with the data. MemberMouse defines its own set of filters that you can utilize to control the flow of execution in MemberMouse prior to certain actions being taken. Here's a basic example: function customContentProtection($data) { return true;\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/docs\\\/membermouse-wordpress-filters\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/author\\\/curtcaseproof-com\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/author\\\/curtcaseproof-com\\\/#author\"},\"datePublished\":\"2023-08-14T14:22:17-04:00\",\"dateModified\":\"2025-01-07T09:55:29-05:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/#website\",\"url\":\"https:\\\/\\\/membermouse.com\\\/de\\\/\",\"name\":\"MemberMouse\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/membermouse.com\\\/de\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO Pro -->\r\n\t\t<title>MemberMouse WordPress Filters | MemberMouse<\/title>\n\n","aioseo_head_json":{"title":"MitgliedMaus WordPress-Filter | MitgliedMaus","description":"Filter sind Funktionen, die WordPress an bestimmten Punkten der Ausf\u00fchrung durchl\u00e4uft, bevor eine Aktion mit den Daten durchgef\u00fchrt wird. MemberMouse definiert einen eigenen Satz von Filtern, die Sie verwenden k\u00f6nnen, um den Ablauf der Ausf\u00fchrung in MemberMouse zu steuern, bevor bestimmte Aktionen ausgef\u00fchrt werden. Hier ist ein einfaches Beispiel: function customContentProtection($data) { return true;","canonical_url":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"RIQFHn-t5QxsuMU4pLG9xaceb-mmGuRaOWAEU1Q078U","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de#listItem","position":1,"name":"Home","item":"https:\/\/membermouse.com\/de","nextItem":{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de\/article-categories\/developer-tools\/#listItem","name":"Developer Tools"}},{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de\/article-categories\/developer-tools\/#listItem","position":2,"name":"Developer Tools","item":"https:\/\/membermouse.com\/de\/article-categories\/developer-tools\/","nextItem":{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de\/article-categories\/mm-wp-hooks-filters\/#listItem","name":"WordPress Hooks and Filters"},"previousItem":{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de\/article-categories\/mm-wp-hooks-filters\/#listItem","position":3,"name":"WordPress Hooks and Filters","item":"https:\/\/membermouse.com\/de\/article-categories\/mm-wp-hooks-filters\/","nextItem":{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/#listItem","name":"MemberMouse WordPress Filters"},"previousItem":{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de\/article-categories\/developer-tools\/#listItem","name":"Developer Tools"}},{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/#listItem","position":4,"name":"MemberMouse WordPress Filters","previousItem":{"@type":"ListItem","@id":"https:\/\/membermouse.com\/de\/article-categories\/mm-wp-hooks-filters\/#listItem","name":"WordPress Hooks and Filters"}}]},{"@type":"Organization","@id":"https:\/\/membermouse.com\/de\/#organization","name":"MemberMouse","url":"https:\/\/membermouse.com\/de\/","sameAs":["https:\/\/www.facebook.com\/membermouse","https:\/\/twitter.com\/MemberMouse","https:\/\/www.instagram.com\/membermouse\/","https:\/\/www.youtube.com\/user\/membermouse","https:\/\/www.linkedin.com\/company\/membermouse\/","https:\/\/soundcloud.com\/membermouse"]},{"@type":"Person","@id":"https:\/\/membermouse.com\/de\/author\/curtcaseproof-com\/#author","url":"https:\/\/membermouse.com\/de\/author\/curtcaseproof-com\/","name":"Curt Noble","image":{"@type":"ImageObject","@id":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/#authorImage","url":"https:\/\/membermouse.com\/wp-content\/litespeed\/avatar\/69cacd8325ef9810065b0b177318f497.jpg?ver=1789018807","width":96,"height":96,"caption":"Curt Noble"}},{"@type":"WebPage","@id":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/#webpage","url":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/","name":"MemberMouse WordPress Filters | MemberMouse","description":"Filters are functions that WordPress passes data through, at certain points in execution, just before taking some action with the data. MemberMouse defines its own set of filters that you can utilize to control the flow of execution in MemberMouse prior to certain actions being taken. Here's a basic example: function customContentProtection($data) { return true;","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/membermouse.com\/de\/#website"},"breadcrumb":{"@id":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/#breadcrumblist"},"author":{"@id":"https:\/\/membermouse.com\/de\/author\/curtcaseproof-com\/#author"},"creator":{"@id":"https:\/\/membermouse.com\/de\/author\/curtcaseproof-com\/#author"},"datePublished":"2023-08-14T14:22:17-04:00","dateModified":"2025-01-07T09:55:29-05:00"},{"@type":"WebSite","@id":"https:\/\/membermouse.com\/de\/#website","url":"https:\/\/membermouse.com\/de\/","name":"MemberMouse","inLanguage":"de-DE","publisher":{"@id":"https:\/\/membermouse.com\/de\/#organization"}}]},"og:locale":"de_DE","og:site_name":"MemberMouse |","og:type":"article","og:title":"MemberMouse WordPress Filters | MemberMouse","og:description":"Filters are functions that WordPress passes data through, at certain points in execution, just before taking some action with the data. MemberMouse defines its own set of filters that you can utilize to control the flow of execution in MemberMouse prior to certain actions being taken. Here's a basic example: function customContentProtection($data) { return true;","og:url":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/","article:published_time":"2023-08-14T21:22:17+00:00","article:modified_time":"2025-01-07T14:55:29+00:00","article:publisher":"https:\/\/www.facebook.com\/membermouse","twitter:card":"summary_large_image","twitter:site":"@MemberMouse","twitter:title":"MemberMouse WordPress Filters | MemberMouse","twitter:description":"Filters are functions that WordPress passes data through, at certain points in execution, just before taking some action with the data. MemberMouse defines its own set of filters that you can utilize to control the flow of execution in MemberMouse prior to certain actions being taken. Here's a basic example: function customContentProtection($data) { return true;","twitter:creator":"@MemberMouse"},"aioseo_meta_data":{"post_id":"8073","title":null,"description":null,"keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"WebPage","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"limit_modified_date":false,"reviewed_by":null,"open_ai":"{\"title\":{\"suggestions\":[],\"usage\":0},\"description\":{\"suggestions\":[],\"usage\":0}}","created":"2023-10-11 18:39:41","updated":"2026-06-03 04:54:02","ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":"2026-06-03 03:28:50","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t<a href=\"https:\/\/membermouse.com\/de\" title=\"Home\">Home<\/a>\n<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t<a href=\"https:\/\/membermouse.com\/de\/article-categories\/developer-tools\/\" title=\"Developer Tools\">Developer Tools<\/a>\n<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t<a href=\"https:\/\/membermouse.com\/de\/article-categories\/mm-wp-hooks-filters\/\" title=\"WordPress Hooks and Filters\">WordPress Hooks and Filters<\/a>\n<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\tMemberMouse WordPress Filters\n<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/membermouse.com\/de"},{"label":"Developer Tools","link":"https:\/\/membermouse.com\/de\/article-categories\/developer-tools\/"},{"label":"WordPress Hooks and Filters","link":"https:\/\/membermouse.com\/de\/article-categories\/mm-wp-hooks-filters\/"},{"label":"MemberMouse WordPress Filters","link":"https:\/\/membermouse.com\/de\/docs\/membermouse-wordpress-filters\/"}],"_links":{"self":[{"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/ht-kb\/8073","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/users\/21411"}],"replies":[{"embeddable":true,"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/comments?post=8073"}],"version-history":[{"count":1,"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/ht-kb\/8073\/revisions"}],"predecessor-version":[{"id":20432,"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/ht-kb\/8073\/revisions\/20432"}],"wp:attachment":[{"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/media?parent=8073"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/ht-kb-category?post=8073"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/membermouse.com\/de\/wp-json\/wp\/v2\/ht-kb-tag?post=8073"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}