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

Встречаются ситуации, когда в кастомных типах записей (создаваемых посредством функции 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 с помощью консольной утилиты wp-cli
Как автоматизировать рутинные задачи в WordPress с помощью консольной утилиты wp-cli

Важная «не новость» для разработчиков сайтов на WordPress. А Вы в курсе о такой консольной утилите как «wp-cli»? Сам давно работаю с WP, но о ней узнал буквально пол года назад.

wp-cli — это чудо вещь для разработчиков имеющих кучу WP сайтов на локальной машине (да и не только локальной). Wp-cli, позволяет работать с вордпрессом через консоль, тем самым минимизирую Ваши временные усилия на установку движка, его обновление, а также установку тем и плагинов под него с их обновлениями.
Скажу честно, глубоко не изучал ее возможностей, но опишу лишь ее базовые функции и возможности.

Установка

Все действия будут описаны для среды ОС Linux.
Скачиваем на свою машину phar архив с утилитой:

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Устанавливаем права на выполнение:

chmod +x wp-cli.phar

Копируем файл в каталог с нашими программами (ведь нам нужен доступ с любой точки файловой системы):

sudo mv wp-cli.phar /usr/local/bin/wp

читать далее...

Как автоматизировать рутинные задачи в WordPress с помощью консольной утилиты wp-cli
Как в 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")' );
});

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

читать далее...

Как в WordPress добавить произвольный JavaScript код
Как удалить элемент массива по значению
Как удалить элемент массива по значению

Казалось бы довольно тривиальная задача, и нужная ф-я должна быть встроена в ядро 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;
}

читать далее...

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