Archiwum kategorii: Wordpress

WordPress. Jak znaleźć tabele z kategoriami wordpress’a w bazie MySQL? How To Find Out WordPress Category Table in MYSQL?

Wordpress. Jak znaleźć tabele z kategoriami wordpress'a w bazie MySQL? How To Find Out WordPress Category Table in MYSQL?

W bazie WordPress nie znajdziecie typowej tabeli o nazwie np. "Categories" w której znajdziecie wszystkie kategorie które wprowadzacie z menu "Wpisy -> Kategorie". Kategorie zapisywane są w tabeli "wp_terms" (UWAGA: prefix "wp_" jest domyślny przy instalacji. Jeśli przy instalacji wybrałeś inny prefix szukaj tabeli "terms" z Twoim prefixem). Jednak to czy dany wpis w tej tabel jest kategorią mówi wartość w innej kolumnie w innej tabeli a mianowicie w kolumnie o nazwie "taxonomy" w tabeli "wp_term_taxonomy". Żeby dany wpis z tabeli "wp_terms" był kategorią to po złączeniu obu tabel (wp_terms i wp_term_taxonomy) po wartościach z pól "term_id" wartość w polu "taxonomy" w tabeli "wp_term_taxonomy" musi być równa "category".

Obie tabele (wp_terms i wp_term_taxonomy) i powiązania między nimi prezentuje poniższy obrazek.

Wordpress. Jak znaleźć tabele z kategoriami wordpress'a w bazie MySQL? How To Find Out WordPress Category Table in MYSQL?

Poniżej prezentuję zapytanie do bazy które wyciągnie kategorie z podkategoriami i liczbę wpisów z danej kategorii bądź podkategorii.

SELECT
     (CASE
        WHEN t2.name IS NULL THEN t1.name
        WHEN t2.name IS NOT NULL THEN t2.name
     END)AS Kategoria
    ,t1.name AS Podkategoria
    ,tt1.count AS LiczbaWpisów
    
FROM
    wp_term_taxonomy tt1
    JOIN wp_terms t1 ON tt1.term_id = t1.term_id
    LEFT JOIN wp_term_taxonomy tt2 ON tt1.parent = tt2.term_id
    LEFT JOIN wp_terms t2 ON tt2.term_id = t2.term_id

WHERE
    tt1.taxonomy = 'category'

ORDER BY
    Kategoria

WordPress WP Statistics – statystyka odwiedzających.

Wordpress WP Statistics – statystyka odwiedzających.

W życiu każdego WordPressowego blogera  przychodzi taki czas, że zaczynasz się interesować ile to osób wchodzi na Twojego bloga. Standardowo Worspress nie powala możliwościami takich statystyk, więc jednym z rozwiązań takiego stanu rzeczy jest instalacji jakiejś wtycznie która wypełnia tą lukę. W mnie wybór padł na wtyczkę WP Statistics. Przez jakiś czas statystyki prezentowane przez tą wtyczke mnie zadowalaly ale po jakimś czasie zacząłem chcieć wiedzieć więcej, porównywać dni w miesiący itp. Standardowo wtyczka daje pewne dane na temat odwiedzających (przykładowy widok podsumowania poniżej),

czyli np. ile osób odwiedziło bloga dzisiaj, wczoraj …. no i właśnie a później jest tylko w ciągu 7, 30, 365 dni. Jakbym chciał porównać np wszystkie dni w danym miesiącu to już nie mam takiej możliwości. W tym celu stworzyłem kilka zapytań sql bezpośrednio na bazę danych, żeby móc tą lukę statystyczną wypełnić. W celu uruchomienia zapytań łączymy się z nasza bazą na które stoi nasz blog WordPress'a np poprzez PhpMyAdmin'a i uruchamiamy zapytanie.

I tak:

żeby wyświetlić ile odwiedzających mieliśmy danego dnia ale wyniki posortowane malejąco wg. liczby odwiedzających to wykonaj na bazie poniższe zapytanie.

SELECT
     last_counter AS Data
    ,count(*) AS LiczbaOdwiedzających
FROM
    wp_statistics_visitor
GROUP BY
    last_counter
ORDER BY
    count(*) DESC

!!! UWAGA !!! jeżeli przy instalacji nadałeś tabelom jakiś inny prefix niź domyślny, czyli "wp_", to dodaj go przed nazwą tabeli "statistics_visitor" czyli np "[twój_prefix]_statistics_visitor".

Przykładowy efekt zapytania poniżej (obrazek z PhpMyAdmina).

żeby wyświetlić ile odwiedzających mieliśmy każdego dnia w danym miesiącu, to wykonaj na bazie poniższe zapytanie

SELECT
     last_counter AS Data
    ,count(*) AS LiczbaOdwiedzających
FROM
    wp_statistics_visitor
WHERE
    last_counter between '2016-12-01' and '2016-12-18'
GROUP BY
    last_counter
ORDER BY
    last_counter

Oczywiście przy poleceniu BETWEEN dajemy takie daty jakie nas interesuj. Ponizej przykładowy efekt uruchomienia zapytania (z PhpMyAdmin).