# Szűrők a megjelenés és a jelentések módosításához

> Az Analytify szűrői (filterei): vezérlőpult, widget, grafikonok, e-mailes jelentések, shortcode-ok és a gyorsítótár testreszabása kóddal.

Az Analytify WordPress-szűrőkön (filter) keresztül testreszabható. A kódrészleteket a sablon (vagy gyermeksablon) `functions.php` fájljába, vagy egy saját kiegészítő bővítménybe tedd. A példákban szereplő értékeket (színek, számok, URL-ek) cseréld a sajátjaidra.

## Vezérlőpult

### A grafikon színei az összehasonlító nézetben

Az `analytify_compare_graph_colors` szűrővel átszínezheted az összehasonlító grafikont. A tömb kulcsai: `visitors_last_month`, `visitors_last_year`, `views_last_year`, `views_last_month` (a korábbi időszak), valamint `visitors_this_month`, `visitors_this_year`, `views_this_year`, `views_this_month` (a mostani időszak).

```php
function analytify_change_compare_graph_colors( $colors ) {
    $colors['visitors_last_month'] = '#4e77f7';
    $colors['visitors_last_year']  = '#4e77f7';
    $colors['views_last_year']     = '#4e77f7';
    $colors['views_last_month']    = '#4e77f7';

    $colors['visitors_this_month'] = '#9626f3';
    $colors['visitors_this_year']  = '#9626f3';
    $colors['views_this_year']     = '#9626f3';
    $colors['views_this_month']    = '#9626f3';

    return $colors;
}
add_filter( 'analytify_compare_graph_colors', 'analytify_change_compare_graph_colors', 10, 1 );
```

### A grafikon típusa: vonalról oszlopra

A látogatók és megtekintések grafikonja alapból vonaldiagram. Az `analytify_comp_chart_graph` szűrő `'bar'` értékével oszlopdiagram lesz belőle (a másik érvényes érték: `'line'`).

```php
add_filter(
    'analytify_comp_chart_graph',
    static function ( $type ) {
        return 'bar';
    }
);
```

### Új és visszatérő látogatók, eszközök: kördiagramok színei

Az **Új és visszatérő látogatók** kördiagram színeit az `analytify_new_vs_returning_visitors_chart_colors` szűrő adja meg (két szín), a **Látogatók eszközei** kördiagramét az `analytify_visitor_devices_chart_colors` (három szín). Az utóbbi a vezérlőpult-widgeten is érvényes.

```php
add_filter( 'analytify_new_vs_returning_visitors_chart_colors', function ( $colors ) {
    return [ 'yellow', 'purple' ];
} );

add_filter( 'analytify_visitor_devices_chart_colors', function ( $colors ) {
    return [ 'yellow', 'purple', 'orange' ];
} );
```

### Navigációs fülek elrejtése

Két szűrő van a vezérlőpult fülsorának szűkítésére.

Az `analytify_hide_dashboard_tabs` szűrő egy tömböt vár vissza, a benne szereplő fülek tűnnek el. A lehetséges nevek: `Forms Tracking`, `Events Tracking`, `Campaigns`, `Goals`, `WooCommerce`, `EDD`, `Authors`, `Demographics`, `Search Terms`, `Dimensions`, `Real-Time`, `Conversions`, `Acquisition`, `Monetization`, `Engagement`.

```php
function analytify_hide_dashboard_tabs_cb( $tab_items ) {
    $hide_tabs = array(
        'Forms Tracking',
        'Events Tracking',
    );
    return $hide_tabs;
}
add_filter( 'analytify_hide_dashboard_tabs', 'analytify_hide_dashboard_tabs_cb' );
```

Az `analytify_filter_navigation_items` szűrő a navigációs elemek teljes listáját kapja, és a megtartandó elemeket adja vissza. Így név szerint kiszűrhetsz elemeket:

```php
add_filter( 'analytify_filter_navigation_items', function ( $items ) {
    $items_to_hide = [ 'Audience', 'Conversions', 'Real-Time' ];

    return array_filter( $items, function ( $item ) use ( $items_to_hide ) {
        return ! in_array( $item['name'], $items_to_hide, true );
    } );
} );
```

### A fejléc animációjának leállítása

A vezérlőpult fejlécében animáció fut. Az `analytify_dashboard_head_animate` szűrő `false` értékével kikapcsolhatod (alapérték: `true`).

```php
add_filter( 'analytify_dashboard_head_animate', function ( $condition ) {
    return false;
} );
```

### A statisztikák gyorsítótárának ideje

Az Analytify alapból 24 óránként kér le új statisztikát a Google Analyticstől. Ha az **Analytify → Beállítások → Vezérlőpult** oldalon bekapcsolod a gyorsítótár törlését, ez 10 óra. A Google Analytics adatai általában 10 és 24 óra között frissülnek, ezért nem érdemes nagyon rövidre venni. Az `analytify_stats_cache_time` szűrő másodpercben várja az új időt.

```php
function modify_analytify_stats_cache_time() {
    return 60 * 60 * 5; // 5 óra másodpercben
}
add_filter( 'analytify_stats_cache_time', 'modify_analytify_stats_cache_time' );
```

### Tracking kód megjegyzéseinek eltávolítása

Az Analytify nyitó és záró HTML-megjegyzést tesz a követőkód köré. Ha nem akarod látni őket az oldal forráskódjában:

