Файловый менеджер - Редактировать - /home/harasnat/www/horse/wp-content/plugins/pinterest-for-woocommerce/src/Notes/Collection/AbstractNote.php
Назад
<?php /** * Pinterest for WooCommerce Abstract Note. * * @package Pinterest_For_WooCommerce/Classes/ * @version 1.1.0 */ declare( strict_types=1 ); namespace Automattic\WooCommerce\Pinterest\Notes\Collection; use Automattic\WooCommerce\Admin\Notes\DataStore; use Automattic\WooCommerce\Admin\Notes\Note; use Automattic\WooCommerce\Admin\Notes\Notes; use Automattic\WooCommerce\Admin\Notes\NotesUnavailableException; use stdClass; defined( 'ABSPATH' ) || exit; /** * AbstractNote class. This is a proxy that helps us using the WC Admin Note * class in the context of Pinterest For WooCommerce plugin. * * @since 1.1.0 */ abstract class AbstractNote { const NOTE_NAME = ''; /** * Check if the note has been previously added. * * @throws NotesUnavailableException Throws exception when notes are unavailable. */ public static function note_exists() { /** * Notes Data Store. * * @var DataStore $data_store */ $data_store = Notes::load_data_store(); $note_ids = $data_store->get_notes_with_name( static::NOTE_NAME ); return ! empty( $note_ids ); } /** * Get the note entry. * * @since 1.1.0 * @return Note Pre-filled note. */ public function prepare_note() { $note = new Note(); $this->fill_in_note_details( $note ); return $note; } /** * Use helper functions to prepare the note. * * @since 1.1.0 * @param Note $note The note that we are setting up. * * @return void */ protected function fill_in_note_details( $note ): void { $note->set_title( $this->get_note_title() ); $note->set_content( $this->get_note_content() ); $note->set_content_data( new stdClass() ); $note->set_type( $this->get_type() ); $note->set_layout( $this->get_layout() ); $note->set_image( $this->get_image() ); $note->set_name( $this->get_name() ); $note->set_source( $this->get_slug() ); $this->add_action( $note ); } /** * Get note type. * * @since 1.1.0 * @return string Note type. */ protected function get_type(): string { return Note::E_WC_ADMIN_NOTE_INFORMATIONAL; } /** * Get the note's unique name. * * @since 1.1.0 * @return string Note name. */ protected function get_name(): string { return static::NOTE_NAME; } /** * Get note layout style. * * @since 1.1.0 * @return string Note layout style. */ protected function get_layout() { return 'plain'; } /** * Get note image. * * @since 1.1.0 * @return string URL to note image. */ protected function get_image() { return ''; } /** * Add action to note if necessary. * * @since 1.1.0 * @param Note $note Note to which we want to add an action. */ protected function add_action( $note ): void {} /** * Get note slug; * * @since 1.1.0 * @return string Note Slug. */ private function get_slug(): string { return PINTEREST_FOR_WOOCOMMERCE_PREFIX; } /** * Get note title. * * @since 1.1.0 * @return string Note title. */ abstract protected function get_note_title(): string; /** * Get note content. * * @since 1.1.0 * @return string Note content. */ abstract protected function get_note_content(): string; /** * Check whether the note should be added. * * @since 1.1.0 * @return bool Should the note be added. */ abstract public static function should_be_added(): bool; }
| ver. 1.4 |
Github
|
.
| PHP 8.1.33 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка