Documentation

Footnotes_Layout_Settings extends Footnotes_Layout_Engine

Displays and handles all Settings of the Plugin.

Tags
since
1.5.0

Table of Contents

$a_arr_sections  : array<string|int, mixed>
Stores all Sections for the child sub page.
$a_str_sub_page_hook  : null|string
Stores the Hook connection string for the child sub page.
amp_compat()  : mixed
Displays the AMP compatibility mode option.
custom_css()  : mixed
Displays the Custom CSS box.
custom_css_migration()  : mixed
Displays transitional legacy Custom CSS box.
custom_css_new()  : mixed
Displays the new Custom CSS box.
description()  : mixed
Output the Description of a section. May be overwritten in any section.
display_content()  : mixed
Displays the content of specific sub page.
donate()  : mixed
Displays all Donate button to support the developers.
excerpts()  : mixed
Displays the footnotes in excerpt setting.
get_priority()  : int
Returns a Priority index. Lower numbers have a higher Priority.
hard_links()  : mixed
Displays all options for the fragment identifier configuration.
Help()  : mixed
Displays a short introduction to the Plugin.
hyperlink_arrow()  : mixed
Displays all settings for the backlink symbol.
label_solution()  : mixed
Displays the setting for the input label issue solution.
lookup_hooks()  : mixed
Displays available Hooks to look for Footnote short codes.
love()  : mixed
Displays all settings for 'I love Footnotes'.
mouseover_box()  : mixed
Displays enabled status for the footnotes mouse-over box.
mouseover_box_appearance()  : mixed
Displays style settings for the footnotes mouse-over box.
mouseover_box_dimensions()  : mixed
Displays dimensions setting for the footnotes mouse-over box.
mouseover_box_position()  : mixed
Displays position settings for the footnotes mouse-over box.
mouseover_box_text()  : mixed
Displays dedicated tooltip text settings for the footnotes mouse-over box.
mouseover_box_timing()  : mixed
Displays timing settings for the footnotes mouse-over box.
mouseover_box_truncation()  : mixed
Displays truncation settings for the footnotes mouse-over box.
numbering()  : mixed
Displays all options for the footnotes numbering.
reference_container()  : mixed
Displays all settings for the reference container.
register_sections()  : mixed
Registers all sections for a sub page.
register_sub_page()  : mixed
Registers a sub page.
scrolling()  : mixed
Displays all options for the scrolling behavior.
start_end()  : mixed
Displays all options for the footnotes start and end tag short codes.
superscript()  : mixed
Displays all settings for the footnote referrers.
add_checkbox()  : string
Returns the html tag for an input [type = checkbox].
add_color_selection()  : string
Returns the html tag for an input [type = text] with color selection class.
add_label()  : string
Returns the html tag for an input/select label.
add_line_space()  : string
Returns a line break to have a space between two lines.
add_meta_box()  : array<string|int, mixed>
Returns an array describing a meta box.
add_newline()  : string
Returns a line break to start a new line.
add_num_box()  : string
Returns the html tag for an input [type = num].
add_section()  : array<string|int, mixed>
Returns an array describing a sub page section.
add_select_box()  : string
Returns the html tag for a select box.
add_text()  : string
Returns a simple text inside html <span> text.
add_text_box()  : string
Returns the html tag for an input [type = text].
add_textarea()  : string
Returns the html tag for a text area.
get_meta_boxes()  : array<string|int, mixed>
Returns an array of all registered meta boxes for each section of the sub page.
get_sections()  : array<string|int, mixed>
Returns an array of all registered sections for the sub page.
get_sub_page_slug()  : string
Returns the unique slug of the sub page.
get_sub_page_title()  : string
Returns the title of the sub page.
load_setting()  : array<string|int, mixed>
Loads specific setting and returns an array with the keys [id, name, value].
append_scripts()  : mixed
Append javascript and css files for specific sub page.
register_meta_boxes()  : mixed
Registers all Meta boxes for a sub page.
save_settings()  : bool
Save all Plugin settings.

Properties

$a_arr_sections

Stores all Sections for the child sub page.

protected array<string|int, mixed> $a_arr_sections = array()
Tags
since
1.5.0

$a_str_sub_page_hook

Stores the Hook connection string for the child sub page.

protected null|string $a_str_sub_page_hook = ull
Tags
since
1.5.0

Methods

amp_compat()

Displays the AMP compatibility mode option.

public amp_compat() : mixed
Tags
since
2.5.11

(draft)

since
2.6.0

(release)

Return values
mixed

custom_css()

Displays the Custom CSS box.

