Powiadomienie – własne powiadomienia WordPress

Opis

Własne powiadomienia bez żadnego wysiłku. Powiadom kogokolwiek o czymkolwiek co dzieje się w Twoim WordPressie. Z rozbudowanymi znacznikami możesz niemalże bez ograniczeń konfigurować swoje wiadomości. Ustawiaj nielimitowane powiadomienia prosto z panelu administracyjnego WordPress przez piękny i intuicyjny interfejs w mniej niż 5 minut.

Zmiana domyślnych maili WordPressa

Teraz dzięki tej wtyczce możesz łatwo wyłączyć domyślne e-maile WordPressa i zastąpić je własnymi. Aby to zrobić, możesz użyć naszego wspaniałego Kreatora, który poprowadzi Cię przez cały proces.

Jak to działa

Wtyczka Powiadomienie składa się z trzech głównych komponentów:

  • Wyzwalacz – akcja WordPress, np. Rejestracja użytkownika lub publikacja wpisu
  • Powiadomienie – to coś co jest wysyłane, np. Email lub SMS
  • Znacznik – ciąg znaków zamieniany na dynamiczną treść, np. {email_uzytkownika} lub {link_wpisu}

Możesz ich używać w dowolnej kombinacji, dodając tyle powiadomień ile tylko chcesz. Powiadomienia mogą być wysyłane do wielu odbiorców z taką treścią jaką ustawisz dla każdego z nich.

Proces jest prosty:

  • Wybierz wyzwalacz
  • Skomponuj swoją wiadomość używając znaczników
  • Ustaw odbiorców
  • Zapisz powiadomienie

Od tej chwili powiadomienie działa. Przetestuj je i dodaj więcej powiadomień!

Perfekcyjna wtyczka dla programistów

Wtyczka Powiadomienie jest prosta do ustawienia w panelu administracyjnym WordPress, a rozszerzenie jej jest jeszcze prostrze dzięki bombastycznemu API.

Własne wyzwalacze możesz utworzyć z jakiejkolwiek akcji WordPress. Jeśli w swojej wtyczce robisz do_action( 'moja_wtyczk_zrobila_cos_fajnego' ) to możesz użyć tej akcji podczas tworzenia wyzwalacza.

To sprawia, że możesz używać wtyczki Powiadomnie jako system powiadomień w Twojej własnej wtyczce lub motywie. Jak? No cóż, dzięki dwóm rzeczom:

  • Możesz z łatwością załadować wtyczkę z innej wtyczki lub motywu ładując po prostu plik load.php. Funkcja znana z wtyczki Advanced Custom Fields.
  • Możesz usunąć wszelki znaki, że używasz gotowej wtyczki dzięki możliwości wprowadzenia trybu „white label”. Tryb ten włączysz jedną funkcją, która jest już zawarta we wtyczce. Za darmo.

Jak proste jest rozszerzenie wtyczki Prowiadomienie? Zobaczmy:

  • Dodanie nowego znacznika do istniejącego wyzwalacza – 1 linijka kodu
  • Creating custom Trigger – one intuitive class definition and registration with a single method call
  • Definiowanie globalnego znacznika – 1 linia kodu
  • Stworzenie rozszerzenia – przygotowaliśmy Boilerplate dla rozszerzeń, gotowy, aby zacząć nowe rozszerzenie w minutę

Zobacz dokumentację dla programistów jeśli nam nie wierzysz.

Domyślne nośniki

  • Email
  • Webhook
  • Webhook JSON

Domyślni odbiorcy

Ta wtyczka zawiera kilka domyślnie zarejestrowanych typów odbiorców dla Emaila:

  • Adres email lub znacznik – email do wpisania lub znacznik
  • Administrator – pobierze adres email administratora z ogólnych ustawień WordPress.
  • Użytkownik – pobiera adres email z profilu użytkownika WordPress
  • Rola – powiadom wszystkich użytkowników o danej roli

Domyślne wyzwalacze

Wszystkie poniższe wyzwalacze są zarejestrowane już we wtyczce i gotowe do użycia. Możesz je aktywować lub deaktywować na stronie ustawień wtyczki.

WordPress:

  • Dostępne aktualizacje – wysyłane tak często, jak je ustawisz, np. co tydzień

Typ treści:

  • Powiadomienie o opublikowanym wpisie
  • Powiadomienie o dodaniu wpisu do bazy danych
  • Powiadomienie o zapisaniu wpisu jako szkic
  • Wpis zaktualizowany
  • Powiadomienie o wpisie wysłanym do akceptacji
  • Powiadomienie o zatwierdzonym (oczekującym za publikację) wpisie
  • Powiadomienie o wpisie przeniesionym do kosza

Wtyczka Powiadomienie wspiera domyślnie każdy typ treści.

Taksonomia:

  • Powiadomienie o stworzeniu taksonomii
  • Powiadomienie o aktualizacji taksonomii
  • Powiadomienie o usunięciu taksonomii

Wtyczka Powiadomienie obsługuje domyślnie wszelkie Taksonomie.

Komentarz / Pingback / Trackback:

  • Powiadomienie o nowym komentarzu
  • Powiadomienie o odpowiedzi na komentarz
  • Powiadomienie o zaakceptowanym komentarzu
  • Powiadomienie o odrzuconym komentarzu
  • Powiadomienie o komentarzu oznaczonym jako spam
  • Powiadomienie o komentarzu przeniesionym do kosza

Użytkownik:

  • Powiadomienie o rejestracji użytkownika
  • Powiadomienie o aktualizacji profilu użytkownika
  • Powiadomienie o zalogowaniu użytkownika
  • Powiadomienie o logowaniu użytkownika zakończonym niepowodzeniem
  • Powiadomienie o wylogowaniu użytkownika
  • Powiadomienie o prośbie użytkownika o reset hasła
  • Powiadomienie o zmianie hasła użytkownika
  • Powiadomienie o usunięciu użytkownika

Media:

  • Powiadomienie o dodaniu mediów
  • Powiadomienie o aktualizacji mediów
  • Powiadomienie o usunięciu mediów

Wtyczka:

  • Powiadomienie o aktywacji wtyczki
  • Powiadomienie o dezaktywacji wtyczki
  • Powiadomienie o instalacji wtyczki
  • Powiadomienie o usunięciu wtyczki
  • Powiadomienie o aktualizacji wtyczki

Motyw:

  • Powiadomienie o instalacji motywu
  • Powiadomienie o zmianie motywu
  • Powiadomienie o aktualizacji motywu

WordPress:

  • Powiadomienie o dostępnych aktualizacjach

Privacy:

  • Powiadomienie o usunięciu danych osobowych
  • Powiadomienie o prośbie usunięcia danych osobowych
  • Powiadomienie o eksporcie danych osobowych
  • Powiadomienie o prośbie eksportu danych osobowych

Chętnie przyjmiemy sugestie co do innych wyzwalaczy, napisz nam o tym na forum wsparcia.

Każdy wyzwalacz ma swoje własne znaczniki, ale możesz używać znaczników globalnych gdziekolwiek chcesz.

Globalne znaczniki

Oprócz znaczników właściwych dla danego wyzwalacza, możesz użyć tych poniższych gdziekolwiek chcesz:

  • Adres URL witryny – {home_url}
  • Nazwa witryny – {site_title}
  • Opis witryny – {site_tagline}
  • Nazwa obecnie używanego motywu – {site_theme_name}
  • Wersja obecnie używanego motywu – {site_theme_version}
  • Obecna wersja WordPress- {wordpress_version}
  • Email administratora – {admin_email}
  • Nazwa wyzwalacza – {trigger_name}
  • Uproszczona nazwa wyzwalacza – {trigger_slug}

Świetne rozszerzenia

  • Conditionals – wysyłaj powiadomienia po spełnieniu określonych warunków
  • Custom Fields – używaj dowolnej wartości z meta w swoich powiadomieniach
  • Slack – post messages to Slack channel
  • Push – send push notifications via browser’s native system
  • Discord – post messages to Discord channel
  • Twilio – send bulk SMS messages from your Twilio registered phone number
  • Scheduled Triggers – rozplanuj swoje powiadomienia w oparciu o wyzwalacze czasowe
  • Review Queue – złap swoje powiadomienia do kolejki moderatorskiej, aby sprawdzić je ręcznie
  • WooCommerce – wyzwalacze specyficzne dla WooCommerce
  • Pushbullet – wysyłaj powiadomienia Push i SMS za pomocą swojego telefonu
  • Pushover – send Push messages to devices registered in Pushover
  • SendGrid – wysyłaj e-maile używając usługi SendGrid
  • Mailgun – wysyłaj e-maile używając usługi Mailgun
  • File Log – zapisuj powiadomienia jako pliki na serwerze
  • bbPress – bbPress triggers
  • BuddyPress – BuddyPress triggers and integration with their notification system
  • Signature – dodaj podpis do wszystkich swoich e-maili automatycznie
  • AppPresser – push messages to your mobile app built with AppPresser
  • Email Attachments – załączaj pliki do swoich powiadomień

Nadchodzące wkrótce – głosuj na rozszerzenia

  • Facebook – publikuj wiadomości na Facebooku
  • Twitter – publikuj wiadomości na Twitterze
  • Zapier – połącz dowolne wydarzenie WordPressa z Zapier
  • WordPress Poster – twórz wpisy w WordPressie

Możliwe przypadki użycia

  • Nadpisywanie domyślnych e-maili WordPressa
  • Powiadomienie dla autora wpisu, kiedy jego wpis zostanie opublikowany
  • Powiadomienie dla administratora oraz autora komentarza, kiedy komentarz zostanie zaakceptowany
  • Powiadomienie dla administratora kiedy użytkownik zaloguje się na swoje konto
  • Powiadomienie o usuniętym koncie użytkownika

Przydatne linki

CUSTOM DEVELOPMENT

BracketSpace – the company behind this plugin provides custom WordPress plugin development services. We can create any custom plugin for you.

Zrzuty ekranu

  • Ekran edycji powiadomienia
  • Wszystkie dodane powiadomienia
  • Ustawienia
  • Rozszerzenia
  • Zakładka pomocy z globalnymi znacznikami
  • Kreator
  • Wyłącznik domyślnych e-maili

Instalacja

Wymagania

Ta wtyczka wymaga PHP w wersji conajmniej 7.0.

Instalacja wtyczki

Pobierz i zainstaluj tą wtyczkę z ekranu Wtyczki -> Dodaj nową, w Twoim panelu WordPress.

Dołączanie Powiadomienia do wtyczki lub motywu

Wtyczka Powiadomienie może być ładowana jako komponent innej wtyczki lub motywu. Aby to zrobić, załąduj plik load.php z plików wtyczki. Powiadomienie samo się domyśli czy jest ładowane z wtyczki czy motywu i ustawi swoje ścieżki.

Zobacz szczegółowy poradnik

Najczęściej zadawane pytania

Jak mogę przetestować moje powiadomienia?

Nie ma konieczności instalowania dodatkowych wtyczek w celu przechwytywania wiadomości e-mail lub innych powiadomień. Wtyczka Powiadomienie zawiera log powiadomień, który możesz aktywować w ustawieniach, aby zobaczyć wszystkie parametry konfiguracji powiadomień.

Dlaczego nie otrzymuję żadnych e-maili?

Czy Twój WordPress wysyła w ogóle jakieś e-maile? Najlepszym sposobem na przetestowanie tego jest próba zresetowania hasła. Jeśli nie otrzymasz żadnej wiadomości e-mail, oznacza to, że coś jest nie tak z Twoją konfiguracją serwera. Możesz użyć dowolnej wtyczki SMTP, aby to naprawić.

Możesz też spróbować włączyć dziennik powiadomień w ustawieniach wtyczki, aby sprawdzić, czy wiadomość e-mail jest wysyłana.

Czy ta wtyczka jest dla zwykłych użytkowników?

Oczywiście, że tak! Chcemy, aby wszyscy byli zadowoleni, i użytkownicy i programiści. Użytkownicy mają intuicyjny i piękny panel po stronie administracyjnej WordPress, a programiści mają świetne API dzięki któremu mogą rozszerzać wtyczkę.

