Ten fragment kodu PHP jest dedykowany dla witryn WordPress korzystających z wtyczki WooCommerce. Służy do rozszerzenia standardowego menu konta użytkownika o dodatkową zakładkę „Pomoc techniczna”. Poniżej znajduje się szczegółowy opis tego, co kod robi, do czego służy, jakie korzyści przynosi oraz instrukcje dotyczące jego implementacji.

Kod składa się z kilku funkcji, które współpracują ze sobą, dodając nową zakładkę do menu konta w WooCommerce:

  1. Dodawanie zakładki do menu konta: Funkcja my_custom_my_account_menu_items modyfikuje istniejące menu konta użytkownika, dodając nową pozycję „Pomoc techniczna”. Dzięki temu powstaje niestandardowa zakładka konta, która dodawana jest do tablicy elementów menu.

  2. Obsługa treści zakładki: Funkcja my_custom_endpoint_content jest wywoływana, gdy użytkownik przechodzi do nowo utworzonej zakładki „Pomoc techniczna”. Dzięki temu funkcja wyświetla treść, którą generuje shortcode WordPressa, co pozwala na łatwą integrację z innymi wtyczkami lub niestandardową treść.

  3. Rejestracja nowego endpointu: Funkcja my_custom_add_endpoint dodaje nowy endpoint (punkt końcowy URL) do WordPressa. Umożliwia to WordPressowi rozpoznanie i prawidłowe przekierowanie do zakładki „Pomoc techniczna” jako niestandardowa zakładka menu konta użytkownika.

  4. Czyszczenie reguł przekierowań: Funkcja my_custom_flush_rewrite_rules jest wywoływana po aktywacji motywu, aby upewnić się, że wszystkie niestandardowe endpointy są prawidłowo zarejestrowane i że WordPress zna nowe URL-e. Jest to krytyczne dla prawidłowego działania dodanych endpointów.
  • Personalizacja interfejsu użytkownika: Umożliwia dodanie niestandardowych zakładek do menu konta, co poprawia doświadczenia użytkownika, oferując szybki dostęp do ważnych sekcji, jak wsparcie techniczne.
  • Elastyczność: Możliwość wykorzystania shortcode’ów do wyświetlania dowolnej treści pozwala na łatwą integrację z różnymi funkcjami lub wtyczkami.
  • Łatwa integracja i aktualizacja: Dodawanie nowych funkcji do menu przez kod (a nie modyfikacje tematu) ułatwia utrzymanie i aktualizacje.
function my_custom_my_account_menu_items( $items ) {
    $items['tech_support'] = __( 'Pomoc techniczna', 'woocommerce' );
    return $items;
}
add_filter( 'woocommerce_account_menu_items', 'my_custom_my_account_menu_items' );

function my_custom_endpoint_content() {
    echo do_shortcode( 'tutaj-umiesc-swoj-shortcode' );
}
add_action( 'woocommerce_account_tech_support_endpoint', 'my_custom_endpoint_content' );

function my_custom_add_endpoint() {
    add_rewrite_endpoint( 'tech_support', EP_ROOT | EP_PAGES );
}
add_action( 'init', 'my_custom_add_endpoint' );

function my_custom_flush_rewrite_rules() {
    flush_rewrite_rules();
}
add_action( 'after_switch_theme', 'my_custom_flush_rewrite_rules' );
Niestandardowa zakładka Menu Konta

my_custom_my_account_menu_items

  • Argument: $items (array) – tablica zawierająca elementy menu konta użytkownika.
  • Zwraca: Zmodyfikowaną tablicę z dodanym elementem tech_support.

my_custom_endpoint_content

  • Wyświetla treść generowaną przez shortcode, który można dostosować.

my_custom_add_endpoint

  • Dodaje endpoint tech_support używając funkcji add_rewrite_endpoint.

my_custom_flush_rewrite_rules

  • Wywołuje funkcję flush_rewrite_rules, co jest niezbędne do aktualizacji i przyjęcia nowych reguł przekierowań w WordPress.

Aby zakładka „Pomoc techniczna” była widoczna i funkcjonowała poprawnie po dodaniu tego kodu, konieczne jest przejście do sekcji Ustawienia > Bezpośrednie odnośniki w panelu administracyjnym WordPressa i kliknięcie Zapisz zmiany. Na koniec tą czynnością zresetujemy reguły przekierowań, które są konieczne dla działania nowych endpointów.

Dzięki temu dodamy skutecznie zakładkę „Pomoc techniczna” do naszego menu konta użytkownika WooCommerce, a jej zawartość będziemy mogli łatwo modyfikować i dostosowywać za pomocą shortcode’ów.

Pamiętaj że nazwę dla swojej zakładki możesz ustawić oczywiście pod swoje preferencje.

Imię:


Nazwisko:


Adres email:


Nazwa Twojej firmy:


NIP Twojej firmy

REGON Twojej firmy



Adres Twojej firmy

Ulica

Kod pocztowy

Miasto

Wybierz bramkę płatniczą na Twojej stronie