public custom_css() : mixed
Tags
since
1.5.0

Edited:

since
2.1.6

drop localized notices for CSS classes as the number increased to 16 list directly in the template, as CSS is in English anyway

since
2.2.2

migrate Custom CSS to a dedicated tab

since
2.3.0

say 'copy-paste' instead of 'cut and paste' since cutting is not needed

since
2.5.1

mention validity while visible, thanks to @rkupadhya bug report

see

templates/dashboard/customize-css.html

Return values
mixed

custom_css_migration()

Displays transitional legacy Custom CSS box.

public custom_css_migration() : mixed
Tags
since
2.2.2
Return values
mixed

custom_css_new()

Displays the new Custom CSS box.

public custom_css_new() : mixed
Tags
since
2.2.2
Return values
mixed

description()

Output the Description of a section. May be overwritten in any section.

public description() : mixed
Tags
since
1.5.0
Return values
mixed

display_content()

Displays the content of specific sub page.

public display_content() : mixed
Tags
since
1.5.0
Return values
mixed

donate()

Displays all Donate button to support the developers.

public donate() : mixed
Tags
since
1.5.0
Return values
mixed

get_priority()

Returns a Priority index. Lower numbers have a higher Priority.

public get_priority() : int
Tags
since
1.5.0
Return values
int

Displays all options for the fragment identifier configuration.

public hard_links() : mixed
Tags
since
2.2.0

in scrolling().

since
2.5.12

separate metabox.

Return values
mixed

Displays all settings for the backlink symbol.

public hyperlink_arrow() : mixed
Tags
since
1.5.0
  • Update: symbol for backlinks removed; hyperlink moved to the reference number.
since
2.0.0

The former 'hyperlink arrow' is incompatible with combined identical footnotes.

  • Update: Reference container: clarify backlink semantics by prepended transitional up arrow, thanks to @mmallett issue report.
since
2.0.3
  • Update: Restore arrow settings to customize or disable the now prepended arrow symbol, thanks to @mmallett issue report.
since
2.0.4
since
2.1.4

moved to Settings > Reference container > Display a backlink symbol

since
2.2.1

and 2.2.4 back here

reporter

@mmallett

link
https://wordpress.org/support/topic/mouse-over-broken/#post-13593037
Return values
mixed

label_solution()

Displays the setting for the input label issue solution.

public label_solution() : mixed
Tags
since
2.5.12
Return values
mixed

lookup_hooks()

Displays available Hooks to look for Footnote short codes.

public lookup_hooks() : mixed
Tags
since
1.5.5

Edited:

since
2.1.1

priority level setting for the_content

since
2.1.4

priority level settings for the other hooks

priority level was initially hard-coded default shows "9223372036854775807" in the numbox empty should be interpreted as PHP_INT_MAX, but a numbox cannot be set to empty: https://github.com/Modernizr/Modernizr/issues/171 define -1 as PHP_INT_MAX instead

since
2.2.9

removed the warning about the widget text hook

since
2.2.9

added guidance for the widget text hook

Return values
mixed

love()

Displays all settings for 'I love Footnotes'.

public love() : mixed
Tags
since
1.5.0

Edited:

since
2.2.0

position-sensitive placeholders to support more locales

since
2.2.0

more options

Return values
mixed

mouseover_box()

Displays enabled status for the footnotes mouse-over box.

public mouseover_box() : mixed
Tags
since
1.5.2

Edited:

since
2.2.0

5 parts to address increased settings number

since
2.2.5

position settings for alternative tooltips

Return values
mixed

mouseover_box_appearance()

Displays style settings for the footnotes mouse-over box.

public mouseover_box_appearance() : mixed
Tags
since
2.2.0
Return values
mixed

mouseover_box_dimensions()

Displays dimensions setting for the footnotes mouse-over box.

public mouseover_box_dimensions() : mixed
Tags
since
2.2.0
Return values
mixed

mouseover_box_position()

Displays position settings for the footnotes mouse-over box.

public mouseover_box_position() : mixed
Tags
since
2.2.0
Return values
mixed

mouseover_box_text()

Displays dedicated tooltip text settings for the footnotes mouse-over box.

public mouseover_box_text() : mixed
Tags
since
2.2.0
Return values
mixed

mouseover_box_timing()

Displays timing settings for the footnotes mouse-over box.

public mouseover_box_timing() : mixed
Tags
since
2.2.0
Return values
mixed

mouseover_box_truncation()

Displays truncation settings for the footnotes mouse-over box.

public mouseover_box_truncation() : mixed
Tags
since
2.2.0
Return values
mixed

