Dodaj swoje elementy do paska administracyjnego WordPress
Nie tak dawno temu zająłem się cross-postingiem w internecie i długo szukałem usług, do którego możesz automatycznie publikować dane ze swoich blogów, ale jak się okazało nie jest to takie proste. Na przykład, sieć społecznościowa Vkontakte i Google+ nie chcą tego robić. Myślę, że istnieją obejścia, ale szczerze mówiąc, nie znalazłem ich., czy nie było czasu, to było po prostu leniwe.
Po dobrze podrapaniu rzepy stwierdziłem, że nie jest mi trudno nacisnąć kilka przycisków, aby wysłać napisany post na ścianę w sieci społecznościowej. Stąd narodził się pomysł, aby znaleźć sposób standardowy pasek administracyjny WordPress dodaj niestandardowe przyciski.
Na jednym z serwisów, nie pamiętam dokładnie jakie, Znalazłem kod szczególnie nawet bez opisu, ale wszystko było dla mnie jasne z kodu i tak dalej. Zawsze myślałem, że to trudniejsze ).
Zacznijmy budować niestandardowy pasek administracyjny WordPress
Najpierw otwórz plik funkcji z motywu, gdzie możesz bezboleśnie dodać swoje funkcje. Ten plik znajduje się pod adresem:
wp-content/themes/nazwa twojego motywu/functions.php
W otwartym pliku na samym końcu dodaj kod.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
/********************************/ // новое меню в админ баре function wp_admin_bar_init() { if (!is_super_admin() || !is_admin_bar_showing() ) return; add_action('admin_bar_menu', 'wp_admin_bar_links', 500); } function wp_admin_bar_links() { global $wp_admin_bar; $url = 'https://'. $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]; $html = file_get_contents($url); if(preg_match('/(.*)<\/title>/smU', $html, $matches)) { $title = $matches[1];} $gwt_url = ''. $_SERVER["SERVER_NAME"]; $hitUa = 'https://hit.ua/home'; $gwt = 'https://www.google.com/webmasters/tools/dashboard?hl=en&siteUrl=https://'.urlencode($gwt_url).'/'; $yandexMetrika = 'https://metrika.yandex.ua/list/'; $pr_cy = 'https://www.pr-cy.ru/analysis/'.urlencode($gwt_url); $cy_pr = 'https://www.cy-pr.com/analysis/'.urlencode($gwt_url); $alexa = 'https://www.alexa.com/siteinfo/'.urlencode($gwt_url); $gPlus = 'https://plus.google.com/u/0/b/106026944582268240509/106026944582268240509/posts'; $twitter_reactions = 'https://twitter.com/#!/search/realtime/'. urlencode($url); $facebook = 'https://www.facebook.com/UrokiWordPress'; //$facebook = 'https://www.facebook.com/sharer.php?u='.urlencode($url); $twitter = 'https://twitter.com/home?status='.urlencode($title).' '.urlencode($url); $grabr = 'https://grabr.ru/add'; $blogistica = 'https://blogistica.ru/submit'; $seominds = 'https://seominds.ru/topic/add/'; $webice = 'https://webice.ru/addnews.html'; $vkontakt = 'https://vkontakte.ru/share.php?url='.urlencode($url); $lj = 'https://www.livejournal.com/update.bml?event='.urlencode($url).'&subject='.urlencode($title); $gbuzz = 'https://www.google.com/reader/link?url='.urlencode($url).'&title='.urlencode($title).'&srcURL=https://'.urlencode($gwt_url); $mm = 'https://connect.mail.ru/share?share_url='.urlencode($url); $ya_ru = 'https://my.ya.ru/posts_add_link.xml?URL='.urlencode($url).'&&title='.urlencode($title);; $memori = 'https://memori.ru/link/?sm=1&u_data[url]='.urlencode($url); $bobrdobr = 'https://bobrdobr.ru/addext.html?url='.urlencode($url).'&title='.urlencode($title); $moemesto = 'https://moemesto.ru/post.php?url='.urlencode($url).'&title='.urlencode($title); $misterwong = 'https://www.mister-wong.ru/index.php?action=addurl&bm_url='.urlencode($url).'&bm_description='.urlencode($title); $addArticleWPLessons = 'https://wp-admin.com.ua/'; $links = array( 'Статистика в Google Webmaster Tools' => $gwt, 'Статистика в HIT.UA' => $hitUa, 'Статистика в Yandex Metrica' => $yandexMetrika, 'Показатели сайта в PR-CY.ru' => $pr_cy, 'Показатели сайта в cy-pr.com' => $cy_pr, 'Alexa Info'=>$alexa, 'Опубликовать в Google+' => $gPlus, 'Реакции в Twitter' => $twitter_reactions, 'Опубликовать в Facebook' => $facebook, 'Опубликовать в Twitter' => $twitter, 'Опубликовать в вКонтакте' => $vkontakt, 'Опубликовать в ЖЖ' => $lj, 'Опубликовать в Google Buzz' => $gbuzz, 'Опубликовать в Мой Мир' => $mm, 'Опубликовать в Я.ру' => $ya_ru, 'Анонсировать в Grabr' => $grabr, 'Анонсировать в Блогистике' => $blogistica, 'Анонсировать в Seominds' => $seominds, 'Анонсировать в Webice' => $webice, 'Добавить в Memori.ru' => $memori, 'Добавить в БобрДобр' => $bobrdobr, 'Добавить в МоеМесто' => $moemesto, 'Добавить в MisterWong' => $misterwong, 'Добавить сатью в wp-admin.com.ua' => $addArticleWPLessons, ); $wp_admin_bar->add_menu( array( 'title' => 'Share', 'href' => false, 'parent' => false )); foreach ($links as $label => $url) { $wp_admin_bar->add_menu( array( 'title' => $label, 'href' => $url, 'parent' => 'share', 'meta' => array('target' => '_blank') )); } } add_action('admin_bar_init', 'wp_admin_bar_init'); /***********************************************************/// новое меню в админ баре |
Rozważ kod naszego paska administracyjnego w kolejności. Pierwsza funkcja wp_admin_bar_init inicjalizuje nasz przycisk Pasek administratora. Ta funkcja sprawdza, czy użytkownik jest zalogowany jako administrator i czy ma włączony pasek administratora. Jeśli wszystkie warunki zostały pomyślnie spełnione, następnie specjalny hak do wykonania kodu silnika dodaje również wykonanie funkcji wp_admin_bar_links().
światowy $wp_admin_bar - metoda, która jest instancją klasy WP_Admin_Bar. Dalej jeszcze łatwiej. Wewnątrz funkcji wp_admin_bar_links() opisujemy zmienne ścieżkami, gdzie powinny się znaleźć po kliknięciu jednego z elementów menu, które tworzymy na pasku administratora. szyk $spinki do mankietów reprezentuje renderowany wygląd elementów menu.
Na koniec dodaj sam element do paska administracyjnego $wp_admin_bar->dodaj_menu( szyk… . Poniżej w pętli dodawane są elementy podrzędne z tablicy $spinki do mankietów.
foreach ($spinki do mankietów jako $etykieta => $adres URL) {
Wynik pracy utworzony AdminBar
Ogólnie i w ogóle. Czekam na Twoje komentarze, sugestie, jak jeszcze możesz użyć tego kodu i wskazówki dotyczące ulepszania kodu.
Kolejny artykuł na ten temat: Dodanie przycisku do paska administratora. Dodaj do koszyka.
/*
- Podstawowy kurs projektowania stron internetowych;
- Układ stron;
- Ogólny kurs CMS WordPress oraz kontynuacja kursu dotyczącego tworzenia szablonów;
- Tworzenie stron internetowych w PHP.