{"id":52,"date":"2019-03-22T12:23:47","date_gmt":"2019-03-22T11:23:47","guid":{"rendered":"https:\/\/statify.pluginkollektiv.org\/de\/?page_id=52"},"modified":"2022-09-12T21:32:54","modified_gmt":"2022-09-12T19:32:54","slug":"hooks","status":"publish","type":"page","link":"https:\/\/statify.pluginkollektiv.org\/de\/documentation\/hooks\/","title":{"rendered":"Hooks"},"content":{"rendered":"\n<p>Hooks erlauben es dem Nutzer, den Funktionsumfang eines WordPress-Plugins zu erweitern. Nachfolgende Hooks sind in <em>Statify<\/em> hinterlegt und lassen sich via Code ansprechen bzw. steuern:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"#skip_tracking\" data-type=\"internal\" data-id=\"#skip_tracking\">statify__skip_tracking<\/a><\/li><li><a href=\"#user_can_see_stats\">statify__user_can_see_stats<\/a><\/li><li><a href=\"#visit_saved\" data-type=\"internal\" data-id=\"#visit_saved\">statify__visit_saved<\/a><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"skip_tracking\">statify__skip_tracking<\/h2>\n\n\n\n<p><strong>Typ:<\/strong> <em>Filter (Boolean<\/em>)<br> <strong>Implementierung:<\/strong> <em>Statify 1.2.6<\/em><\/p>\n\n\n\n<p>Benutzerdefinierte Steuerung der Z\u00e4hlung von Seitenaufrufen abh\u00e4ngig \nz.B. vom Seitentyp, Nutzerrechten, Browsertyp. Auf diese Weise lassen \nsich alle oder bestimmte Blogseiten von der Z\u00e4hlung ausschlie\u00dfen.<\/p>\n\n\n\n<p>Der Hook erh\u00e4lt einen (optionalen) Parameter, welcher das Ergebnis vorhergehender Filter (falls vorhanden) enth\u00e4lt. Der erste benutzerdefinierte Filter erh\u00e4lt immer&nbsp;<code>null<\/code>.<\/p>\n\n\n\n<p>Es gibt drei m\u00f6gliche R\u00fcckgabewerte:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><code>true<\/code>&nbsp;&#8211;&nbsp;<em>Statify<\/em>&nbsp;ber\u00fccksichtigt die aktuell aufgerufene Blogseite&nbsp;<em>nicht<\/em><\/li><li><code>false<\/code>&nbsp;&#8211;&nbsp;<em>Statify<\/em>&nbsp;ber\u00fccksichtigt die aktuelle Anfrage ohne eingebaute Filter auszuwerten<\/li><li><code>null<\/code>&nbsp;&#8211; kann als&nbsp;<em>&#8222;keine Entscheidung&#8220;<\/em>&nbsp;interpretiert werden,&nbsp;<em>Statify<\/em>&nbsp;wird mit der Auswertung eingebauter Filter fortfahren<\/li><\/ul>\n\n\n\n<p><strong>Exemplarischer Code:<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">add_filter(\n    <span class=\"hljs-string\">'statify__skip_tracking'<\/span>,\n    <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span><span class=\"hljs-params\">( $previous_result )<\/span> <\/span>{\n        <span class=\"hljs-keyword\">if<\/span> ( <span class=\"hljs-number\">1<\/span> === <span class=\"hljs-number\">1<\/span> ) {\n            <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-keyword\">true<\/span>;\n        }\n\t\n        <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-keyword\">false<\/span>;\n    }\n);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-css-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"user_can_see_stats\">statify__user_can_see_stats<\/h2>\n\n\n\n<p><strong>Typ:<\/strong> <em>Filter (Boolean)<\/em><br> <strong>Implementierung:<\/strong> <em>Statify 1.3.1<\/em><\/p>\n\n\n\n<p>Anzeigesteuerung der Dashboard-Statistiken f\u00fcr Nicht-Administratoren.\n Der Zugriff auf das Dashboard-Widget mit WordPress-Statistiken kann \npunktuell pro Nutzer oder Nutzergruppe gew\u00e4hrt werden.<\/p>\n\n\n\n<p>Der R\u00fcckgabewert <code>true<\/code> <em>erlaubt<\/em> den Zugang zur  Statistik. Das Bearbeiten der Plugin-Einstellungen im Widget bleibt  weiterhin ausschlie\u00dflich Anwendern mit der Benutzerrolle <a href=\"https:\/\/wordpress.org\/support\/article\/roles-and-capabilities\/#edit_dashboard\">edit_dashboard<\/a> vorbehalten.<\/p>\n\n\n\n<p><strong>Exemplarischer Code:<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">add_filter( <span class=\"hljs-string\">'statify__user_can_see_stats'<\/span>, <span class=\"hljs-string\">'__return_true'<\/span> );<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><strong>Spezifisch f\u00fcr Redakteure:<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">add_filter(add_filter(\n    <span class=\"hljs-string\">'statify__user_can_see_stats'<\/span>,\n    <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span><span class=\"hljs-params\">( $previous )<\/span> <\/span>{\n        <span class=\"hljs-keyword\">return<\/span> $previous || current_user_can( <span class=\"hljs-string\">'edit_others_pages'<\/span> );\n    }\n);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Mehr Rollen und deren Rechte findest du im <a href=\"https:\/\/wordpress.org\/support\/article\/roles-and-capabilities\/\">Codex<\/a>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"visit_saved\">statify__visit_saved<\/h2>\n\n\n\n<p><strong>Typ:<\/strong> <em>Action<\/em><br> <strong>Implementierung:<\/strong> <em>Statify 1.6.0<\/em><\/p>\n\n\n\n<p>Dieser Action Hook wird ausgel\u00f6st, nachdem&nbsp;<em>Statify<\/em>&nbsp;einen Besuch in der Datenbank gespeichert hat. Er ist f\u00fcr weiterf\u00fchrende Verarbeitung oder Erweiterung des Ergebnisses konzipiert.<\/p>\n\n\n\n<p>Der Hook erh\u00e4lt bis zu zwei Parameter:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><code>array $data<\/code>&nbsp;&#8211; assoziatives Array mit den drei Felden, die in die Datenbank eingef\u00fcgt wurden:<ul><li><code>created<\/code>&nbsp;&#8211; Datum des Besuchs als String im&nbsp;<em>YYYY-MM-DD<\/em>&nbsp;Format<\/li><li><code>referrer<\/code>&nbsp;&#8211; die Referrer URL<\/li><li><code>target<\/code>&nbsp;&#8211; die Zielseite (relative URL)<\/li><\/ul><\/li><li><code>int $id<\/code>&nbsp;&#8211; ID des Eintrages in der Tabelle&nbsp;<code>wp_statify<\/code><\/li><\/ul>\n\n\n\n<p><strong>Exemplarischer Code:<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">add_action(\n    <span class=\"hljs-string\">'statify__visit_saved'<\/span>,\n    <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span><span class=\"hljs-params\">( $data, $id )<\/span> <\/span>{\n        <span class=\"hljs-comment\">\/*\n         * Do custom stuff...\n         *\n         * $data = array(\n         *   'created'  =&gt; '2020-05-20',\n         *   'referrer' =&gt; 'https:\/\/pluginkollektiv.org\/',\n         *   'target`   =&gt; '\/'\n         * )\n         *\n         * $id = 42\n         *\/<\/span>\n    },\n    <span class=\"hljs-number\">10<\/span>,\n    <span class=\"hljs-number\">2<\/span>\n);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>","protected":false},"excerpt":{"rendered":"<p>Hooks erlauben es dem Nutzer, den Funktionsumfang eines WordPress-Plugins zu erweitern. Nachfolgende Hooks sind in Statify hinterlegt und lassen sich via Code ansprechen bzw. steuern: statify__skip_tracking statify__user_can_see_stats statify__visit_saved statify__skip_tracking Typ: Filter (Boolean) Implementierung: Statify 1.2.6 Benutzerdefinierte Steuerung der Z\u00e4hlung von Seitenaufrufen abh\u00e4ngig z.B. vom Seitentyp, Nutzerrechten, Browsertyp. Auf diese Weise lassen sich alle oder bestimmte &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":12,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-52","page","type-page","status-publish","hentry","post","without-featured-image"],"_links":{"self":[{"href":"https:\/\/statify.pluginkollektiv.org\/de\/wp-json\/wp\/v2\/pages\/52","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/statify.pluginkollektiv.org\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/statify.pluginkollektiv.org\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/statify.pluginkollektiv.org\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statify.pluginkollektiv.org\/de\/wp-json\/wp\/v2\/comments?post=52"}],"version-history":[{"count":7,"href":"https:\/\/statify.pluginkollektiv.org\/de\/wp-json\/wp\/v2\/pages\/52\/revisions"}],"predecessor-version":[{"id":216,"href":"https:\/\/statify.pluginkollektiv.org\/de\/wp-json\/wp\/v2\/pages\/52\/revisions\/216"}],"up":[{"embeddable":true,"href":"https:\/\/statify.pluginkollektiv.org\/de\/wp-json\/wp\/v2\/pages\/12"}],"wp:attachment":[{"href":"https:\/\/statify.pluginkollektiv.org\/de\/wp-json\/wp\/v2\/media?parent=52"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}