Ніяких особливих дій, необхідних для спільної роботи WPML і TableOn, просто: Встановіть WPML Set у WPML, встановивши мови веб-сайту Створіть вміст веб-сайту різними мовами Встановіть перемикач мови WPML на передній частині сайту, де таблиця TableOn Це все 🙂 Відвідувачі вашого сайту тепер можна бачити публікації вашого сайту у… читати далі
Наприклад, ви додали до таблиці мета-ключ '_regular_price'. За замовчуванням він відображатиметься як просте число або рядок. Але як щодо того, якщо ви хочете відформатувати його та відобразити навіть іншу інформацію поруч? Перевантажте його вихід! У файл functions.php поточної теми WordPress додайте наступний код:
|
add_action('tableon_profile_extend', function($profile, $action_name) { if ($action_name === 'tableon_default_tables') { if (isset($profile['_regular_price'])) { $profile['_regular_price']['action'] = function($post_id) { return format_price(get_post_meta($post_id, '_regular_price', true)); }; } } return $profile; }, 10, 2); |
format_price ось ... читати далі
Якщо ви хочете додати кнопку, яка посилається на будь-яку зовнішню інформацію про допис: у файл functions.php додайте наступний код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
add_action('tableon_profile_extend', function($profile, $action_name) { if ($action_name === 'tableon_default_tables') { $profile['ref_btn'] = [ 'title' => esc_html('Ref. button'), 'order' => FALSE, 'action' => function($post_id) { return TABLEON_HELPER::draw_html_item('a', [ 'href' => get_post_meta($post_id, '_product_url', true), 'target' => '_blank', 'class' => 'tableon-btn' ], 'BUTTON NAME HERE'); } ]; } return $profile; }, 10, 2); |
ref_btn - це просто назва ключа для профілю TableOn, ви можете використовувати свій власний. _product_url у коді - це мета-ключ із посиланням, звичайно, ви можете використовувати свій власний… читати далі
У файл functions.php поточної теми WordPress додайте наступний код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
add_action('tableon_profile_extend', function($profile, $action_name) { if ($action_name === 'tableon_default_tables') { $meta_key = '_my_marks'; if (isset($profile[$meta_key])) { $profile[$meta_key]['action'] = function($post_id) use($meta_key) { $mark = get_post_meta($post_id, $meta_key, true); if ($mark) { return "<span class='tableon-html-yes'><i class='tableon-icon'></i></span>"; } return "<span class='tableon-html-no'><i class='tableon-icon'></i></span>"; }; } } return $profile; },10,2); |
Не забудьте замінити мета-ключ у коді "_my_marks" на ваш власний. Отже, замість відображення 1 або 0 відображатимуться відповідні значки. Звичайно, за допомогою CSS ви можете замість цього відображати власні значки. Також читайте: https://posts-table.com/how-reload-meta-display-in-the-cell/ Перегляди дописів:… читати далі
Результати можна побачити у верхньому меню сайту https://demo.posts-table.com/ -> клацніть на «Найгарячіші публікації» Зробити далі: Створити на адміністративній сторінці TABLEON новий шорткод [tableon] Відкрити налаштування нового шорткоду -> вкладка 'Попереднє визначення' -> 'Ідентифікатори публікацій' -> За допомогою коми встановіть ідентифікатори публікацій, які ви хочете відображати в таблиці. Приклад: 23,99,777. Встановити ... читати далі
Використання FULLTEXT індексації збільшить швидкість пошуку дописів за назвою. Зробіть наступне: відкрийте базу даних вашого сайту за допомогою сторінки phpmyadmin, увійдіть до бази даних вашої сторінки, знайдіть таблицю «wp_posts», клацніть на вкладці «Структура», знайдіть поле «post_title», знайдіть праворуч і натисніть «Більше» -> «Повний текст» у контекстному меню Добре, почекай… читати далі
Приклад такого стовпця ви можете побачити на цій сторінці: https://demo.posts-table.com/audio-referrals/ Зробити наступне: Відкрити файл functions.php поточної теми WordPress Додати наступний код:
|
add_action('tableon_profile_extend', function($profile, $action_name) { if ($action_name === 'tableon_default_tables') { //for https://demo.posts-table.com/audio-referrals/ $profile['sound_options'] = [ 'title' => 'Sound options', 'order' => FALSE, 'action' => function($post_id) { return do_shortcode("[tableon_single_btn id={$post_id} button_text='Options' columns='sound_bitrate,sound_duration,sound_year,sound_artist,sound_info' css_class='tableon-btn' help_title='How to add column Options' help_link='https://posts-table.com/how-to-add-column-with-custom-meta-fields-in-popup/']"); } ]; } return $profile; }, 10, 2); |
Зареєструйте необхідні метаполя в системі TABLEON за кодом:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
//add custom meta fields not visible on TABLEON admin page to select it in sound options add_action('tableon_profile_extend', function($profile, $action_name) { $sound_keys = [ 'sound_bitrate' => 'Bitrate (kbps)', 'sound_duration' => 'Duration', 'sound_year' => 'Year', 'sound_artist' => 'Artist', 'sound_info' => 'Info', ]; foreach ($sound_keys as $key => $title) { $profile[$key] = [ 'title' => $title, 'order' => 'asc', 'display' => false, //do not display in fields list on TABLEON backend 'action' => function($post_id) use($key) { return get_post_meta($post_id, $key, true); } ]; } return $profile; }, 10, 2); |
У таблиці, де потрібно відобразити стовпець «Параметри», створіть новий стовпець, назвіть його та виберіть поле «Параметри звуку» ... читати далі
Так! Якщо вміст комірки постійний - можна використовувати згенерований клас CSS як на екрані: hashXXXXXX Також кожна комірка має клас CSS, залежно від поля поточної комірки таблиці Також комірка таблиці має атрибути даних: data-pid, data -ключ, поле даних
|
td[data-pid="13287"][data-key="price"]{ background: red; } td[data-pid="14281"][data-key="price"] { background: green; } |
Як ви можете бачити вище, використання 2 атрибутів даних дозволяє цілеспрямований… читати далі
Якщо використовувати сортування за метаклавішами - будуть видимими лише повідомлення, які мають якесь значення для обраного ключа. Така поведінка є особливістю механізму WordPress. Ось стаття про те, як її вирішити: https://wordpress.stackexchange.com/questions/102447/sort-on-meta-value-but-include-posts-that-dont-have-one Перегляди дописів: 17
Ви можете обернути деякі шорткоди у свій власний. Виконайте наступне: відкрийте файл functions.php поточної вставки теми WordPress і відредагуйте там наступний код:
|
add_shortcode('my_tableon_1', function($args) { $user = wp_get_current_user(); if (in_array('administrator', $user->roles)) { return do_shortcode('[tableon id=23]'); } elseif (in_array('shop_manager', $user->roles)) { return do_shortcode('[tableon id=29]'); } else { return do_shortcode('[tableon columns="id,post_title,__price"]'); } }); |
вставте шорткод [my_tableon_1] на потрібну вам сторінку, також зверніть вашу увагу на $ args - ви можете створювати власні атрибути шорткоду. Таким чином, ви можете створювати різні власні шорткоди ... читати далі