Nie ma więc znaczenia czy posiadasz jakieś umiejętności programowania. Nie są one potrzebne, aby ustawić powiadomienia za pomocą tej wtyczki.

Czym ta wtyczka różni się od Better Notifications for WordPress (BNFW)?

Wtyczka Powiadomienie działa bardzo podobnie do BNFW, ale ma lepszą bazę kodu i interfejs. Pełne porównanie możesz zobaczyć w artykule Notification vs Better Notifications for WordPress.

Jak zarejestrować własny wyzwalacz?

Używając funkcji register_trigger(). Zobacz szczegółowy poradnik

Jak dołączyć wartość z meta do powiadomienia?

Możesz stworzyć znaczniki samemu lub pójść na skróty z nie wymagającym myślenia rozszerzeniemCustom Fields.

Jak stworzyć powiadomienia dotyczące tylko szczególnych wpisów / kategorii / użytkowników itd.?

Możesz kontrolować dokładne warunki wysyłania powiadomień z rozszerzeniem Conditionals.

Czy mogę wysyłać do niestandardowej listy odbiorców, opartej na mojej własnej logice wtyczki lub motywu?

Tak, po prostu zawrzyj filter-id:some-value w polu Odbiorca (używając typu Email/Znacznik w nośniku Email), a potem zwróć listę swoich odbiorców z filtru notification/recipient/email/some-value.

Czy mogę dołączyć tą wtyczkę do mojej wtyczki lub motywu?

Tak, możesz. Zobacz szczegółowy poradnik

Czy ta wtyczka jest w stanie wysłać duże ilości e-maili?

Wtyczka jest w stanie i może wysłać miliony e-maili, ale prawdopodobnie Twój serwer – nie. Aby wysyłać tysiące e-maili jednocześnie, sugerujemy użycie rozszerzeń takich jak SendGrid lub Mailgun, które zostały zaprojektowane do obsługi dużej ilości wiadomości w jednym wywołaniu API.

Korzystając z SMTP, praktycznie niemożliwe jest wysłanie więcej niż kilkunastu wiadomości naraz, z powodu limitów czasowych.

Czy mogę przetestować moje powiadomienia przed wysłaniem?

Tak, po prostu włącz dziennik powiadomień w sekcji DEBUGOWANIE w ustawieniach wtyczki. Wszystkie powiadomienia zostaną przechwycone do dziennika widocznego tylko dla Ciebie.

Can you create a plugin for me?

Yes! We’re offering a custom plugin development services. Feel free to contact us to find out how we can help you.

Recenzje

2022-10-21 1 odpowiedź
This plugin is great for developers looking to integrate their own notifications outside the scope of what is normally offered through WordPress, or even WooCommerce for that matter. The Bracketspace team's premium support has been invaluable on our projects with extremely specific use cases. They take the time to walk you through how certain aspects of the plugin work and help you understand the technology you are building with.
2022-09-20 1 odpowiedź
Sometimes site owners don't want to sign up for a care plan because they don't really see the point of it. They hardly ever log into their admin and are unaware that their site is outdated until something goes wrong. This plugin is useful for notifying them that updates are available in their WordPress admin. You can configure the frequency of sending emails as well as the sender and the recipients. Tags within the email allow you to fill in the detailed list of available updates as well as their number. Simple and efficient.
2022-08-30 5 odpowiedzi
I can't recommend this plugin and the developers enough. The CEO and senior developer of the company, Jakub Mikita, went above and beyond to help me achieve a customized notification related to a third party plugin. I also purchased their Woocommerce add-on which works great. Having the opportunity to have a back and forth dialogue with Jakub made it clear to me that he is a first class developer. And a first class human being! Thank you, Jakub.
2022-05-06 1 odpowiedź
So I purchased an Extension, but I am having a problem with it. I emailed the support twice, its been a week without any reply.

Kontrybutorzy i deweloperzy

„Powiadomienie – własne powiadomienia WordPress” jest oprogramowaniem open source. Poniższe osoby miały wkład w rozwój wtyczki.

Zaangażowani

Rejestr zmian

8.0.14

  • [Fixed] Outdated dochoooks compatibility file, causing a fatal error while adding new post in some environments.

