Twit

Как удалить двойные пробелы регулярным выражением
Как удалить двойные пробелы регулярным выражением

Для удаления, используем следующий код

$result = preg_replace('/\s+/', ' ',$text);

Первым параметром ф-и идет "s". А он - соответствует "пробельному" символу: пробелу (" "), знаку табуляции (t), переносу строки (n) или возврату каретки (r)
Далее, идет "+", что один или более совпадений

Как отключить фильтр по датам в постах или своих типах записей
Как отключить фильтр по датам в постах или своих типах записей

Встречаются ситуации, когда в кастомных типах записей (создаваемых посредством функции register_post_type()), или уже существующих записей типа — post или page. Нам нужно отключить (убрать) отображение фильтра данных по датам. Это такой выпадающий список датами (месяц и год) когда были созданы записи на нашем сайте.
Поиск по официальной документации мало к чему привел, поэтому пришлось изучать код и находить нужные мне фильтры. Был найден фильтр «disable_months_dropdown», принимающий два параметра — состояние отображение выпадающего списка и тип записи страницы.
Пример использования фильтра:

add_filter('disable_months_dropdown', function($bool, $post_type) {
	if($post_type == 'type_order')
	{
		return true;
	}
	return $bool;
}, 1, 2);

где:
$bool — отображать или не отображать выпадающий список с датами (по умолчанию false, т. е. работа нашего фильтра отключена и даты будут отображаться)
$post_type — текущий тип записи.
Хочу обратить ваше внимание, что к текущему типу записи можно обратиться так-же через ф-ю «get_current_screen()» и ее свойство «post_type». Т.е.

get_current_screen() -> post_type

И что-то мне подсказывает, что аналогично должен отключаться фильтр по категориям (нужно будет проверить).

Как в WordPress добавить произвольный JavaScript код
Как в WordPress добавить произвольный JavaScript код

Разрабатывая один из проектов на WP, потребовалось добавить немного JS кода. Обычно, для подобных целей я использую отдельные скриптовые файлы. Но в данном случае, кода будет не так уж и много, что я решил разместить его в html «теле» документа.
Для этого, используйте следующий PHP код:

add_action('wp_enqueue_scripts', function(){
	if(!wp_script_is( 'jquery', 'done' ))
	{
		wp_enqueue_script( 'jquery' );
	}
	wp_add_inline_script( 'jquery-migrate', 'alert("Hello")' );
});

Что мы здесь делаем:

читать полностью...

Как удалить элемент массива по значению
Как удалить элемент массива по значению

Казалось бы довольно тривиальная задача, и нужная ф-я должна быть встроена в ядро PHP, но нее к сожалению нет. И приходится находить свои решения для реализации данного функционала. Одно из решений удаления элемента массива по его значению приведено ниже:

if(($delete_key = array_search($search_value, $my_array)) !== false)
{
	unset($my_array[$delete_key]);
}

Можно сказать две строки — и функционал готов.

читать полностью...

Как посчитать количество секунд до конца дня на PHP
Как посчитать количество секунд до конца дня на PHP

Т.к. подобной функции на PHP не существует, пришлось написать свою реализацию:

function get_seconds_to_midnight()
{
	$left_day_hh = 23 - intval(date('H'));
	$left_day_mm = 59 - intval(date('i'));
	$left_day_ss = 60 - intval(date('s'));
	
	return 3600 * $left_day_hh + 60 * $left_day_mm + $left_day_ss;
}

читать полностью...