在插件中使用页面标题

时间:2017-11-12 作者:user129828

我有很多WordPress页面,我在这些页面中只使用了一个快捷码,例如,第1页的内容是[快捷码名称=“page1”],

第2页的内容为[短代码名称=“page2”],

第3页的内容是[短代码名称=“第3页”]

有没有可能我不需要在shortcode中指定name属性,而只需指定[shortcode],它会自动将页面的标题作为name属性

例如,在plugin中,我可以编写如下内容

function shortcode($atts)
 {
 extract(shortcode_atts(array(
\'name\' => "**title of the page**",
   ) , $atts));

  ......


  }

add_shortcode(\'short_code\', \'short_code\');

1 个回复
最合适的回答,由SO网友:Johansson 整理而成

您只需使用get_the_title() 函数在您的短代码中获取当前帖子的标题。如果希望它只在页面上工作,可以将其与is_page():

function shortcode($atts) {

    extract( 
        shortcode_atts(
            array(
                \'name\' => get_the_title(),
            ) , 
        $atts) 
    );

    // Rest of your code

}

add_shortcode(\'short_code\', \'short_code\');
您可以使用PHP速记条件,如下所示:

\'name\' => ( is_page() ) ? get_the_title() : \'Your else goes here\' ;

结束

相关推荐

Virtual Pages plugins

我很难让插件正常工作Virtual Pages (WordPress插件可简化虚拟页面的创建)我确实进行了编辑,根据查询创建了一个循环。add_action( \'gm_virtual_pages\', function( $controller ) { /* Creating virtuals pages for companies */ $args = array( \'post_type\' => array(\'companies\',), \'post_status\'