8.0.13

  • [Fixed] Regression with REST API check.
  • [Changed] repeater_api internal runtime component to api.
  • [Added] get_endpoint method to the API class.

8.0.12

  • [Changed] Logic of assigning property name is moved to Abstract Merge Tag Class.
  • [Added] Property names to Term Merge Tags.
  • [Added] 6h cache expire to the user queries.
  • [Added] Email / Merge tag recipient now can also be separated with semicolon.
  • [Added] Endpoint to check whether the REST api is enabled.

8.0.11

  • [Changed] Add php_xml to required php extensions.
  • [Changed] Background processing cache is being stored in transient instead of an option.
  • [Fixed] PHP 8.0 and 8.1 compatibility.
  • [Fixed] Improper caching expiration times.
  • [Fixed] Trigger keeping state between subsequent action runs.
  • [Fixed] Password reset trigger is not processed on user registration anymore.
  • [Added] Trigger resume() method to reset the stopped state.

8.0.10

  • [Fixed] User logout trigger. In WordPress 5.5 the context is set properly.
  • [Fixed] Issue with persistent Trigger state if two or more actions assigned to the same trigger were called.
  • [Changed] Carrier’s recipients field is now returned with resolved data if available.
  • [Added] Post Published privately trigger.

8.0.9

  • [Fixed] Merge Tags resolver problem caused by overriding the processed trigger instance.
  • [Changed] notification/should_send filter is now executed when the queue is processed, not before the notification is added to the queue.
  • [Added] New queue methods: remove() and clear().

8.0.8

  • [Fixed] Two or more same triggers processed in the same request overwriting each other data.

8.0.7

  • [Fixed] Shortcode stripping regex that was matching JSON arrays.
  • [Changed] Extensions are now reporting updates even if they are not activated.
  • [Changed] Updated EDD Updater class.
  • [Added] Webhook warning logging when response is not valid.

8.0.6

  • [Fixed] Extension activation notice link.
  • [Fixed] Extension activation process.
  • [Fixed] Incorrect empty merge tag cleaning which was misreading JSON format.

8.0.5

  • [Changed] Updated PHP dependencies.

8.0.4

  • [Changed] Updated PHP dependencies.
  • [Changed] Extension license notice is now printed once and covers all the plugins.
  • [Changed] Some of the core fields like Import/Export now have own setting classes.
  • [Fixed] Remaining template variable escaping.
  • [Removed] HTML Settings field, introduced in v8.0.3. Now it’s required to create purpose-specific field classes.

8.0.3

  • [Added] HTML Settings field.
  • [Added] Notification hash column in the Notification table.
  • [Changed] Some of the Settings to HTML field instead of the Message field.
  • [Fixed] Broken Import/Export sections.
  • [Fixed] Notifications cache is now cleared when creating notification via wizard.

8.0.2

  • [Added] HTML escaping and nonce verifications.
  • [Changed] Notification file syncing is now using Filesystem methods.
  • [Changed] Internal cache classes with micropackage/cache.
  • [Changed] Menu icon.
  • [Changed] Vue is now loaded from within the plugin instead of CDN.
  • [Removed] Internal cache classes Bracketspace\Notification\Utils\Cache and Bracketspace\Notification\Utils\Interfaces namespaces.
  • [Removed] Settings internal caching that couldn’t wait for all the fields to be registered. Now we’re relying on the get_option() core function caching.

8.0.1

  • [Changed] Field and Merge Tag description field is now escaped and cannot contain any HTML tags.
  • [Fixed] Recipients parser which didn’t resolved Email Merge Tags.

8.0.0

Compatibility Breaking Changes

  1. Runtime get_filesystems() method has been changed to get_filesystem() and now only root file system is defined.
  2. Trigger action() method has been renamed to context().
  3. Trigger doesn’t have the postponing feature anymore, as processing is happening on the shutdown action.
  4. Trigger is now only a description object, all the processing is handled by the Runner class.
  5. notification/carrier/sent action doesn’t have the Notification context anymore, so there’s no 3rd parameter.
  6. Store classes now live under BracketSpace\Notification\Store namespace rather than BracketSpace\Notification\Defaults\Store.
  7. Plugin doesn’t cache anything anymore, the loading process is more streamlined and things like Post Types are lazy loaded when needed
  8. Registration functions has been replaced with Register class and its static methods.
  9. Multiple functions has been replaced with their static method equivalents.
  10. notification/elements action has been deprecated, use notification/init instead.
  11. NOTIFICATION_VERSION constant has been removed, use Notification::version() instead.
  12. BracketSpace\Notification\Vendor namespace is replaced with BracketSpace\Notification\Dependencies.

