根据名称更新Wordpress短代码

时间:2014-03-18 17:49:08

标签: php wordpress function shortcode

我有一个名为Fruit的自定义帖子类型,我想创建一个基于我称之为短代码更新的短代码。例如,自定义帖子类型称为水果,我有一个水果列表作为帖子。我希望短代码链接到那个水果帖。

add_shortcode('apple', 'apple');
function apple()
{
return '<a href="http://example.com/fruit/apple/>Apple</a>';
}

现在我可以写一个橙色,bannna和其他所有水果的短代码,但我想知道我怎么能这样才能写出一个简短的代码,取决于我是否放[apple],[orange],[mango ]它会更新网址?

1 个答案:

答案 0 :(得分:0)

我建议创建一个名为[fruit]的短代码,并有一个名为&#34; fruit&#34;因此,您只需要一个简短的代码即可获得所有成果。

function fruit( $atts ) {
     extract( shortcode_atts( array(
          'fruit' => 'apple'
     ), $atts ) );

     if($fruit == "apple") {
         $return = "<a href='http://example.com/fruit/apple/'>Apple</a>";
     } elseif($fruit == "orange") {
         $return = "<a href='http://example.com/fruit/orange/'>Orange</a>";
     }

     return $return;
}
add_shortcode( 'fruit', 'fruit' );

然后你可以拨打短代码[水果水果=&#39;苹果&#39;]或[水果水果=&#39;橙色&#39;]。

修改

function fruit() {
    $label = sanitize_text_field($_GET['slug']);
    $slug  = strtolower($_GET['slug']);


    return "<a href='http://example.com/fruit/" . $slug . "/'>" . $label . "</a>";
}
add_shortcode( 'fruit', 'fruit' );