numbering()

Displays all options for the footnotes numbering.

public numbering() : mixed
Tags
since
2.2.0
Return values
mixed

register_sections()

Registers all sections for a sub page.

public register_sections() : mixed
Tags
since
1.5.0
Return values
mixed

register_sub_page()

Registers a sub page.

public register_sub_page() : mixed
Tags
since
1.5.0
Return values
mixed

scrolling()

Displays all options for the scrolling behavior.

public scrolling() : mixed
Tags
since
2.2.0
Return values
mixed

start_end()

Displays all options for the footnotes start and end tag short codes.

public start_end() : mixed
Tags
since
1.5.0

Edited heading

since
2.2.0

start/end short codes: more predefined options

since
2.2.0

3 boxes for clarity

since
2.2.5

support for Ibid. notation thanks to @meglio

since
2.4.0

added warning about Block Editor escapement disruption

since
2.4.0

removed the HTML comment tag option

since
2.5.0

Shortcode syntax validation: add more information around the setting, thanks to @andreasra

link
https://wordpress.org/support/topic/doesnt-work-with-mailpoet/
link
https://wordpress.org/support/topic/add-support-for-ibid-notation/
link
https://wordpress.org/support/topic/warning-unbalanced-footnote-start-tag-short-code-before/
Return values
mixed

superscript()

Displays all settings for the footnote referrers.

public superscript() : mixed
Tags
since
1.5.0

Edited heading

since
2.1.1

option for superscript (optionally baseline referrers)

since
2.2.0

option for link element moved here

Return values
mixed

add_checkbox()

Returns the html tag for an input [type = checkbox].

protected add_checkbox(string $p_str_setting_name) : string
Parameters
$p_str_setting_name : string

Name of the Settings key to pre load the input field.

Tags
since
1.5.0
Return values
string

add_color_selection()

Returns the html tag for an input [type = text] with color selection class.

protected add_color_selection(string $p_str_setting_name) : string
Parameters
$p_str_setting_name : string

Name of the Settings key to pre load the input field.

Tags
since
1.5.6
Return values
string

add_label()

Returns the html tag for an input/select label.

protected add_label(string $p_str_setting_name, string $p_str_caption) : string
Parameters
$p_str_setting_name : string

Name of the Settings key to connect the Label with the input/select field.

$p_str_caption : string

Label caption.

Tags
since
1.5.0
Return values
string

add_line_space()

Returns a line break to have a space between two lines.

protected add_line_space() : string
Tags
since
1.5.0
Return values
string

add_meta_box()

Returns an array describing a meta box.

protected add_meta_box(string $p_str_section_id, string $p_str_id, string $p_str_title, string $p_str_callback_function_name) : array<string|int, mixed>
Parameters
$p_str_section_id : string

Parent Section ID.

$p_str_id : string

Unique ID suffix.

$p_str_title : string

Title for the meta box.

$p_str_callback_function_name : string

Class method name for callback.

Tags
since
1.5.0
Return values
array<string|int, mixed>

meta box description to be able to append a meta box to the output.

add_newline()

Returns a line break to start a new line.

protected add_newline() : string
Tags
since
1.5.0
Return values
string

add_num_box()

Returns the html tag for an input [type = num].

protected add_num_box(string $p_str_setting_name, int $p_in_min, int $p_int_max[, bool $p_bool_deci = false ]) : string
Parameters
$p_str_setting_name : string

Name of the Settings key to pre load the input field.

$p_in_min : int

Minimum value.

$p_int_max : int

Maximum value.

$p_bool_deci : bool = false

true if 0.1 steps and floating to string, false if integer (default).

Tags
since
1.5.0
since
2.1.4

step argument and number_format() to allow decimals ..

Return values
string

Edited:

add_section()

Returns an array describing a sub page section.

protected add_section(string $p_str_id, string $p_str_title, int $p_int_settings_container_index[, bool $p_bool_has_submit_button = true ]) : array<string|int, mixed>
Parameters
$p_str_id : string

Unique ID suffix.

$p_str_title : string

Title of the section.

$p_int_settings_container_index : int

Settings Container Index.

$p_bool_has_submit_button : bool = true

Should a Submit Button be displayed for this section, default: true.

Tags
since
1.5.0
Return values
array<string|int, mixed>

Array describing the section.

add_select_box()

Returns the html tag for a select box.

protected add_select_box(string $p_str_setting_name, array<string|int, mixed> $p_arr_options) : string
Parameters
$p_str_setting_name : string

Name of the Settings key to pre select the current value.