Removed deprecated hooks:
notification/notification/pre-send, use notification/carrier/pre-send
notificaiton/notification/field/resolving, use notification/carrier/field/resolving
notification/value/strip_empty_mergetags, use notification/resolve/strip_empty_mergetags
notification/value/strip_shortcodes, use notification/carrier/field/value/strip_shortcodes
notificaiton/notification/field/resolved, use notification/carrier/field/value/resolved
notificaiton/merge_tag/value/resolved, use notification/merge_tag/value/resolved
notification/webhook/remote_args/{$method}, use notification/carrier/webhook/remote_args/{$method}
notification/webhook/called/{$method}, use notification/carrier/webhook/called/{$method}
notification/boot/initial, use notification/init
notification/boot, use notification/init

Pełny dziennik zmian

  • [Fixed] Code issues from not using static analysis.
  • [Fixed] WordPress’ balanceTags filter which was breaking the Notification content.
  • [Fixed] Notification importing.
  • [Fixed] Setting fields escaping.
  • [Fixed] Post Updated Trigger which failed for updating pending posts, that doesn’t have the slug yet.
  • [Changed] Always return the single root filesystem in Runtime.
  • [Changed] Stores with plugin objects, now they are much simpler and don’t use WP filters.
  • [Changed] Plugin loading stack, see docs for more details.
  • [Changed] Plugin settings now are initialized on notification/init 5 action.
  • [Changed] Recipients now can be loaded anytime, not only before Carriers get registered.
  • [Changed] PHP Dependency handling, now all the PHP dependencies lives in src/Dependencies dir.
  • [Removed] Common Abstract that has been replaced by HasName and HasSlug Traits.
  • [Removed] Cache class and all caching mechanism for post types, taxonomies and comment types.
  • [Removed] Trait Users. This is replaced with BracketSpace\Notification\Queries\UserQueries class.
  • [Removed] Deprecated hooks for actions and filters.
  • [Removed] Carrier helper functions: notification_register_carrier, notification_get_carriers, notification_get_carrier.
  • [Removed] Recipient helper functions: notification_register_recipient, notification_get_recipients, notification_get_carrier_recipients, notification_get_recipient, notification_parse_recipient.
  • [Removed] Resolver helper functions: notification_register_resolver, notification_resolve, notification_clear_tags.
  • [Removed] Trigger helper functions: notification_register_trigger, notification_get_triggers, notification_get_trigger, notification_get_triggers_grouped.
  • [Removed] GLobal Merge Tags helper functions: notification_add_global_merge_tag, notification_get_global_merge_tags.
  • [Removed] Misc functions: notification_display_wizard, notification_ajax_handler, notification_filesystem.
  • [Removed] Template functions: notification_template, notification_get_template.
  • [Removed] Notification post functions: notification_get_posts, notification_get_post_by_hash, notification_post_is_new.
  • [Removed] Syncing functions: notification_sync, notification_get_sync_path, notification_is_syncing.
  • [Removed] Whitelabeling functions: notification_whitelabel, notification_is_whitelabeled.
  • [Removed] Editor and Code Editor fields sanitizers to allow for HTML usage, ie. email templates.
  • [Removed] notification/elements action hoook.
  • [Removed] NOTIFICATION_VERSION constant.
  • [Added] Runner class that processes the Triggers.
  • [Added] ErrorHandler class that helps handle errors. It can throw an exception when NOTIFICATION_DEBUG is enabled or save a warning to error_log when it’s disabled.
  • [Added] Plugin settings value lazy loading.
  • [Added] Email error catcher.
  • [Added] Free and Premium extensions upselling.
  • [Added] Notification::fs() helper that returns plugin filesystem.
  • [Added] Core\Templates wrapper for Templates provider.