如何在wordpress中获取短代码的属性?

时间:2015-05-14 10:30:04

标签: php wordpress-plugin wordpress-theming wordpress

我构建了一个这样的短代码:

[myshortcode id="4"]content[/myshortcode]

用这个:

<?php
function f_shortcode($atts, $content = null) {
    $returned_string = '<div class="wrap">';
    $returned_string .= '<div class="frame">'.$content.'</div>';
    $returned_string .= '</div>';
    return $returned_string;
}
add_shortcode('myshortcode', 'f_shortcode');
?>

我的短代码需要的是从数据库中的选项表中检索记录(即根据短代码中给出的id检索内容)

在选项表中我有:

a:1:{i:0;O:8:"stdClass":4:{s:2:"id";s:1:"4";s:9:"title";s:5:"test";s:11:"content";s:5:"test content";s:13:"shortcode";s:29:"[myshortcode id="4"][/myshortcode id="4"]";}}

因此,为了检索内容,我已将这种代码安静添加到我的函数中:

extract(shortcode_atts(array(
    'id' => 'id'
), $atts));

if(get_option('results_options') && get_option('results_options') != ''){
    $results = get_option('results_options');
    foreach ($results as $result){
        if($result->id == '{$id}'){
            $content = $result->content;
            continue;
        }
    }
}

在我的表中,内容在那里,但它没有显示或甚至无法检索,我的代码是否有问题?

如何在函数中获取id="4"参数来从中检索数据库中的记录?

0 个答案:

没有答案