wp_readonly() WP 5.9.0

Виводить readonly='readonly', якщо збігаються перші два параметри функції.

Функція потрібна для зручності, коли в полі форми потрібно вивести атрибут readonly залежно від значення змінної php.

При порівнянні значень вони попередньо наводяться до одного типу (рядок), а потім порівнюються:

(string) $one === (string) $two

Таким чином не точний збіг все одно спрацьовуватиме, наприклад:

  • число 1дорівнюватиме рядку '1'.
  • trueбуде одно 1або '1'.
  • falseбуде одно 0або '0'.
  • і т.д.

Це одна з функцій помічників для форм: selected() , wp_readonly().

Працює на основі:
__checked_selected_helper()

Хуків немає.

Повертає

Строку. Рядок readonly='readonly'або порожній рядок.

Також при $echo = true (за замовчуванням) виводить результат на екран.

Використання

<?php wp_readonly( $readonly, $current, $echo ); ?>
$readonly
(різне) (обов’язковий)
Значення, яке потрібно порівняти. Наприклад, true.
$current
(різне)
Друге значення порівнюватиметься з першим.


Типово: true
$echo
(true|false)
Чи потрібно виводити дані на екран чи просто повертати рядок.


Типово: true

Приклади

0

#1 Демонстрація використання

Допустимо, у нас є код, в якому визначається змінна $is_readonly і якщо в ній знаходиться true, нам потрібно вивести атрибут readonly для поля форми:

<?php
// якась логіка ...
$is_readonly = true;
?>

<form...>
	...
	<input type="text" value="Some string" <?php wp_readonly( $is_readonly ) ?> />
	...
</form>
0

#2 Додамо атрибут readonly

Припустимо, що для поля необхідно додати значення readonly, якщо поточний користувач не може редагувати пост 25:

<input type='text' name='myname' value='Значення' <?php readonly( current_user_can( 'edit_post', 25 ) ) ?> />
0

#3 Ще приклади, як працює функція

$is_readonly = true;

wp_readonly($is_readonly); // виведе readonly='readonly'
$is_readonly = false;

wp_readonly($is_readonly); // Нічого не виведе
$readonly = wp_readonly( '1', true, false );

var_dump($readonly); // string(20) " readonly='readonly'"

список змін

З версії 5.9.0Введено.

Код wp_readonly() WP 6.0.2

function wp_readonly( $readonly, $current = true, $echo = true ) {
	return __checked_selected_helper( $readonly, $current, $echo, 'readonly' );
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *