This repository has been archived on 2023-08-16. You can view files and clone it, but cannot push or open issues or pull requests.
footnotes/class/widgets/base.php
pewgeuges dfcbdc6adc Undo last two commits affecting trunk/ but not the Stable Tag.
= Stable Tag value =
2.5.10 (unchanged)
= Commits undone =
- 2484038 (2021-03-02 05:29:18 +0000 (Tue, 02 Mar 2021)) committer: pewgeuges
-2484015 (2021-03-02 04:22:20 +0000 (Tue, 02 Mar 2021)) committer: pewgeuges
= Rationale =
By renaming a folder (and 3 out of 4 included files), the WordPress Coding Standards compliance upgrade (see changeset 2484015) has broken the traceability of the changes made to the following files:
- footnotes/trunk/class/dashboard/init.php
- footnotes/trunk/class/dashboard/layout.php
- footnotes/trunk/class/dashboard/subpage-diagnostics.php
- footnotes/trunk/class/dashboard/subpage-main.php

git-svn-id: https://plugins.svn.wordpress.org/footnotes/trunk@2485882 b8457f37-d9ea-0310-8a92-e5e31aec5664
2021-03-03 15:15:55 +00:00

88 lines
2.5 KiB
PHP

<?php
/**
* Widget base.
*
* @filesource
* @author Stefan Herndler
* @since 1.5.0
* @date 14.09.14 14:30
*
* @lastmodified 2021-02-18T0306+0100
* @date 2021-02-18T0240+0100
* @since 1.6.4 Update: replace deprecated function WP_Widget() with recommended __construct(), thanks to @dartiss code contribution.
*/
/**
* Base Class for all Plugin Widgets. Registers each Widget to WordPress.
* The following Methods MUST be overwritten in each sub class:
* **public function widget($args, $instance)** -> echo the Widget Content
* **public function form($instance)** -> echo the Settings of the Widget
*
* @author Stefan Herndler
* @since 1.5.0
*/
abstract class MCI_Footnotes_WidgetBase extends WP_Widget {
/**
* Returns an unique ID as string used for the Widget Base ID.
*
* @author Stefan Herndler
* @since 1.5.0
* @return string
*/
abstract protected function getID();
/**
* Returns the Public name of child Widget to be displayed in the Configuration page.
*
* @author Stefan Herndler
* @since 1.5.0
* @return string
*/
abstract protected function getName();
/**
* Returns the Description of the child widget.
*
* @author Stefan Herndler
* @since 1.5.0
* @return string
*/
abstract protected function getDescription();
/**
* Returns the width of the Widget. Default width is 250 pixel.
*
* @author Stefan Herndler
* @since 1.5.0
* @return int
*/
protected function getWidgetWidth() {
return 250;
}
/**
* Class Constructor. Registers the child Widget to WordPress.
*
* @author Stefan Herndler
* @since 1.5.0
*
* - Update: replace deprecated function WP_Widget() with recommended __construct(), thanks to @dartiss code contribution.
*
* @since 1.6.4
* @contributor @dartiss
* @link https://plugins.trac.wordpress.org/browser/footnotes/trunk/class/widgets/base.php?rev=1445720
* “The called constructor method for WP_Widget in MCI_Footnotes_Widget_ReferenceContainer is deprecated since version 4.3.0! Use __construct() instead.”
*/
public function __construct() {
$l_arr_WidgetOptions = array("classname" => __CLASS__, "description" => $this->getDescription());
$l_arr_ControlOptions = array("id_base" => strtolower($this->getID()), "width" => $this->getWidgetWidth());
// registers the Widget
parent::__construct(
strtolower($this->getID()), // unique ID for the widget, has to be lowercase
$this->getName(), // Plugin name to be displayed
$l_arr_WidgetOptions, // Optional Widget Options
$l_arr_ControlOptions // Optional Widget Control Options
);
}
}