我在子主题functions.php
文件中创建了短代码。
shortcode
如下:
function add_login_form() {
if ( is_user_logged_in() )
{
echo 'Witaj zalogowany';
}
else
{
wp_login_form();
}
}
add_shortcode('login_form', 'add_login_form');
我在网站(测试区域)添加了短代码[login_form]
:
http://s540141209.domenaklienta.pl/wordpress/konto-klienta/
文字后添加到网站: “TUTAJ POWINIENBYĆ登录形式LUB NAPIS”WITAJ ZALOGOWANY“!”
应该在第一个div内:<div class="et_pb_row">
但它显示在页面标题之后。你知道为什么会这样吗?
Thansk提前。 但它碰巧显示在网站上的所有内容之前。
答案 0 :(得分:6)
请参阅http://codex.wordpress.org/Shortcode_API有关短代码的行为方式。在短代码功能中,您应始终返回在短代码操作中完成的处理结果。回声它会在挂钩执行后立即输出,而不是插入它应该的位置。
function add_login_form() {
if ( is_user_logged_in() )
{
return 'Witaj zalogowany';
}
else
{
return wp_login_form(array('echo'=>false));
}
}
add_shortcode('login_form', 'add_login_form');
对于wp_login_form的所有参数,请参阅http://codex.wordpress.org/Function_Reference/wp_login_form。