我正在尝试创建一个简单的插件,以返回我的联系方式7代码,这在任何网页模板的工作很好。除了显示联系人表单的行之外,一切都很正常。我认为插件在联系表单之前加载,或者有任何其他我不知道的问题。这是我的代码。谢谢你们所有人。
<?php
function contact_popup()
{
echo "
<div class='contact-popup'>
<div class='clickme-area'>
<a href='#' class='clickme' >We'd love your feedback</a>
</div>
<div class='testing'>
<div class='contact-form'>
<div class='header'>
<h2 class='title'>Leave your feedback</h2>
<a class='closeme' href='#'> X </a>
</div>
<?php do_shortcode( '[contact-form-7 id='55' title='Contact form 1']' ); ?>
</div>
</div>
</div>
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js'></script>
<link rel='stylesheet' href='http://code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css'>
<link rel='stylesheet' href='style.css'>
<script src='http://code.jquery.com/ui/1.10.4/jquery-ui.js'></script>
<script>
$(document).ready(function(){
$('.wpcf7-submit').click(function(){
$('.contact-popup').animate({height:'470px'}, 900);
});
});
</script>
<script>
$(document).ready(function(){
$('.closeme').click(function(){
$('.testing').hide();
$('.clickme').fadeToggle('slow');
$( '.contact-popup' ).dialog({
width: 225,
height: 31,
position: [1000,200],
show: {
effect: 'fade',
duration: 1000
},
hide: {
effect: 'fade',
duration: 1000
}
});
});
});
</script>
<script>
$(document).ready(function(){
$('.clickme').click(function(){
$('.testing').fadeToggle('slow');
$('.clickme').hide();
$( '.contact-popup' ).dialog({
width: 220,
height: 356,
position: [1000,200],
show: {
effect: 'fade',
duration: 1000
},
hide: {
effect: 'fade',
duration: 1000
}
});
});
});
</script>
<script>
$(function() {
$( '.contact-popup' ).dialog({
create: function (event, ui) {
$('.ui-widget-header').hide();
$('.testing').hide();
},
width:225,
height:36,
position: [1000,200],
dialogClass:'dialog-class',
show: {
effect: 'fade',
duration: 1000
},
hide: {
effect: 'fade',
duration: 1000
}
}).css('position','fixed');
});
</script>
";
}
?>发布于 2014-06-02 23:02:38
你不能在echo语句中执行php。
由于您使用的是带双引号的字符串,因此可以这样做:
function contact_popup() {
$cf = do_shortcode( '[contact-form-7 id='55' title='Contact form 1']' );
echo "
...
</div>
$cg
</div>
...
";更好的方法是使用HEREDOC语法创建字符串,使用%%CONTACT_FORM%%之类的占位符作为联系人表单,然后使用str_replace将占位符替换为$cf变量并回显。
发布于 2015-06-03 16:59:01
为什么不把表单的所有html样式都放在联系人表单本身中,然后这样做:
<?php echo do_shortcode( '[contact-form-7 id="55" title="Contact form 1"]' ); ?>https://stackoverflow.com/questions/23997221
复制相似问题