WordPress 技巧:使用 Shortcode 快速插入表格

2023-04-15 11:20:40 浏览数 (1)

在 WordPress 后台代码模式下输入表格,总有一种想死的感觉,要输入 <table> <tbody> <tr> <td> 等一堆代码,看着头都晕,实在是受不了了,所以就写了下面这个插件,使用 Shortcode 快速插入表格。

这个插件很简单,它主要依靠通过以下规则来生成一个表格:

  • 连续两个回车一行(tr)。
  • 一个回车一个单元格(td)。

如以下的代码:

代码语言:javascript复制
[table width="95%"]
位置
大小
价格
出现的页面

顶部广告位
728X80 静态图片
1000 RMB 一个月
整站所有页面

侧边栏广告位
300X150 静态图片
500 RMB 一个月
整站所有页面,最多三个
[/table]

就会生成如下的表格:

位置

大小

价格

出现的页面

顶部广告位

728X80 静态图片

1000 RMB 一个月

整站所有页面

侧边栏广告位

300X150 静态图片

500 RMB 一个月

整站所有页面,最多三个

将下面的代码复制到当前主题的 functions 文件中,或者直接保存一个插件,并上传激活即可。

代码语言:javascript复制
<?php
/*
Plugin Name: WPJAM Table Shortcode
Plugin URI: http://blog.wpjam.com/m/wordpress-shortcode-for-table/
Description: 使用 Shortcode 快速输入表格。
Version: 0.1
Author: Denis
*/
add_shortcode( 'table', 'wpjam_table_shortcode_handler' );
function wpjam_table_shortcode_handler( $atts, $content='' ) {
    extract( shortcode_atts( array(
        'border'        => '1',
        'cellpading'    => '0',
        'cellspacing'   => '0',
        'width'         => ''
    ), $atts ) );

    $output = '';

    $trs = explode("rnrn", $content);

    foreach($trs as $tr){
        $tr = trim($tr);

        if($tr){
            $tds = explode("rn", $tr);
            $output .= '

<tr>';
            foreach($tds as $td){
                $td = trim($td);
                if($td){
                    $output .= '

<td>'.$td.'</td>
';
                }
            }
            $output .= '</tr>
';
        }
    }

    if($class){
        $class = ' class="'.$class.'"';
    }

    if($width){
        $width = ' width="'.$width.'"';
    }

    $output = '

<table border="'.$border.'" cellpading="'.$cellpading.'" cellspacing="'.$cellspacing.'" '.$width.' '.$class.' >'.$output.'</table>
';

    return $output;
}

0 人点赞