WPML ve TableOn'un birlikte çalışmasını sağlamak için özel bir eylem gerekmez, sadece: WPML'yi kurun WPML'de ayarlayın Site dillerini ayarlayın Site içeriğinizi farklı dillerde oluşturun Bir TableOn tablosunun olduğu site önündeki WPML dil değiştiricisini ayarlayın Hepsi bu kadar 🙂 Site ziyaretçileriniz artık site gönderilerinizi görebilir… daha fazla oku
Örneğin, tablo meta anahtarına '_regular_price' eklediniz. Varsayılan olarak basit sayı veya dize olarak görüntülenecektir. Peki ya biçimlendirmek ve yanında başka bir bilgiyle birlikte görüntülemek istiyorsanız ne olacak? Çıktısını aşırı yükleyin! Mevcut WordPress temasının file functions.php dosyasına sonraki kodu ekleyin:
|
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 burada… daha fazla oku
Bir gönderi hakkında herhangi bir harici bilgiye bağlantı veren buton eklemek istiyorsanız: function.php dosyasında sonraki kodu ekleyin:
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 profili için sadece anahtarın adıdır, kendinizinkini kullanabilirsiniz. Koddaki _product_url, bağlantının meta anahtarıdır, elbette kendi anahtarınızı kullanabilirsiniz… daha fazla oku
Mevcut WordPress temasının file functions.php dosyasına sonraki kodu ekleyin:
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' kodundaki meta anahtarı kendi anahtarınızla değiştirmeyi unutmayın. Dolayısıyla 1 veya 0 ilgili simge görüntülemek yerine görüntülenecektir. Tabii ki CSS ile bunun yerine kendi simgelerinizi görüntüleyebilirsiniz. Ayrıca şunu okuyun: https://posts-table.com/how-reload-meta-display-in-the-cell/ Gönderi Görüntülemeleri:… daha fazla oku
Sonuçları https://demo.posts-table.com/ sitenin üst menüsünde görebilirsiniz -> 'En Sıcak Gönderiler'i tıklayın Sıradaki yap: TABLEON yönetici sayfasında oluştur yeni kısa kod [tablo] Yeni kısa kodun ayarlarını açın -> 'Ön tanım' sekmesi -> 'Yazı kimlikleri' -> Virgül kullanarak, tabloda göstermek istediğiniz gönderi kimliklerini ayarlayın. Örnek: 23,99,777. Ayarlamak… daha fazla oku
FULLTEXT indekslemenin kullanılması, başlığa göre arama yapan gönderilerin hızını artıracaktır. Sonra yapın: phpmyadmin sayfasını kullanarak site veritabanınızı açın, site veritabanınıza girin “wp_posts” tablosunu bulun “Yapı” sekmesine tıklayın “post_title” alanını bulun sağ tarafta bulun ve açılır tıklama üzerinde “Daha Fazla” -> “Tam Metin” e tıklayın Tamam ve bekleyin… daha fazla oku
Bu sayfada görebileceğiniz böyle bir sütun örneği: https://demo.posts-table.com/audio-referrals/ Sonra yapın: Mevcut WordPress temasının dosya functions.php dosyasını açın Sonraki kodu ekleyin:
|
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 sisteminde gerekli meta alanları koda göre kaydedin:
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); |
"Seçenekler" sütununu görüntülemek istediğiniz yere ilişkin tabloda yeni sütun oluşturun, adlandırın ve "Ses seçenekleri" alanını seçin… daha fazla oku
Evet! Hücrenin içeriği sabitse - ekranda olduğu gibi üretilen CSS sınıfını kullanmak mümkündür: hashXXXXXX Ayrıca her hücre, geçerli tablo hücresinin alanına bağlı olarak CSS sınıfına sahiptir Ayrıca tablo hücresinin veri nitelikleri vardır: data-pid, data -key, veri-alanı
|
td[data-pid="13287"][data-key="price"]{ background: red; } td[data-pid="14281"][data-key="price"] { background: green; } |
Yukarıda görebileceğiniz gibi, 2 veri özniteliğinin kullanılması hedeflemeye izin verir… daha fazla oku
Meta anahtarlara göre sıralama kullanılacaksa - yalnızca seçilen anahtar için herhangi bir değeri olan gönderiler görünür olacaktır. Bu davranış, WordPress motorunun özelliğidir. İşte bunun nasıl çözüleceğiyle ilgili bir makale: https://wordpress.stackexchange.com/questions/102447/sort-on-meta-value-but-include-posts-that-dont-have-one Gönderi Görüntüleme Sayısı: 18
Bazı kısa kodları kendi özel kodunuza sarabilirsiniz. Sonra yapın: mevcut WordPress tema yapıştırmasının dosya functions.php dosyasını açın ve orada sonraki kodu düzenleyin:
|
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] kısa kodunu istediğiniz sayfaya yapıştırın ayrıca dikkatinizi $ args'a da verin - özel kısa kod öznitelikleri oluşturabilirsiniz Bu şekilde farklı özel kısa kodlar oluşturabilirsiniz… daha fazla oku