Як створити таблицю у БД WordPress
Як створити таблицю у БД WordPress

Створення власної таблиці для CMS WordPress може знадобитися у таких випадках:

  1. Під час розробки власного плагіна
  2. Під час створення власної теми (продаж або оренда нерухомості, авто тощо)

У своїх проєктах для створення таблиць або імпорту даних у БД я використовую WP-функцію «dbDelta» у хукy «register_activation_hook()». Приклад коду:

register_activation_hook(__FILE__, function()
{
	global $wpdb;
	
	require_once(ABSPATH.'wp-admin/includes/upgrade.php');

	dbDelta("CREATE TABLE IF NOT EXISTS `{$wpdb -> prefix}my_table` (
		`id` INT(11) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
		`title` VARCHAR(255) NOT NULL,
		`date_create` INT(10) UNSIGNED NOT NULL
	) {$wpdb -> get_charset_collate()};");	
});

читати далі...

Як визначити регіон IP на PHP використовуючи БД
Як визначити регіон IP на PHP використовуючи БД

У цій статті розглянемо один із варіантів визначення локації користувача за його IP-адресою. А саме — з використанням існуючої бази регіонів та присвоєних їм IP-адрес мережі.

Існуючих баз даних доволі багато. Але мені довелося мати справу з базою від сайту ip2location.com. Нічого поганого про цю базу сказати не можу, оскільки моя область і регіони деяких моїх клієнтів були успішно знайдені.

Перше, що нам знадобиться — це завантажити файл з базою даних. Вони надають його у форматі CSV. Завантажити файл можна з цієї сторінки.

Імпорт даних з файлу регіонів та IP

Дотримуйтесь інструкції в описі — це зекономить вам час. Я спочатку вирішив спробувати імпортувати дані через phpMyAdmin (використовуючи імпорт CSV), і це зайняло набагато більше часу, ніж консольний імпорт.

читати далі...

Як вимкнути фільтр за датами у постах або своїх типах записів
Як вимкнути фільтр за датами у постах або своїх типах записів

Іноді трапляються ситуації, коли в кастомних типах записів (створених за допомогою функції 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 дозволяє працювати з WordPress через консоль, тим самим мінімізуючи ваші часові витрати на встановлення рушія, його оновлення, а також встановлення тем і плагінів до нього разом з їх оновленням.
Чесно скажу, глибоко не вивчав її можливостей, але опишу лише базові функції та можливості.

Встановлення

Усі дії будуть описані для ОС 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 додати довільний 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")' );
});

Що ми тут робимо:

читати далі...