$p_arr_options : array<string|int, mixed>

Possible options to be selected.

Tags
since
1.5.0
  • Bugfix: Dashboard: Referrers and tooltips: Backlink symbol: debug select box by reverting identity check to equality check, thanks to @lolzim bug report.
since
2.5.13
since
2.5.15

Bugfix: Dashboard: General settings: Footnote start and end short codes: debug select box for shortcodes with pointy brackets.

since
2.6.1

Restore esc_attr() in load_setting(), remove htmlspecialchars() here.

reporter

@lolzim

Return values
string

add_text()

Returns a simple text inside html <span> text.

protected add_text(string $p_str_text) : string
Parameters
$p_str_text : string

Message to be surrounded with simple html tag (span).

Tags
since
1.5.0
Return values
string

add_text_box()

Returns the html tag for an input [type = text].

protected add_text_box(string $p_str_setting_name[, int $p_str_max_length = 999 ][, bool $p_bool_readonly = false ][, bool $p_bool_hidden = false ]) : string
Parameters
$p_str_setting_name : string

Name of the Settings key to pre load the input field.

$p_str_max_length : int = 999

Maximum length of the input, default 999 characters.

$p_bool_readonly : bool = false

Set the input to be read only, default false.

$p_bool_hidden : bool = false

Set the input to be hidden, default false.

Tags
since
1.5.0
Return values
string

add_textarea()

Returns the html tag for a text area.

protected add_textarea(string $p_str_setting_name) : string
Parameters
$p_str_setting_name : string

Name of the Settings key to pre fill the text area.

Tags
since
1.5.0
Return values
string

get_meta_boxes()

Returns an array of all registered meta boxes for each section of the sub page.

protected get_meta_boxes() : array<string|int, mixed>
Tags
since
1.5.0
since
2.0.0

discontinued

since
2.0.4

restored to meet user demand for arrow symbol semantics

since
2.1.4

discontinued, content moved to Settings > Reference container > Display a backlink symbol

since
2.0.4

to reflect changes in meta box label display since WPv5.5 spans need position:fixed and become unlocalizable fix: logo is kept only in the label that doesn't need to be translated: Change string "%s styling" to "Footnotes styling" to fix layout in WPv5.5

since
2.1.6

/ 2.2.0 tabs reordered and renamed

see
details

in class/config.php

Return values
array<string|int, mixed>

Edited for 2.0.0 and later.

hyperlink_arrow meta box:

get_sub_page_slug()

Returns the unique slug of the sub page.

protected get_sub_page_slug() : string
Tags
since
1.5.0
Return values
string

get_sub_page_title()

Returns the title of the sub page.

protected get_sub_page_title() : string
Tags
since
1.5.0
Return values
string

load_setting()

Loads specific setting and returns an array with the keys [id, name, value].

protected load_setting(string $p_str_setting_key_name) : array<string|int, mixed>
Parameters
$p_str_setting_key_name : string

Settings Array key name.

Tags
since
1.5.0
since
2.5.11

Remove escapement function. When refactoring the codebase after 2.5.8, all and every output was escaped. After noticing that the plugin was broken, all escapement functions were removed.

since
2.5.15

To fix it, the data was escaped in add_select_box() instead.

since
2.6.1

Restore esc_attr() in load_setting().

link
https://github.com/markcheret/footnotes/pull/50/commits/25c3f2f12eb5de1079e9215bf624ec4289b095a5
link

In that process, this instance of esc_attr() was removed too, so the plugin was broken again.

link
https://github.com/markcheret/footnotes/pull/50/commits/25c3f2f12eb5de1079e9215bf624ec4289b095a5#diff-a8ed6e859c32a18fc10bbbad3b4dd8ce7f43f2378d29471c7638e314ab30f1bdL349-L354
see
add_select_box()

This is the only instance of esc_|kses|sanitize in the pre-2.5.11 codebase. Removing this did not fix the quotation mark backslash escapement bug.

Return values
array<string|int, mixed>

Contains Settings ID, Settings Name and Settings Value.

append_scripts()

Append javascript and css files for specific sub page.

private append_scripts() : mixed
Tags
since
1.5.0
Return values
mixed

register_meta_boxes()

Registers all Meta boxes for a sub page.

private register_meta_boxes(string $p_str_parent_id) : mixed
Parameters
$p_str_parent_id : string

Parent section unique id.

Tags
since
1.5.0
Return values
mixed

save_settings()

Save all Plugin settings.

private save_settings() : bool
Tags
since
1.5.0
Return values
bool

Search results