kab*_*hya 10 php wordpress shortcode
我刚刚发现两者echo并return正常工作从一个简码功能显示内容.
function foobar_shortcode($atts) {
echo "Foo Bar"; //this works fine
}
function foobar_shortcode($atts) {
return "Foo Bar"; //so does this
}
Run Code Online (Sandbox Code Playgroud)
我只是想知道,使用其中任何一个之间有什么区别吗?如果是这样的推荐是什么?在这种情况下我通常使用echo; 好吗?
Nat*_*son 21
Echo可能适用于您的具体情况,但您绝对不应该使用它.短代码并不意味着输出任何内容,它们只应返回内容.
以下是关于短代码的代码注释:
请注意,短代码调用的函数永远不会产生任何类型的输出.短代码函数应返回用于替换短代码的文本.直接生成输出将导致意外结果.
http://codex.wordpress.org/Function_Reference/add_shortcode#Notes
小智 17
如果要输出大量内容,则应使用:
add_shortcode('test', 'test_func');
function test_func( $args ) {
ob_start();
?> <your contents/html/(maybe in separate file to include) code etc> <?php
return ob_get_clean();
}
Run Code Online (Sandbox Code Playgroud)
如果在短代码中使用"echo",则信息将显示在处理短代码的任何位置,这不一定是您实际添加短代码的位置.如果您使用"return",则信息将准确返回您在页面中添加短代码的位置.
例如,如果你有一个图像,然后是短代码,那么文本:
Echo:将在图像上方输出
返回:将在图像之后和文本之前输出(实际添加短代码的地方)
| 归档时间: |
|
| 查看次数: |
20585 次 |
| 最近记录: |