Wordpress SEO - Czego szukasz?

Jeżeli szukasz odpowiedzi na pytania związane z SEO lub Wordpressem wpisz frazę i czekaj na podpowiedzi lub kliknij enter! Wyniki pokazują także linki do zewnętrznych źródeł.

193 artykułów w bazie

Dodawanie i wyświetlanie pól w profilu użytkownika WP


[ SEOWind.io - pisz treści które rankują się w TOPach ]

Pracując z WordPressem często chcemy aby rejestrujący się użytkownicy byli w stanie uzupełnić swój profil o interesujące nas dane np. adres profilu Facebook lub wiek. Dziś pokaże jak w prosty sposób można dodawać pola w panelu użytkownika.

W bazie SQL WordPress przechowuje w tabeli nazwanej wp_usermeta dane odpowiadające konkretnym użytkownikom. Wyświetlane są one panelu administracyjnym w Użytkownicy => Twój profil. Tabela zbudowana jest tak, że można w prosty sposób rozszerzyć ją o nowe rekordy. Poniższy kod odpowiada za dodanie trzech pól odpowiadających za linki do najpopularniejszych profili społecznościowych. Do pliku functions.php znajdującego się naszym szablonie dodajemy:

add_action( 'show_user_profile', 'add_extra_social_links' );
add_action( 'edit_user_profile', 'add_extra_social_links' );

function add_extra_social_links( $user )
{
    ?>
        <h3>Profile społecznościowe</h3>

        <table class="form-table">
            <tr>
                <th><label for="facebook_profile">Facebook</label></th>
                <td><input type="text" name="facebook_profile" value="<?php echo esc_attr(get_the_author_meta( 'facebook_profile', $user->ID )); ?>" class="regular-text" /></td>
            </tr>

            <tr>
                <th><label for="twitter_profile">Twitter</label></th>
                <td><input type="text" name="twitter_profile" value="<?php echo esc_attr(get_the_author_meta( 'twitter_profile', $user->ID )); ?>" class="regular-text" /></td>
            </tr>

            <tr>
                <th><label for="google_profile">Google+</label></th>
                <td><input type="text" name="google_profile" value="<?php echo esc_attr(get_the_author_meta( 'google_profile', $user->ID )); ?>" class="regular-text" /></td>
            </tr>
        </table>
    <?php
}

Tak to powinno się  mniejwięcej wyświetlać:

profil-profile

Zapisywanie danych

Niezbędna jest także reguła odpowiadająca za zapisanie danych w bazie. Może się ona znajdywać bezpośrednio po kodzie wyświetlonym powyżej.

add_action( 'personal_options_update', 'save_extra_social_links' );
add_action( 'edit_user_profile_update', 'save_extra_social_links' );

function save_extra_social_links( $user_id )
{
    update_user_meta( $user_id,'facebook_profile', sanitize_text_field( $_POST['facebook_profile'] ) );
    update_user_meta( $user_id,'twitter_profile', sanitize_text_field( $_POST['twitter_profile'] ) );
    update_user_meta( $user_id,'google_profile', sanitize_text_field( $_POST['google_profile'] ) );
}

Jak wyświetlać dane?

Jako przykład podałem pole odpowiedzialne za wyświetlanie linku do profilu Twittera.

the_author_meta( 'twitter_profile', $userID );

Wtyczki

Rzecz jasna do bardziej rozbudowanych projektów polecam zastosowanie w tym celu wtyczki. Ja osobiście korzystam z dwóch rozwiązań mianowicie: User Meta oraz Profile Builder PRO. Poniżej zaprezentowany jest screen z panelu administracyjnego pierwszej z nich. Jak widać jest moc 🙂

Źródło: https://wordpress.org/plugins/user-meta/screenshots/

O Wojciech Władziński

Branżą SEO zajmuję się od 2008 roku. Na co dzień starszy specjalista ds. SEO w firmie Seogroup. Tworzę i optymalizuję duże serwisy jak i mniejsze strony internetowe. Szczególnie upodobałem sobie środowisko WordPressa, który mimo powszechnej opinii nie jest tylko platformą blogową.
  • Linki Wewnętrzene i Sematyka

  • Budowanie linków
  • Sematyka
  • Budowanie linków nigdy nie było prostrze. Setki możliwości linków za jednym kliknięciem.
  • SEMRush

  • Profesjonalna platforma SEO
  • Online
  • SEMrush oferuje rozwiązania dla SEO, PPC, treści, mediów społecznościowych i badań konkurencyjnych.