```php
add_filter( 'analytify_tracking_code_comments', '__return_false' );
```

### Gyorsmenü sorbarendezése az admin sávban

Az admin eszköztár **Analytify** menüjének gyorslinkjei alapból rendezetlenek. Ez a kód betűrendbe (A-Z) teszi őket:

```php
add_filter( 'wp_before_admin_bar_render', function ( $items ) {
    global $wp_admin_bar;

    $admin_bar_items = $wp_admin_bar->get_nodes();

    $analytify_items = array_filter( $admin_bar_items, function ( $item ) {
        return strpos( $item->id, 'analytify' ) === 0;
    } );

    usort( $analytify_items, function ( $a, $b ) {
        return strcmp( $a->title, $b->title );
    } );

    foreach ( $analytify_items as $item ) {
        $wp_admin_bar->remove_menu( $item->id );
    }

    foreach ( $analytify_items as $item ) {
        $wp_admin_bar->add_menu( (array) $item );
    }
} );
```

### Szerzők legördülő menüje szerepkör szerint

A **Szerzőkövetés** vezérlőpultján a szerző kiválasztására szolgáló legördülő menü alapból minden szerepkör felhasználóit listázza. Az `analytify_authors_dashboard_stat_roles` szűrővel csak a megadott szerepköröké látszik.

```php
add_filter( 'analytify_authors_dashboard_stat_roles', static function ( $role ) {
    return array( 'Administrator', 'Editor', 'Author' );
} );
```

## Vezérlőpult-widget

### Sorok száma a szakaszokban

A widget Top városok, Top országok, Top oldalak, Top kulcsszavak és Top hivatkozók szakaszai alapból oldalanként 5 sort mutatnak. Szakaszonként külön szűrővel állítható a sorok száma (a példákban 10):

| Szakasz | Szűrő |
| --- | --- |
| Top városok | `analytify_widget_top_cities_per_page` |
| Top országok | `analytify_widget_top_countries_filter` |
| Top oldalak | `analytify_widget_top_pages_by_views_filter` |
| Top kulcsszavak | `analytify_widget_top_keywords_filter` |
| Top hivatkozók | `analytify_widget_top_refferals_filter` |

```php
add_filter( 'analytify_widget_top_cities_per_page', static function ( $value ) {
    return 10;
} );
```

A többi szűrő ugyanígy használható, csak a szűrő nevét kell cserélni. (A hivatkozók szűrőjének neve a kódban elírással szerepel: `refferals`; pontosan így kell megadni.)

### Látogatók és megtekintések grafikon az általános statisztikában

A widget **Általános statisztika** szakaszában a látogatók és megtekintések grafikonja alapból rejtett. Az `analytify_widget_graph_display_filter` szűrővel jelenik meg, ha az Analytify Pro aktív.

```php
add_filter( 'analytify_widget_graph_display_filter', '__return_true' );
```

## E-mailes jelentések

### A „Vezérlőpultra” gomb címe

Az e-mailes jelentés gombja alapból az Analytify vezérlőpultjára visz. Az `analytify_email_dashboard_url` szűrővel más címet adhatsz meg.

```php
add_filter( 'analytify_email_dashboard_url', function ( $url ) {
    return 'https://pelda.hu/statisztika/';
} );
```

### A bevezető üzenet cseréje

A jelentés tetején álló alapértelmezett bevezető mondatot az `analytify_custom_email_message` szűrő cseréli le.

```php
add_filter( 'analytify_custom_email_message', function ( $string ) {
    return 'Itt találod a Google Analytics-jelentésedet.';
} );
```

### Földrajzi statisztika: csak országok vagy csak városok

A jelentés földrajzi része alapból országok és városok szerint is mutatja a látogatókat. A két szűrő egyikével az egyik táblázatot elrejtheted:

- `display_email_cities_table` `false` értékkel: a városok táblázata nem jelenik meg, csak az országok maradnak.
- `display_email_countries_table` `false` értékkel: az országok táblázata nem jelenik meg, csak a városok maradnak.

```php
add_filter( 'display_email_cities_table', static function ( $display ) {
    return false;
} );
```

### A top oldalak száma

Az **E-mail** kiegészítő jelentései alapból az 5 legnépszerűbb oldalt mutatják. Az `analytify_api_limit_top_pages_email` szűrővel ez a szám növelhető vagy csökkenthető. A szűrő két paramétert kap (a második, a GA mód, belső használatú), ezért a regisztrálásnál add meg a paraméterek számát is. Ha a szűrő nincs megadva, vagy 1-nél kisebb értéket ad vissza, az Analytify 5 oldalt mutat.

```php
add_filter( 'analytify_api_limit_top_pages_email', function ( $limit, $ga_mode ) {
    return 10; // 10 top oldal 5 helyett
}, 10, 2 );
```

## Shortcode-ok

### A világtérkép színei

A látogatók világtérképének (lásd: [Látogatók világtérképe shortcode-dal](https://hub.hellowp.io/hu/plugins/wp-analytify-pro/elolap-es-shortcode-vilagterkep/)) előre megadott színei az `analytify_world_map_shortcode_colors` szűrővel cserélhetők. Színek tömbjét kell visszaadni.

```php
add_filter( 'analytify_world_map_shortcode_colors', function ( $colors ) {
    return [ '#5555FF', '#00FF11', '#FF4444', '#FFFF88', '#FFFFFF' ];
} );
```
