Jak zintegrować powiadomienie o Slack z WordPress?
Opublikowany: 2020-02-07Przy tak wielu różnych wymaganiach walczących o twoją uwagę we współczesnym życiu, łatwo można stracić z oczu wiele ważnych zadań, które powinieneś wykonać i miejmy nadzieję, że ci się przypomni. W końcu biurko pełne nabazgranych karteczek samoprzylepnych może zrobić tylko tyle, aby przypomnieć Ci o czymś ważnym, więc istnieje duża szansa, że ostatnio o czymś zapomniałeś. Istnieje jednak sposób, aby Slack przypominał ci o wszystkich tych zadaniach, kiedy tego potrzebujesz, a dobrą wiadomością jest to, że pokażemy ci, jak to skonfigurować!
Może być wiele rzeczy, o których możesz potrzebować Slack, aby ci przypomnieć. Przypomnienie kto, co, kiedy i dlaczego jest niezwykle ważne i może obejmować wszystko, od przypomnienia o spotkaniu z kierownikiem banku, terminowego zgłaszania kosztów podróży lub przypomnienia o zbliżającym się terminie ważnego projektu. Przykładem przypomnienia, którego będziemy używać na tym blogu, jest skonfigurowanie wiadomości „przypomnienie na blogu o Slack”. Chociaż możesz zastąpić to dowolnym przypomnieniem, które jest bardziej odpowiednie dla Ciebie i Twojej sytuacji.
Biorąc pod uwagę znaczenie SEO, większość osób prowadzących strony internetowe zdaje sobie sprawę z tego, jak ważne jest regularne aktualizowanie i publikowanie nowych blogów. Chociaż zadania potrzebne do odniesienia sukcesu w SEO są pilnie strzeżoną tajemnicą, wiemy, że regularne publikowanie nowego bloga to świetny sposób na awans w rankingu Google SEO. W związku z tym właściciele witryn mogą być zainteresowani aplikacją na Slack, która wyśle powiadomienie na Twój kanał Slack, jeśli nie opublikowałeś nowego artykułu na swoim blogu w ciągu ostatnich 7 dni. Mamy nadzieję, że te przypomnienia pomogą Ci lepiej zarządzać artykułami i blogami, a także pomogą Ci przypomnieć o ich opublikowaniu na czas.
W tym artykule pokazujemy, jak zintegrować powiadomienie Slack ze swoim blogiem WordPress za pomocą aplikacji, którą możesz stworzyć samodzielnie.
Pierwsze kroki – Utwórz aplikację na Slack
Aby rozpocząć, musisz najpierw utworzyć aplikację na swoim koncie Slack. Aby to zrobić, przejdź do strony Slack API i kliknij przycisk „Utwórz nową aplikację”.
Spowoduje to utworzenie wyskakującego okienka. Uzupełnij żądane dane, a zostaniesz przekierowany na „stronę ustawień”. Na tej stronie ustawień kliknij „Przychodzące webhooki” w lewej sekcji. Przełącz tę opcję na "Włączone".
Przewiń w dół i kliknij przycisk „Poproś o dodanie nowego webhooka”. Jeśli nie jesteś administratorem, musisz uzyskać zgodę administratora, aby uzyskać dostęp do tej opcji.
Po zatwierdzeniu aplikacji kliknij „Zainstaluj aplikację” w menu po lewej stronie. A następnie naciśnij przycisk „Zainstaluj aplikację w obszarze roboczym”.
Wybierz żądany kanał na następnej stronie i kliknij przycisk „Zezwól”. Następnie zostaniesz przekierowany na stronę, na której otrzymasz adres URL Webhooka. Skopiuj ten adres URL, ponieważ będzie on wkrótce potrzebny.
Wyślij powiadomienie na kanale Slack z WordPress
Jesteś teraz gotowy do kontynuowania, ponieważ masz adres URL Webhooka i skonfigurowałeś również kanał Slack, na który zostanie wysłane powiadomienie. Następnie musisz napisać kod, który wysyła żądanie POST wraz z wiadomością na adres URL webhooka. Ten adres URL webhooka automatycznie opublikuje otrzymaną wiadomość na wybranym kanale Slack.
Więc zróbmy trochę kodowania.
Oblicz dni, w których opublikowano ostatni artykuł
Wysyłając powiadomienie na kanał Slack, musisz najpierw obliczyć dni od opublikowania ostatniego artykułu. Poniższy kod wejdzie do twoich aktywnych motywów: plik functions.php
.

