Inga speciella åtgärder krävs för att WPML och TableOn ska fungera tillsammans, bara: Installera WPML Set i WPML ställa in webbplatsens språk Skapa ditt webbplatsinnehåll på olika språk Ställ in WPML-språkomkopplare på webbplatsens framsida där en TableOn-tabell är Det är allt site Dina webbplatsbesökare kan nu se dina webbplatsinlägg i ... Läs mer
Till exempel har du lagt till tabellens metaknapp '_regular_pris'. Som standard visas det som ett enkelt nummer eller en sträng. Men hur är det om du vill formatera det och visa det med ännu en annan information i närheten? Överbelasta dess produktion! Lägg till nästa kod i filfunktioner.php för det aktuella WordPress-temat:
|
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_pris här är ... Läs mer
Om du vill lägga till knapp som länkar till extern information om ett inlägg: i filfunktioner.php lägg till nästa kod:
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 är bara namnet på nyckeln för TableOn-profilen, du kan använda din egen. _product_url i koden är metaknappen med länken, naturligtvis kan du använda din egen ... Läs mer
Lägg till nästa kod i filfunktioner.php för det aktuella WordPress-temat:
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); |
Glöm inte att byta ut metaknappen i koden '_my_marks' till din egen. Så istället för att visa 1 eller 0 kommer relevanta ikoner att visas. Visst med CSS kan du istället visa dina egna ikoner. Läs också: https://posts-table.com/how-reload-meta-display-in-the-cell/ Visningar av inlägg: ... Läs mer
Du kan se resultat på toppmenyn på webbplatsen https://demo.posts-table.com/ -> klicka på 'Hottest Posts' Gör nästa: Skapa på TABLEON admin sida ny kortkod [tabell] Öppna inställningar för den nya kortkoden -> flik "Fördefinition" -> "Inläggs-id" -> Använd kommatecken för att ställa in inlägg-id: n som du vill visa i tabellen. Exempel: 23,99,777. Uppsättning… Läs mer
Användning av FULLTEXT-indexering ökar hastigheten på inlägg som söker efter titel. Gör nästa: öppna din webbplatsdatabas med hjälp av phpmyadmin-sidan, skriv in din webbsajtdatabas hitta tabell "wp_posts" klicka på fliken "Structure" hitta fält "post_title" hitta på höger sida och klicka på "More" -> "Fulltext" på popup-klick OK och vänta ... Läs mer
Exempel på en sådan kolumn kan du se på den här sidan: https://demo.posts-table.com/audio-referrals/ Gör nästa: Öppna filfunktioner.php för det aktuella WordPress-temat Lägg till nästa kod:
|
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); |
Registrera nödvändiga metafält i TABLEON-systemet med kod:
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); |
I tabellen där du vill visa kolumn "Alternativ" skapa en ny kolumn, namnge den och välj fältet "Ljudalternativ" ... Läs mer
ja! Om innehållet i cellen är konstant - det är möjligt att använda genererad CSS-klass som på skärmen: hashXXXXXX Också varje cell har CSS-klass, beroende på fältet för den aktuella tabellcellen. Även tabellcellen har datattribut: data-pid, data -nyckel, datafält
|
td[data-pid="13287"][data-key="price"]{ background: red; } td[data-pid="14281"][data-key="price"] { background: green; } |
Som du kan se ovan med hjälp av två data-attribut tillåter riktad ... Läs mer
Om man ska sortera efter metaknappar - visas bara inlägg som har något värde för den valda nyckeln. Detta beteende är särdrag hos WordPress-motorn. Här är en artikel om hur du löser det: https://wordpress.stackexchange.com/questions/102447/sort-on-meta-value-but-include-posts-that-dont-have-one Inlägg Visningar: 18
Du kan slå in några kortkoder i din anpassade. Gör nästa: öppna filfunktioner.php av den aktuella WordPress-temaklistra och redigera nästa kod:
|
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"]'); } }); |
klistra in kortkod [my_tableon_1] till sidan du vill också uppmärksamma $ args - du kan skapa anpassade kortkodsattribut På detta sätt kan du skapa olika anpassade kortkoder ... Läs mer