dqw7121 2014-12-14 10:45
浏览 34
已采纳

回声在PHP代码中

I have a wordpress site and I get an error in the following code.

<a href="http://www.example.com/<?php $url = get_post_meta($post->ID, 'Monthly Fee', true); if ($url) { echo "rent2?domain=<?php the_title(); ?>&monthlyfee=$url";} else echo "rent?domain=<?php the_title(); ?>&monthlyfee=$url";?>">

the following command does not work in echo command. the result is text only.

<?php the_title(); ?>
  • 写回答

2条回答 默认 最新

  • dsa99349 2014-12-14 12:07
    关注

    This is not an answer but an advice based on 19 years of experience.

    Your problem is much bigger - messy code:

    Don't try to cram all your logic in one line. Make your code readable. You will thank yourself later. Use proper variable names.

    <?php
        $post_meta = get_post_meta($post->ID, 'Monthly Fee', true);
        if ($post_meta) {
            $url = "rent2?domain=" . the_title() . "&monthlyfee=$post_meta";
        } else {
            $url = "rent?domain=" . the_title() . "&monthlyfee=$post_meta";
        }
    ?>
    
    <a href="http://www.example.com/<?php echo $url; ?>">
    

    The code above is (supposed to be) functionally identical to yours. But you can see that some things are written twice ?domain=" . the_title() . "&monthlyfee=$post_meta and that in the else block $post_meta (formerly $url) is used while $post_meta is falsy. Is it intended? If then the only thing that is different is rent vs rent2. Your code can be made DRY like this:

    <?php
        $post_meta = get_post_meta($post->ID, 'Monthly Fee', true);
        $search_string = "?domain=" . the_title() . "&monthlyfee=$post_meta";
        $path = $post_meta ? "rent2" : "rent";
        $url = $path . $search_string;
    ?>
    

    PS. As Dre pointed out the_title() should not do any echo but return title string! Thank you

    <a href="http://www.example.com/<?php echo $url; ?>">
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上