<?php function get_daycount_of_last_blog_posted(){ $args=array( 'post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => 1, ); $datediff = 0; $blog_posts = new WP_Query( $args ); if ( $blog_posts->have_posts() ) : while ( $blog_posts->have_posts() ) : $blog_posts->the_post(); $datediff = time() - strtotime(get_the_date()); endwhile; wp_reset_postdata(); endif; if ($datediff) return round($datediff / (60 * 60 * 24)); return $datediff; }
Ten kod i metoda pobierze ostatni dodany post z bazy danych WordPress i obliczy dni między momentem, w którym o to poprosiłeś, a opublikowaniem ostatniego artykułu.
Wyślij żądanie POST do webhooka
WordPress udostępnia funkcję wp_remote_post() , która wykonuje żądanie HTTP i odbiera odpowiedź. Korzystając z tej metody wyślemy naszą niestandardową wiadomość do webhooka.
Utwórz plik notification.php
w katalogu głównym swojego projektu WordPress i dodaj do niego poniższy kod.
<?php require_once('wp-load.php'); $slack_webhook_url = 'YOUR_WEBHOOK_URL'; $last_blog_day_count = get_daycount_of_last_blog_posted(); if($last_blog_day_count > 5) { $msg = 'Hey team, our app found that we have not added new article on UpdraftPlus for more than 5 days. Please look into it.'; // Prepare the data / payload to be posted to Slack $data = array( 'payload' => json_encode( array( "text" => $msg, ) ) ); // Post our data via the slack webhook endpoint using wp_remote_post wp_remote_post( $slack_webhook_url, array( 'method' => 'POST', 'body' => $data, ) ); }
Ten kod wyśle wiadomość na adres URL webhooka, jeśli nowy artykuł nie zostanie dodany do Twojego bloga przez ponad 5 dni. W rezultacie otrzymasz powiadomienie na wybranym kanale Slack.
Ustaw crona na swoim serwerze
Naszym celem jest stworzenie zautomatyzowanego systemu, który powiadomi zespół o tym zadaniu na konkretnym kanale Slack. Z tego powodu utworzyliśmy plik PHP w folderze głównym projektu WordPress. Ustawiając cron z tym plikiem na swoim serwerze, możesz skonfigurować aplikację Slack, aby działała automatycznie.
Ustawienie crona na serwerze może się różnić w zależności od dostawcy hostingu. Na potrzeby tego samouczka podamy przykład, jak ustawić cron na CPanel hostingu Media Temple.
Zaloguj się do swojego CPanel. Wybierz „Zadania Cron” w sekcji „Zaawansowane”.
Na następnej stronie wybierz opcję „Raz dziennie (0 0 * * *)” z menu „Wspólne ustawienia”. Oznacza to, że cron wykona skrypt raz dziennie.
Na koniec w polu Polecenie dodaj poniższą instrukcję, dostosowując ścieżkę do pliku notification.php
.
<pre>/usr/local/bin/php /home/xyz/public_html/notification.php</pre>
Otóż to!
Postępując zgodnie z tym samouczkiem, możesz teraz stworzyć własną aplikację Slack dla siebie i swojego zespołu. Pomoże to wszystkim być na bieżąco z zaplanowanymi blogami i zapewni, że nie przegapisz żadnych ważnych dat.
Wpis Jak zintegrować powiadomienie o Slack z WordPressem pojawił się jako pierwszy na UpdraftPlus. UpdraftPlus – Wtyczka do tworzenia kopii zapasowych, przywracania i migracji dla WordPress.